forked from apache/dubbo
-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #24 from mercyblitz/2.7.x
2.7.x
- Loading branch information
Showing
272 changed files
with
6,699 additions
and
1,048 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
name: Dubbo issue report template | ||
about: If you would like to report a issue to Dubbo, please use this template. | ||
|
||
--- | ||
|
||
- [ ] I have searched the [issues](https://github.com/apache/incubator-dubbo/issues) of this repository and believe that this is not a duplicate. | ||
- [ ] I have checked the [FAQ](https://github.com/apache/incubator-dubbo/blob/master/FAQ.md) of this repository and believe that this is not a duplicate. | ||
|
||
### Environment | ||
|
||
* Dubbo version: xxx | ||
* Operating System version: xxx | ||
* Java version: xxx | ||
|
||
### Step to reproduce this issue | ||
|
||
1. xxx | ||
2. xxx | ||
3. xxx | ||
|
||
Pls. provide [GitHub address] to reproduce this issue. | ||
|
||
### Expected Result | ||
|
||
What do you expected from the above steps? | ||
|
||
### Actual Result | ||
|
||
What is actually happen? | ||
|
||
If there is an exception, please attach the exception trace: | ||
|
||
``` | ||
Just put your stack trace here! | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,27 @@ | ||
|
||
## Contributing to dubbo | ||
Dubbo is released under the non-restrictive Apache 2.0 license, and follows a very standard Github development process, using Github tracker for issues and merging pull requests into master. If you want to contribute even something trivial please do not hesitate, but follow the guidelines below. | ||
|
||
### Sign the Contributor License Agreement | ||
Before we accept a non-trivial patch or pull request we will need you to sign the Contributor License Agreement. Signing the contributor’s agreement does not grant anyone commit rights to the main repository, but it does mean that we can accept your contributions, and you will get an author credit if we do. Active contributors might be asked to join the core team, and given the ability to merge pull requests. | ||
### Code Conventions | ||
Our code style is almost in line with the standard java conventions(Popular IDE's default setting satisfy this), only changed the following two restricts: | ||
1. Classes under 'org.apache.dubbo.*' and 'com.taobao.*' package are grouped separately, and put on top of all other 'imports'. | ||
2. If there are more than 120 characters in current line, start a new line. | ||
|
||
We provide a template file [dubbo_codestyle_for_idea.xml](https://github.com/apache/incubator-dubbo/tree/master/codestyle/dubbo_codestyle_for_idea.xml) for IntelliJ idea, you can import it to you IDE. If you use Eclipse you can config manually by referencing the same file. | ||
### Contact | ||
|
||
#### Mailing list | ||
|
||
The mailing list is the recommended way for discussing almost anything that related to Dubbo. Please refer to this [guide](https://github.com/apache/incubator-dubbo/wiki/Mailing-list-subscription-guide) for detailed documentation on how to subscribe. | ||
|
||
- [[email protected]](mailto:[email protected]): the develop mailing list, you can ask question here if you have encountered any problem when using or developing Dubbo. | ||
- [[email protected]](mailto:[email protected]): all the commits will be sent to this mailing list. You can subscribe to it if you are interested in Dubbo's development. | ||
- [[email protected]](mailto:[email protected]): all the Github [issue](https://github.com/apache/incubator-dubbo/issues) updates and [pull request](https://github.com/apache/incubator-dubbo/pulls) updates will be sent to this mailing list. | ||
|
||
### Reporting issue | ||
|
||
Please follow the [template](https://github.com/apache/incubator-dubbo/issues/new?template=dubbo-issue-report-template.md) for reporting any issues. | ||
|
||
### Code Conventions | ||
Our code style is almost in line with the standard java conventions (Popular IDE's default setting satisfy this), with the following additional restricts: | ||
* If there are more than 120 characters in current line, start a new line. | ||
|
||
* Make sure all new .java files to have a simple Javadoc class comment with at least a @date tag identifying birth, and preferably at least a paragraph on what the class is for. | ||
|
||
|
@@ -23,3 +36,31 @@ We provide a template file [dubbo_codestyle_for_idea.xml](https://github.com/apa | |
* If no-one else is using your branch, please rebase it against the current master (or other target branch in the main project). | ||
|
||
* When writing a commit message please follow these conventions, if you are fixing an existing issue please add Fixes #XXX at the end of the commit message (where XXX is the issue number). | ||
|
||
### Contribution flow | ||
|
||
This is a rough outline of what a contributor's workflow looks like: | ||
|
||
* Fork the current repository | ||
* Create a topic branch from where to base the contribution. This is usually master. | ||
* Make commits of logical units. | ||
* Make sure commit messages are in the proper format (see below). | ||
* Push changes in a topic branch to your forked repository. | ||
* Follow the checklist in the [pull request template](https://github.com/apache/incubator-dubbo/blob/master/PULL_REQUEST_TEMPLATE.md) | ||
* Before you sending out the pull request, please sync your forked repository with remote repository, this will make your pull request simple and clear. See guide below: | ||
``` | ||
git remote add upstream [email protected]:apache/incubator-dubbo.git | ||
git fetch upstream | ||
git rebase upstream/master | ||
git checkout -b your_awesome_patch | ||
... add some work | ||
git push origin your_awesome_patch | ||
``` | ||
* Submit a pull request to apache/incubator-dubbo and wait for the reply. | ||
|
||
Thanks for contributing! | ||
|
||
### Code style | ||
|
||
We provide a template file [dubbo_codestyle_for_idea.xml](https://github.com/apache/incubator-dubbo/tree/master/codestyle/dubbo_codestyle_for_idea.xml) for IntelliJ idea, you can import it to you IDE. | ||
If you use Eclipse you can config manually by referencing the same file. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
### Where is dubbo-admin? | ||
|
||
dubbo-admin has been moved from core repository to https://github.com/apache/incubator-dubbo-ops since 2.6.1 | ||
|
||
### Which version should I choose? | ||
|
||
Currently, dubbo keeps 3 versions evolve in parallel: | ||
|
||
* 2.7.x (master): requires Java 1.8, major feature branch | ||
|
||
* 2.6.x: requires Java 1.6, minor feature & bugfix branch, GA, production ready. | ||
|
||
* 2.5.x: requires Java 1.6, maintainance branch, only accept security vulnerbility and critical bugfix, expected to be EOL soon | ||
|
||
check [this](https://github.com/apache/incubator-dubbo/issues/1208) for detailed version management plan. | ||
|
||
For contributors, please make sure all changes on the right branch, that is, most of the pull request should go to 2.7.x, and be backported to 2.6.x and 2.5.x if necessary. If the fix is specific to a branch, please make sure your pull request goes to the right branch. | ||
|
||
For committers, make sure select the right label and target branch for every PR, and don't forget to back port the fix to lower version is necessary. | ||
|
||
#### How to register ip correctly in docker? | ||
|
||
[Example question](https://github.com/alibaba/dubbo/issues/742) | ||
|
||
Dubbo support to specify ip/port via system environment varialbles, examples can be found [here](https://github.com/dubbo/dubbo-samples/tree/master/dubbo-samples-docker). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,166 @@ | ||
# Apache Dubbo (incubating) Project | ||
|
||
[](https://travis-ci.org/apache/incubator-dubbo) | ||
[](https://travis-ci.org/apache/incubator-dubbo) | ||
[](https://codecov.io/gh/apache/incubator-dubbo) | ||
[](https://gitter.im/alibaba/dubbo?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) | ||
 | ||
 | ||
|
||
Apache Dubbo (incubating) is a high-performance, java based RPC framework open-sourced by Alibaba. Please visit [dubbo official site ](http://dubbo.incubator.apache.org) for quick start and documentations, as well as [Wiki](https://github.com/apache/incubator-dubbo/wiki) for news, FAQ, and release notes. | ||
Apache Dubbo (incubating) is a high-performance, java based open source RPC framework. Please visit [official site ](http://dubbo.incubator.apache.org) for quick start and documentations, as well as [Wiki](https://github.com/apache/incubator-dubbo/wiki) for news, FAQ, and release notes. | ||
|
||
We are now collecting dubbo user info in order to help us to improve dubbo better, pls. kindly help us by providing yours on [issue#1012: Wanted: who's using dubbo](https://github.com/apache/incubator-dubbo/issues/1012), thanks :) | ||
|
||
## Links | ||
|
||
* [Side projects](https://github.com/apache/incubator-dubbo) | ||
* [Dubbo Spring Boot](https://github.com/apache/incubator-dubbo-spring-boot-project) - Spring Boot Project for Dubbo. | ||
* [Dubbo ops](https://github.com/apache/incubator-dubbo-ops) - The reference implementation for dubbo ops(dubbo-admin,dubbo-monitor-simple,dubbo-registry-simple,etc.). | ||
* [Dubbo website](https://github.com/apache/incubator-dubbo-website) - Apache Dubbo (incubating) documents | ||
* [Dubbo rpc-jsonrpc](https://github.com/apache/incubator-dubbo-rpc-jsonrpc) - The Json rpc module of Apache Dubbo (incubating) project | ||
* [Dubbo feature-test](https://github.com/apache/incubator-dubbo-feature-test) - Apache Dubbo (incubating) feature test | ||
* [Dubbo docs](https://github.com/apache/incubator-dubbo-docs) - Apache Dubbo (incubating) documentation | ||
* [Developer Mailing list](https://github.com/apache/incubator-dubbo/issues/1393) - Any questions or suggestions? [Subscribe](https://github.com/apache/incubator-dubbo/issues/1393) to ([email protected]) to discuss with us. | ||
* [Gitter channel](https://gitter.im/alibaba/dubbo) - Online chat room with Dubbo developers. | ||
* [Dubbo user manual(English)](http://dubbo.apache.org/books/dubbo-user-book-en/) or [Dubbo用户手册(中文)](http://dubbo.apache.org/books/dubbo-user-book/) - Describe how to use Dubbo and all features of Dubbo concretely. | ||
* [Dubbo developer guide(English)](http://dubbo.apache.org/books/dubbo-dev-book-en/) or [Dubbo开发手册(中文)](http://dubbo.apache.org/books/dubbo-dev-book/) - Detailly introduce the design principal, extension mechanisms, code conventions, version control and building project, etc. | ||
* [Dubbo admin manual(English)](http://dubbo.apache.org/books/dubbo-admin-book-en/) or [Dubbo管理手册(中文)](http://dubbo.apache.org/books/dubbo-admin-book/) - Describe how to use Dubbo registry and admin-console. | ||
## Architecture | ||
|
||
 | ||
|
||
## Features | ||
|
||
* Transparent interface based RPC | ||
* Intelligent load balancing | ||
* Automatic service registration and discovery | ||
* High extensibility | ||
* Runtime traffic routing | ||
* Visualized service governance | ||
|
||
## Getting started | ||
|
||
### Maven dependency | ||
|
||
```xml | ||
<dependency> | ||
<groupId>com.alibaba</groupId> | ||
<artifactId>dubbo</artifactId> | ||
<version>2.6.2</version> | ||
</dependency> | ||
``` | ||
|
||
### Defining service interfaces | ||
|
||
```java | ||
package org.apache.dubbo.demo; | ||
|
||
public interface GreetingService { | ||
String sayHello(String name); | ||
} | ||
``` | ||
|
||
### Implement interface in service provider | ||
|
||
```java | ||
package org.apache.dubbo.demo.provider; | ||
|
||
import org.apache.dubbo.demo.GreetingService; | ||
|
||
public class GreetingServiceImpl implements GreetingService { | ||
public String sayHello(String name) { | ||
return "Hello " + name; | ||
} | ||
} | ||
``` | ||
|
||
### Starting service provider | ||
|
||
```java | ||
package org.apache.dubbo.demo.provider; | ||
|
||
import com.alibaba.dubbo.config.ApplicationConfig; | ||
import com.alibaba.dubbo.config.RegistryConfig; | ||
import com.alibaba.dubbo.config.ServiceConfig; | ||
import org.apache.dubbo.demo.GreetingService; | ||
|
||
import java.io.IOException; | ||
|
||
public class Provider { | ||
|
||
public static void main(String[] args) throws IOException { | ||
ServiceConfig<GreetingService> serviceConfig = new ServiceConfig<GreetingService>(); | ||
serviceConfig.setApplication(new ApplicationConfig("first-dubbo-provider")); | ||
serviceConfig.setRegistry(new RegistryConfig("multicast://224.5.6.7:1234")); | ||
serviceConfig.setInterface(GreetingService.class); | ||
serviceConfig.setRef(new GreetingServiceImpl()); | ||
serviceConfig.export(); | ||
System.in.read(); | ||
} | ||
} | ||
``` | ||
|
||
### Call remote service in consumer | ||
|
||
```java | ||
package org.apache.dubbo.demo.consumer; | ||
|
||
import com.alibaba.dubbo.config.ApplicationConfig; | ||
import com.alibaba.dubbo.config.ReferenceConfig; | ||
import com.alibaba.dubbo.config.RegistryConfig; | ||
import org.apache.dubbo.demo.GreetingService; | ||
|
||
public class Consumer { | ||
public static void main(String[] args) { | ||
ReferenceConfig<GreetingService> referenceConfig = new ReferenceConfig<GreetingService>(); | ||
referenceConfig.setApplication(new ApplicationConfig("first-dubbo-consumer")); | ||
referenceConfig.setRegistry(new RegistryConfig("multicast://224.5.6.7:1234")); | ||
referenceConfig.setInterface(GreetingService.class); | ||
GreetingService greetingService = referenceConfig.get(); | ||
System.out.println(greetingService.sayHello("world")); | ||
} | ||
} | ||
``` | ||
|
||
### Next steps | ||
|
||
* [Dubbo user manual](http://dubbo.apache.org/#/docs/user/preface/background.md) - How to use Dubbo and all its features. | ||
* [Dubbo developer guide](http://dubbo.apache.org/#/docs/dev/build.md) - How to invovle in Dubbo development. | ||
* [Dubbo admin manual](http://dubbo.apache.org/#/docs/admin/install/provider-demo.md) - How to admin and manage Dubbo services. | ||
|
||
## Contact | ||
|
||
* Mailing list: [[email protected]](mailto:[[email protected]]) (subscription [guide](https://github.com/apache/incubator-dubbo/wiki/Mailing-list-subscription-guide)) | ||
* Bugs: [Issues](https://github.com/apache/incubator-dubbo/issues/new?template=dubbo-issue-report-template.md) | ||
* Gitter: [Gitter channel](https://gitter.im/alibaba/dubbo) | ||
* Twitter: [@ApacheDubbo](https://twitter.com/ApacheDubbo) | ||
|
||
## Contributing | ||
|
||
See [CONTRIBUTING](https://github.com/apache/incubator-dubbo/blob/master/CONTRIBUTING.md) for details on submitting patches and the contribution workflow. | ||
|
||
### How can I contribute? | ||
|
||
* Take a look at issues with tag called [`Good first issue`](https://github.com/apache/incubator-dubbo/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) or [`Help wanted`](https://github.com/apache/incubator-dubbo/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22). | ||
* Join the discussion on mailing list, subscription [guide](https://github.com/apache/incubator-dubbo/wiki/Mailing-list-subscription-guide). | ||
* Answer questions on [issues](https://github.com/apache/incubator-dubbo/issues). | ||
* Fix bugs reported on [issues](https://github.com/apache/incubator-dubbo/issues), and send us pull request. | ||
* Review the existing [pull request](https://github.com/apache/incubator-dubbo/pulls). | ||
* Improve the [website](https://github.com/apache/incubator-dubbo-website), typically we need | ||
* blog post | ||
* translation on documentation | ||
* use cases about how Dubbo is being used in enterprise system. | ||
* Improve the [dubbo-ops/dubbo-monitor](https://github.com/apache/incubator-dubbo-ops). | ||
* Contribute to the projects listed in [ecosystem](https://github.com/dubbo). | ||
* Any form of contribution that is not mentioned above. | ||
* If you would like to contribute, please send an email to [email protected] to let us know! | ||
|
||
## Reporting bugs | ||
|
||
Please follow the [template](https://github.com/apache/incubator-dubbo/issues/new?template=dubbo-issue-report-template.md) for reporting any issues. | ||
|
||
## Reporting a security vulnerability | ||
|
||
Please report security vulnerability to [email protected] (private mailing list). | ||
|
||
## Ecosystem | ||
|
||
* [Dubbo website](https://github.com/apache/incubator-dubbo-website) - Apache Dubbo (incubating) official website | ||
* [Dubbo samples](https://github.com/dubbo/dubbo-samples) - samples for Apache Dubbo (incubating) | ||
* [Dubbo Spring Boot](https://github.com/apache/incubator-dubbo-spring-boot-project) - Spring Boot Project for Dubbo | ||
* [Dubbo ops](https://github.com/apache/incubator-dubbo-ops) - The reference implementation for dubbo ops (dubbo-admin, dubbo-monitor, dubbo-registry-simple, etc.) | ||
|
||
#### Language | ||
|
||
* [Node.js](https://github.com/dubbo/dubbo2.js) | ||
* [Python](https://github.com/dubbo/dubbo-client-py) | ||
* [Php](https://github.com/dubbo/dubbo-php-framework) | ||
|
||
## License | ||
|
||
Apache Dubbo is under the Apache 2.0 license. See the [LICENSE](https://github.com/apache/incubator-dubbo/blob/master/LICENSE) file for details. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.