Glad to see Dubbo here, Dubbo is really a great RPC framework and widely used in China.
On Mon, Feb 5, 2018 at 11:00 AM, Adam Feng <cxfe...@gmail.com> wrote: > +1 > > > > Thanks. > Adam Feng > > On 3 Feb 2018, 7:45 PM +0800, Huxing Zhang <hux...@apache.org>, wrote: > > Dear Apache Incubator Community, > > > > Please accept the following proposal for presentation and discussion: > > https://wiki.apache.org/incubator/DubboProposal > > > > Dubbo is a high-performance, lightweight, Java based RPC framework. > > Dubbo offers three key features, which includes interface based remote > > call, fault tolerance & load balancing, and automatic service > > registration & discovery. > > > > Any feedback from the incubator community is much appreciated. > > > > I've attached the proposal below. > > > > Best Regards, > > Huxing > > > > = Dubbo Proposal = > > > > == Abstract == > > > > Dubbo is a high-performance, lightweight, java based RPC framework > > open-sourced by Alibaba. As in many RPC systems, Dubbo is based around > > the idea of defining a service, specifying the methods that can be > > called remotely with their parameters and return types. On the server > > side, the server implements this interface and runs a Dubbo server to > > handle client calls. On the client side, the client has a stub that > > provides the same methods as the server. > > > > == Proposal == > > > > Dubbo has a fairly huge community today, and is widely adopted by many > > companies and organizations, but most of them are in China. We believe > > running Dubbo in Apache Software Foundation can facilitate development > > of a stronger and more diverse community. > > > > Alibaba submits this proposal to donate Dubbo's source code and its > > side projects to the Apache Software Foundation. The code is already > > under the Apache License Version 2.0. Dubbo source code and its side > > projects are hosted on github right now: > > > > * Dubbo code base: https://github.com/alibaba/dubbo > > * Web site: https://github.com/dubbo/dubbo.github.io > > * Documentations: User > > Guide(http://dubbo.io/books/dubbo-user-book-en), Development > > Guide(http://dubbo.io/books/dubbo-dev-book-en), Admin > > Manual(http://dubbo.io/books/dubbo-admin-book-en) > > * Other side projects hosted under dubbo group(https://github.com/dubbo) > > > > == Background == > > > > Dubbo was developed at Alibaba in 2011 and has been widely used in > > many production lines there since then. Dubbo offers three key > > features, which include interface based remote call, fault tolerance & > > load balancing, and automatic service registration & discovery. Since > > Dubbo is open-sourced on github, it's been received up to 15k stars, > > and has been forked for more than 10k times. Besides being widely > > adopted inside Alibaba, Dubbo is also used in approximately 80% of > > internet companies in China, including JingDong(http://www.jd.com), > > DangDang(http://www.dangdang.com), Qunar(https://www.qunar.com), > > NetEase Kaola(https://www.kaola.com), etc. In 2017, Dubbo has won the > > TOP 10 most popular open source projects in China for 2 consecutive > > years since 2016. > > > > We'd like to share this outstanding framework at the Apache Software > > Foundation, and start developing a wider community through the Apache > > way. We believe more people and organizations can be benefit from it > > by doing so. > > > > == Rationale == > > > > Remote procedure call (RPC) is one of the cornerstones to build > > distributed systems, especially useful in today's e-commercial > > industry and cloud computing providers. Dubbo is the java-based RPC > > implementation. By using Dubbo, developers can call the remote service > > just like call a local method but without worrying about the details > > for the remote interaction. We expect more interesting features and > > use cases to emerge from the community ranging from microservices to > > cloud computing, and many other areas. > > > > == Current Status == > > > > === Meritocracy === > > > > The intent of this proposal is to start building a diverse developer > > and user community around Dubbo following the ASF meritocracy model. > > Since Dubbo was open sourced, many companies in China adopted Dubbo to > > build up their own contributing system, moreover, we received many > > enhancements or issue reports from them at the same time. The codebase > > is now mainly managed by the development team inside Alibaba who's > > responsible for building internal distributed system too. Any > > suggestion or issue is discussed on > > https://github.com/alibaba/dubbo/issues and more casual talk happens > > in gitter channel (https://gitter.im/alibaba/dubbo). We plan to invite > > more people as committers if they contribute to this project. > > > > === Community === > > > > Dubbo is currently being developed by the development team inside > > Alibaba who's responsible for building internal distributed system > > too. Since it's open-sourced, Dubbo is widely adopted by many other > > companies including CNUCC (China Nets Union Clearing Corporation), > > ICBC (Industrial and Commercial Bank of China), China Life Insurance, > > DiDi, Qunar, Dangdang, NetEase Kaola, Maoyan Movie, GOME, Haier, CSDC > > (China Securities Depository and Clearing Corporation Limited), > > AsiaInfo, and many more. We hope to grow the base of contributors by > > inviting all those who offer contributions and excel through the use > > of The Apache Way. Contributions from outside of Alibaba are > > constantly accepted by Dubbo project and its side projects. Right > > now, we make use of github as code hosting as well as both Google > > Groups and gitter for community communication. > > > > === Core Developers === > > > > Dubbo is currently being developed by engineers from Alibaba, > > Dangdang, Qunar and WeiDian. Ding Li, Huxing Zhang, Ian Luo, Jun Liu, > > Liujie Qin, Mercy Ma, Von Gosling, William Liang are working for > > Alibaba. Most of them are working in Alibaba middleware team, and some > > of them are also the core members of internal RPC framework, HSF (high > > speed service framework). Von Gosling is the co-creator of Apache > > RocketMQ, while Huxing Zhang is one of Apache Tomcat PMC members. > > Besides, the Dubbo core developers also includes Xin Wang from > > WeiDian, Liang Zhang from DangDang, Zhaohui Yu from Qunar. All of them > > are in charge of building and maintaining distributed system in their > > organizations, and have great passion in contributing back into Dubbo > > project. > > > > === Aligment === > > > > The ASF is the natural choice to host the Dubbo project as its goal of > > encouraging community-driven open source projects fits with our vision > > for Dubbo. The ASF is also the home to many other projects with which > > we are familiar with and hope to integrate better with Dubbo including > > Apache Thrift, Apache Zookeeper, etc. We believe that there will be > > mutual benefit by close proximity to these and other projects. > > > > == Known Risks == > > > > === Orphaned products === > > > > The core developers currently work full-time on RPC area for Alibaba. > > Dubbo is widely adopted by many companies and individuals. There's no > > realistic chance of it becoming orphaned. > > > > === Inexperience with Open Source === > > > > The core developers are all active contributors, users and followers > > of open source. They are all already committers and contributors to > > Dubbo project, and have gained good experience in running open-source > > project in Github and interacting with the community. Moreover, Von > > Gosling and Huxing Zhang from the initial committer, both are working > > on Apache projects (RocketMQ and Tomcat respectively), will guide > > others to practice the Apache Way together along with other incubator > > mentors. > > > > === Homogenous Developers === > > > > The current set of developers work across a variety of organizations > > including Alibaba, DangDang, Qunar, and WeiDian. Furthermore, many > > other companies forked Dubbo and continued to enhance in their own > > private repositories. We plan to encourage them to contribute and > > invite them as contributors to work on one common code base. > > > > === Reliance on Salaried Developers === > > > > Currently, most of core developers are paid to work on Dubbo project > > by Alibaba. We look forward to attracting more people outside Alibaba > > to join this project, either payed engineers working on RPC area, or > > individual volunteers, as long as they have enthusiasm for the Dubbo > > project. > > > > === Relationships with Other Apache Products === > > > > Dubbo integrates Apache Thrift as one of RPC protocols it supports, > > and Apache Zookeeper as one of service registration/discovery > > machanisms. We look forward to collaborating with those communities > > and any others which use RPC. > > > > === A Excessive Fascination with the Apache Brand === > > > > While we respect the reputation of the Apache brand and have no doubt > > that it will attract new contributors and users, our interest is > > primarily to give Dubbo a solid home as an open source project > > following an established development model. More reasons are provided > > in the Rationale and Alignment sections. > > > > == Documentation == > > > > A complete set of Dubbo documentations is provided on dubbo.io in both > > English and Simplified Chinese. > > > > * Dubbo user guide: > > http://dubbo.io/books/dubbo-user-book-en(English), > > http://dubbo.io/books/dubbo-user-book(Chinese) > > * Dubbo development guide: > > http://dubbo.io/books/dubbo-dev-book-en(English), > > http://dubbo.io/books/dubbo-dev-book(Chinese) > > * Dubbo admin manual: > > http://dubbo.io/books/dubbo-admin-book-en(English), > > http://dubbo.io/books/dubbo-admin-book(Chinese) > > > > == Initial Source == > > > > Dubbo was initially developed within Alibaba, and then was > > open-sourced with The Apache License 2.0 under Alibaba Group on Github > > in 2011. Besides the core code base, Dubbo also hosts its side > > projects on github but in a dedicated group instead of Alibaba. > > Specifically, the initial source includes: > > > > * Dubbo code base: https://github.com/alibaba/dubbo > > * Spring Boot Support: https://github.com/dubbo/ > dubbo-spring-boot-project > > * Dubbo Admin Console: https://github.com/dubbo/dubbo-ops > > * Json RPC extension: https://github.com/dubbo/dubbo-rpc-jsonrpc > > * Home Page: https://github.com/dubbo/dubbo.github.io > > * Dubbo Documentation: > > * User guide: https://github.com/dubbo/dubbo-user-book-en > > * Developer guide: https://github.com/dubbo/dubbo-dev-book-en > > * Admin guide: https://github.com/dubbo/dubbo-admin-book-en > > * Dubbo Documentation (Chinese) > > * User guide: https://github.com/dubbo/dubbo-user-book > > * Developer guide: https://github.com/dubbo/dubbo-dev-book > > * Admin guide: https://github.com/dubbo/dubbo-admin-book > > * Samples/Demo: > > * https://github.com/dubbo/dubbo-feature-test > > * https://github.com/dubbo/dubbo-docker-sample > > * https://github.com/dubbo/dubbo-http-demo > > * https://github.com/dubbo/dubbo-ws-demo > > > > > > == External Dependencies == > > > > As all dependencies are managed using Apache Maven, none of the > > external libraries need to be packaged in a source distribution. The > > dependencies all have Apache compatible licenses. These include BSD, > > CDDL, CPL, MPL and MIT licensed dependencies. There are only 3 > > transitive dependencies(javassist, netty, and spring-context), and all > > the other dependencies are optional, which are not included in a Dubbo > > release. > > > > Dependency License Optional? > > javassist Apache License 2.0/MPL 1.1 false > > netty Apache License 2.0 false > > spring-context Apache License 2.0 false > > httpclient Apache License 2.0 true > > zookeeper Apache License 2.0 true > > zkclient Apache License 2.0 true > > curator-framework Apache License 2.0 true > > cxf Apache License 2.0 true > > libthrift Apache License 2.0 true > > commons-logging Apache License 2.0 true > > commons-lang Apache License 2.0 true > > mina Apache License 2.0 true > > fastjson Apache License 2.0 true > > xmemcached Apache License 2.0 true > > hessian Apache License 1.1 true > > tomcat Apache License 2.0 true > > jetty Apache License 2.0/EPL 1.0 true > > validation-api Apache License 2.0 true > > hibernate-validator Apache License 2.0 true > > cache-api Apache License 2.0 true > > log4j Apache License 2.0 true > > easymock Apache License 2.0 true > > cglib-nodep Apache License 2.0 true > > resteasy Apache License 2.0 true > > fst Apache License 2.0 true > > slf4j-api MIT true > > jmockit MIT true > > jedis MIT true > > grizzly CDDL 1.1 true > > servlet-api CDDL 1.1 true > > javax.el CDDL 1.1 true > > logback-classic EPL 1.0 true > > junit EPL 1.0 true > > kryo BSD 3-clause true > > > > > > == Required Resources == > > > > === Mailing lists === > > > > * dubbo-private (PMC discussion) > > * dubbo-dev (developer discussion) > > * dubbo-user (user discussion) > > * dubbo-commits (SCM commits) > > * dubbo-issues (JIRA issue feed) > > > > === Subversion Directory === > > > > Instead of subversion, Dubbo prefers to git as source control > > management system: git://git.apache.org/dubbo > > > > === Issue Tracking === > > > > JIRA Dubbo (Dubbo) > > > > === Other Resources === > > > > The existing source code already has unit tests so we will make use of > > existing Apache continuous testing infrastructure. The resulting load > > should not be very large. > > > > == Initial Committers == > > > > (In alphabetical order) > > > > * Ding Li (oldratlee at gmail dot com) > > * Huxing Zhang (huxing at apache dot org) > > * Ian Luo (ian.luo at gmail dot com) > > * Jean-Frederic Clere (jfclere at apache dot org) > > * Jun Liu (ken.lj.hz at gmail dot com) > > * John D. Ament (johndament at apache dot org) > > * Justin McLean (jmclean at apache dot org) > > * Liang Zhang (terrymanu at 163 dot com) > > * Liujie Qin (qinliujieyangliu at gmail dot com) > > * Mark Thomas (markt at apache dot org) > > * Mercy Ma (mercyblitz at gmail dot com) > > * Von Gosling (vongosling at apache dot org) > > * William Liang (liangfei0201 at gmail dot com) > > * Xin Wang (ovepoem at hotmail dot com) > > * Zhaohui Yu (yuyijq at gmail dot com) > > > > == Affiliations == > > > > (In alphabetical order) > > > > * Alibaba: Ding Li, Huxing Zhang, Ian Luo, Jun Liu, Liujie Qin, Mercy > > Ma, Von Gosling, William Liang > > * Class Software: Justin McLean > > * DangDang: Liang Zhang > > * Pivotal: Mark Thomas > > * Qunar: Zhaohui Yu > > * Redhat: Jean-Frederic Clere > > * Sparta Systems: John D. Ament > > * WeiDian: Xin Wang > > > > == Additional Interested Contributors == > > > > (In alphabetical order) > > > > * Hanson Huang (hanson19921129 at gmail dot com) > > * Jerrick Zhu (diecui1202 at gmail dot com) > > * Peng Wei (weipeng2k at gmail dot com) > > * Yuneng Xie (xieyuneng at gmail dot com) > > * Zhixuan Cheng (hengyunabc at gmail dot com) > > > > == Sponsors == > > > > === Champion === > > > > * Justin McLean (jmclean at apache dot org) > > > > === Nominated Mentors === > > > > * Justin McLean (jmclean at apache dot org) > > * John D. Ament (johndament at apache dot org) > > * Jean-Frederic Clere (jfclere at apache dot org) > > * Mark Thomas (markt at apache dot org) > > > > ==== Informal Mentors ==== > > > > * Huxing Zhang (huxing at apache dot org) > > * Von Gosling (vongosling at apache dot org) > > > > > > === Sponsoring Entity === > > > > We are requesting the Incubator to sponsor this project. > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > > For additional commands, e-mail: general-h...@incubator.apache.org > > >