incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tan,Zhongyi" <tanzhon...@baidu.com>
Subject Re: We want to contribute brpc to ASF, looking for champion and mentor ,please help
Date Fri, 14 Sep 2018 08:19:50 GMT
Hi, JB,
Below are our answers to your questions,
Please check,
Thanks.

1. brpc doesn't depend on any other Apache projects. brpc currently
depends on the following external project:
   - leveldb
   - openssl
   - protobuf
   - gperftools (optional)
   - glog (optional)
   - gtest

2. brpc is alternative for C++ rpc fcramework,implementations for other
languages are not competitive enough (comparing to gRPC) to be
opensourced.  Besides the basic RPC function, brpc(C++) provides
additional features than gRPC:
   - Clients and servers can talk in multiple protocols: baidu internal
protocol, http, thrift, http2(communicable with gRPC, the PR is under
reviewing) and tens of other protocols.
   - Proved better performance in different scenarios, by eliminating
locks on hotpaths and using goroutine-like concurrency(bthread) with cache
friendly data structures
   - More useful debugging utilities to help C++ programers build solid
online services.
   - Various access patterns such as one-to-one, one-to-many(fan out),
streaming, which simplify implementation of complex distributed services.



在 2018/9/13 下午3:00, "Jean-Baptiste Onofré" <jb@nanthrax.net> 写入:

>Hi,
>
>It's an interesting project. I have two questions:
>
>1. do you have some interactions/dependencies with other Apache
>projects, especially CXF for instance ?
>2. what's the comparison between brpc and gRPC ? An alternative ?
>Different features ?
>
>I might be interested by mentoring the project, I would like to
>understand exactly the target/purposes.
>
>Thanks !
>Regards
>JB
>
>On 13/09/2018 08:20, Tan,Zhongyi wrote:
>> Hi, guys,
>> 
>> brpc is one open source RPC framework that is very popular in baidu and
>>china.
>> We want to contribute it to ASF to make it more successful.
>> And we are looking for champion and mentor for this project,
>> if anyone would like to volunteer, we will be very appreciated.
>> 
>> Thanks.
>> 
>> 
>> Here is the draft for brpc proposal.
>> 
>> 
>> # 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 etc.
>> 
>> ## Current Status
>> 
>> brpc has been an open source project on GitHub
>>(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 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 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 jge666@gmail.com)
>> * Chen Zhangyi(https://github.com/chenzhangyi frozen.zju@gmail.com)
>> * Jiang Rujie(https://github.com/old-bear jrjbear@gmail.com)
>> * Zhu Jiashun(http://github.com/zyearn zhujiashun2010@gmail.com)
>> * Wang Yao(https://github.com/ipconfigme ipconfigme@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 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.
>> 
>> ### An 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
>> Issue Tracking: https://github.com/brpc/brpc/issues
>> Overview: 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.
>> 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
>> 
>> ## 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:
>> 
>> * private@brpc.incubator.apache.org
>> * dev@brpc.incubator.apache.org
>> * commits@brpc.incubator.apache.org
>> 
>> ### Git Repositories:
>> 
>> Upon entering incubation, we want to transfer the existing repo from
>>https://github.com/brpc/brpc to Apache infrastructure like
>>https://github.com/apache/incubator-brpc.
>> 
>> ### Issue Tracking:
>> 
>> brpc currently uses GitHub to track issues. Would like to continue to
>>do so while we discuss migration possibilities with the ASF Infra
>>committee.
>> 
>> ### Other Resources:
>> 
>> Currently brpc has no dedicated website except Github homepage. In the
>>future the website url should be http://brpc.incubator.apache.org/ to
>>follow apache incubator conventions.
>> 
>> ## Sponsors
>> 
>> ### Champion
>> 
>> * todo
>> 
>> ### Mentors
>> 
>> * todo
>> 
>> ### Sponsoring Entity
>> 
>> We are requesting the Incubator to sponsor this project.
>> 
>
>-- 
>Jean-Baptiste Onofré
>jbonofre@apache.org
>http://blog.nanthrax.net
>Talend - http://www.talend.com
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
>For additional commands, e-mail: general-help@incubator.apache.org
>

Mime
View raw message