incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Billy Liu <billy...@apache.org>
Subject Re: [PROPOSAL] Dubbo - proposal for Apache Incubation
Date Mon, 05 Feb 2018 05:28:40 GMT
+1 (non-binding)
With Warm regards

Billy Liu


2018-02-05 11:31 GMT+08:00 yukon <yukon@apache.org>:
> 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 <cxfeng1@gmail.com> wrote:
>
>> +1
>>
>>
>>
>> Thanks.
>> Adam Feng
>>
>> On 3 Feb 2018, 7:45 PM +0800, Huxing Zhang <huxing@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-unsubscribe@incubator.apache.org
>> > For additional commands, e-mail: general-help@incubator.apache.org
>> >
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
For additional commands, e-mail: general-help@incubator.apache.org


Mime
View raw message