Hi, Von Gosling

In a short time, the core develop team of brpc are still focusing on
adopting brpc to satisfy scenarios where performance of communication and
thread scheduling do really matter, such as HPC, search backend and
distributed storage.  There is some work that we can do:
1. Merge rdma related stuff to the code base
2. Implement user space tcp-stack based on dpdk
3. Numa-aware thread scheduling algorithm
4. Zero copy I/O stack (from storage to network)

Bindings for other languages are always welcomed. If someone from the
community is willing to do these stuffs, we are glad to help to complement
the design and implementation.

Best Regards,
Zhangyi Chen

On Mon, Sep 17, 2018 at 11:42 AM Von Gosling <vongosl...@apache.org> wrote:

> Hi,
>
> I am excited to see a new rpc framework grow and flourish in apache
> comprehensive culture, rpc is so important infrastructure as messaging.
> Also, I am glad to help brpc community to learn and incubate smoothly under
> the Apache Way. After a look through about brpc , I  have one question that
> what’s the plan for our brpc future? I noticed that your mention brpc is an
> c++ rpc framework. AFAIK, sole language-lock rpc framework will not go far
> away in nowadays, especially facing the challenge of the new cloud
> computing paradigm, such as serverless and so on.
>
>
> Best Regards,
> Von Gosling
>
> > 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月14日,16:19,Tan,Zhongyi <tanzhon...@baidu.com> 写道:
> >
> > 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é" <j...@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 jge...@gmail.com)
> >>> * Chen Zhangyi(https://github.com/chenzhangyi frozen....@gmail.com)
> >>> * Jiang Rujie(https://github.com/old-bear jrjb...@gmail.com)
> >>> * Zhu Jiashun(http://github.com/zyearn zhujiashun2...@gmail.com)
> >>> * Wang Yao(https://github.com/ipconfigme 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 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:
> >>>
> >>> * priv...@brpc.incubator.apache.org
> >>> * d...@brpc.incubator.apache.org
> >>> * comm...@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é
> >> jbono...@apache.org
> >> http://blog.nanthrax.net
> >> Talend - http://www.talend.com
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
> >> For additional commands, e-mail: general-h...@incubator.apache.org
> >>
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
> > For additional commands, e-mail: general-h...@incubator.apache.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org
> For additional commands, e-mail: general-h...@incubator.apache.org
>
>

Reply via email to