Hi -

I would like to discuss accepting bprc project into the Incubator:
Initially there were five developers from Baidu, but now these are from several 
companies..

Please accept the brpc podling into the Incubator.

Regards,
Dave

brpc Proposal


Abstract

brpc is an industrial-grade RPC framework for building reliable and 
high-performance services. 


Proposal

We propose to contribute the brpc codebase and associated artifacts(e.g. 
documentation etc.) to the Apache Software Foundation, and aim to build a wider 
open community around it in the 'Apache Way'. 


Background

The RPC framework used in Baidu before 2014 was developed at 2008 and limited 
in protocols and performance, and there were also serveral implementations 
focused on their own scenarios from Baidu's different BU. As an infrastructural 
team in Baidu, we tried to build a new framework to unify all RPC scenarios 
inside. The framework was named "baidu-rpc" internally the early versions were 
adopted and online at late 2014. The framework was rapidly iterated at 
2015-2017, and thousands kinds of services and almost all core services adopted 
it. And in 2017, we opensourced it as "brpc" and hope to get more adoptions and 
contributions from outside. At the time of opensourcing, there're more than 1 
million instances inside Baidu using baidu-rpc (not counting clients). 


Rationale

brpc has been approved inside baidu, since many high performance core services 
are using it. And since its open source, it has been adopted by several other 
companies, including Iqiyi, Didi, Sougou, BiliBili 
<https://wiki.apache.org/incubator/BiliBili> etc. 


Current Status

brpc has been an open source project on GitHub 
<https://wiki.apache.org/incubator/GitHub> (https://github.com/brpc/brpc 
<https://github.com/brpc/brpc>) since 2017. 

Currently it has more than 7.3k stars, 1.6k forks, and is one of the most 
popular repositories in topic of rpc category in GitHub 
<https://wiki.apache.org/incubator/GitHub> rpc catelogy. It has been widely 
used in Baidu, with 1,000,000+ instances and thousands kinds of services. 
Besides, many other companies have already used it also, such as Iqiyi, Didi, 
Sougou, BiliBili <https://wiki.apache.org/incubator/BiliBili> etc. 


Meritocracy

brpc was originally created by Ge Jun and Chen zhangyi inside baidu from 2014. 
Since its opensource in 2017, it has already followed meritocracy principles. 
It accepts multiple contributions from other companies. And now, the core 
developers are from several different companies. 

We will follow Apache way to encourage more developers to contribute in this 
project. We know that only active and committed developers from a diverse set 
of backgrounds can make brpc a successful project. 


Community

brpc has been building an active community since its open source. Currently, 
the community includes over 31 contributors. The core developers of brpc are 
listed below. 


Core Developers

Ge Jun(https://github.com/jamesge <https://github.com/jamesge> jge...@gmail.com 
<mailto:jge...@gmail.com>) 
Chen Zhangyi(https://github.com/chenzhangyi <https://github.com/chenzhangyi> 
frozen....@gmail.com <mailto:frozen....@gmail.com>) 
Jiang Rujie(https://github.com/old-bear <https://github.com/old-bear> 
jrjb...@gmail.com <mailto:jrjb...@gmail.com>) 
Zhu Jiashun(http://github.com/zyearn <http://github.com/zyearn> 
zhujiashun2...@gmail.com <mailto:zhujiashun2...@gmail.com>) 
Wang Yao(https://github.com/ipconfigme <https://github.com/ipconfigme> 
ipconfi...@gmail.com <mailto:ipconfi...@gmail.com>) 

Alignment

brpc is useful for building reliable and high-performance applications. Since 
ASF has many famous performance-related and rpc-related projects, we believe 
that ASF is a perfect choice to help brpc project to attract more developers 
and users as well as having more cooperation with existing projects. 


Known Risks


Orphaned products

Since our core developers are from different companies and many companies are 
using it, the risk of the project being abandoned is minimal. For example, 
Baidu is extensively using it in their production environment and many large 
corporations including Iqiyi, Didi, Sougou, BiliBili 
<https://wiki.apache.org/incubator/BiliBili> use it in their production 
applications. 


Inexperience with Open Source

brpc has been an active open source project for more than one year. During that 
time, the project has attracted 30+ contributors and gained a lot of attention. 
The core developers are all active users and followers of open source. 


Homogenous Developers

brpc was created inside Baidu, but after brpc was open sourced, it received a 
lot of bug fixes and enhancements from other developers not working at Baidu. 
And the core developers now are from different companies now. 


Reliance on Salaried Developers

Baidu invested in brpc as a general rpc framework used in company widely. The 
core developers have been dedicated to this project for about four years. And 
after its open source, developers around the world have involved in. Besides, 
we want more developers and researchers to contribute to the project. 


Relationships with Other Apache Products


A Excessive Fascination with the Apache Brand

The mission of brpc is to help developers build reliable and high-performance 
services quickly and easily. It has been widely used in production environment 
throughout Baidu and after opensource, it has gained much attention and 
attracted developers all over the world. Apache Brand is very respected. We are 
very honored to have the opportunity to join ASF, with the understanding that 
its brand policies being respected. And we hope Apache can help us build the 
ecosystem around brpc and attract more developers. 


Documentation

The following links provide more information about brpc in open source: 

Codebase at Github: https://github.com/brpc/brpc <https://github.com/brpc/brpc> 
Issue Tracking: https://github.com/brpc/brpc/issues 
<https://github.com/brpc/brpc/issues> Overview: 
https://github.com/brpc/brpc/blob/master/docs/en/overview.md 
<https://github.com/brpc/brpc/blob/master/docs/en/overview.md>

Initial Source

brpc has been developed since 2014 by a team of engineers at Baidu Inc. We 
currently use Github to maintain our source code and track issues at 
https://github.com/brpc/brpc <https://github.com/brpc/brpc>. We need to move 
our repository to Apache infrastructure. 


Source and Intellectual Property Submission Plan

brpc source code is available under Apache V2 license and owned by Baidu. We 
will work with the committers to get ICLAs signed. We will provide a Software 
Grant Agreement from an authorized signer per 
https://www.apache.org/licenses/software-grant-template.pdf 
<https://www.apache.org/licenses/software-grant-template.pdf>

External Dependencies

brpc has the following external dependencies. 

Google gflags (BSD) 
Google protobuf (BSD) 
Google leveldb (BSD) 

Required Resources


Mailing List:

There are currently no mailing lists. The usual mailing lists are expected to 
be set up when entering incubation: 

priv...@brpc.incubator.apache.org <mailto:priv...@brpc.incubator.apache.org>
d...@brpc.incubator.apache.org <mailto:d...@brpc.incubator.apache.org>
comm...@brpc.incubator.apache.org <mailto:comm...@brpc.incubator.apache.org>

Git Repositories:

Upon entering incubation, we want to transfer the existing repo from 
https://github.com/brpc/brpc <https://github.com/brpc/brpc> to Apache 
infrastructure like https://github.com/apache/incubator-brpc 
<https://github.com/apache/incubator-brpc>. 


Issue Tracking:

brpc currently uses GitHub <https://wiki.apache.org/incubator/GitHub> to track 
issues. Would like to continue to do so while we discuss migration 
possibilities with the ASF Infra committee. 


URL:

Currently brpc has no dedicated website except Github homepage. In the future 
the website url should be http://brpc.incubator.apache.org/ 
<http://brpc.incubator.apache.org/> to follow apache incubator conventions. 


Initial Committers

Ge Jun(https://github.com/jamesge <https://github.com/jamesge> jge...@gmail.com 
<mailto:jge...@gmail.com>) 
Chen Zhangyi(https://github.com/chenzhangyi <https://github.com/chenzhangyi> 
frozen....@gmail.com <mailto:frozen....@gmail.com>) 
Jiang Rujie(https://github.com/old-bear <https://github.com/old-bear> 
jrjb...@gmail.com <mailto:jrjb...@gmail.com>) 
Zhu Jiashun(http://github.com/zyearn <http://github.com/zyearn> 
zhujiashun2...@gmail.com <mailto:zhujiashun2...@gmail.com>) 
Wang Yao(https://github.com/ipconfigme <https://github.com/ipconfigme> 
ipconfi...@gmail.com <mailto:ipconfi...@gmail.com>) 

Sponsors:


Champion:

Dave Fisher 

Mentors:

Kevin A. McGrail <https://wiki.apache.org/incubator/McGrail>
Jean-Baptiste Onofré 

Sponsoring Entity

We are requesting the Incubator to sponsor this project. 

brpcProposal (last edited 2018-10-20 13:36:33 by JerryTan 
<https://wiki.apache.org/incubator/JerryTan>)

Reply via email to