You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@rocketmq.apache.org by heng du <du...@gmail.com> on 2018/11/29 14:45:36 UTC

[DISCUSS]The graduation of RocketMQ's CPP client.

Hello RocketMQ Community, 

This is the discussion for the graduation of RocketMQ’s CPP client(https://github.com/apache/rocketmq-client-cpp).

RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which provides two kinds of interfaces in C++ and C-style, almost have all the features included in the Java client, and it’s also the core of other language’s client, other language’s client will be built on top of it, including python, Nodejs, C#, golang and so on.

After many years of incubation, the CPP client has been used by several companies  and main features have been verified in their production environment, and up to now, there are 6 active contributors from 5 organizations in the community.

So we think it has reached the graduation standard, but in order to ensure the quality of the project, we still investigated the usage information of three companies from different industries, the information shows below:

   1 A financial company
     1)Environment Configuration:
         (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G Memory
         (2) 2 * Master + 2 * Slave
           (3) Three subsystems were deployed, including six producer instances and six consumer instances.
     2) Functions
          Asynchronous transmission
          PushConsumer with cluster mode
          PushConsumer with broadcasting mode
    3)scene
          Mainly used for system decoupling, message reliability assurance, resolving write speed mismatch between redis and Oracle scenarios.  
   4)  How long has it been used?
        6 months
  5)Usage description
       (1) The compilation of the original CPP SDK is tedious, and many tools and dependency libraries need to be installed. The optimized version of public beta is easy to compile and get started.
       (2) example is more detailed, the main use scenarios have examples, can easily guide the basic use, follow-up use of SDK programming is simple and easy to use.
       (3) the SDK and server sides are relatively stable, basically there is no problem after the line.

 2 An education company
    1)Environment Configuration:
         CentOS 7.x
     2) Functions
          Asynchronous transmission
          Synchronous transmission
          Orderly transmission
          oneway transmission
          PushConsumer with cluster mode
          PushConsumer orderly
    3)Business scale
          100 million per day​​
    3)scene
          Mainly used for system decoupling
   4)  How long has it been used?
        1 year
  5)feedback
       CPP client is relatively stable, there is basically no problem Online

3   Alibaba
     1)Environment Configuration:
       (1)Ubuntu Server 16.04    8*CPU   16G Memory
       (2) 2 * Master + 2 * Slave
         (3) two producer instances and three consumer instances.
     2) Functions
          (1)C++  
             Asynchronous transmission
             PushConsumer with cluster mode
          (2)C
             Asynchronous transmission
             PushConsumer with cluster mode
    3)scene
          Mainly used for system decoupling
    4)  How long has it been used?
        1 year
     5)feedback
       (1)CPP client and Java client can send and receive each other.
      (2)Messages can be sent and consumed normally.


 If you have any suggestion about the graduation of the CPP client, please feel free to reply to this email, we sincerely hope to get your advice.





Re: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by heng du <du...@gmail.com>.
@Willem
The graduation means move the rocketmq-client-cpp in rocketmq-external repo to its independent repo, and after graduation, it's still a sub repo of RocketMQ , and rocketmq-external repo we now used for incubating project related to RocketMQ. 


> 在 2018年11月30日,上午11:51,Willem Jiang <wi...@gmail.com> 写道:
> 
> Just a quick question, what's the graduation plan? Will
> RocketMQ-Client-CPP be a TLP?
> 
> As RocketMQ-Client-CPP is part of RocketMQ ecosystem, it's better to
> be a sub project of RocketMQ.
> ActiveMQ has lots of clients git repos, they are still part of ActiveMQ project.
> 
> Willem Jiang
> 
> Twitter: willemjiang
> Weibo: 姜宁willem
> On Fri, Nov 30, 2018 at 11:33 AM vongosling <fe...@gmail.com> wrote:
>> 
>> Hi,
>> 
>> Thanks heng, very valuable discussion for the health community. IMO, we
>> should point out the rule for the incubator and graduation of the community
>> projects. I remember I have proposed to add the maintainer role for the
>> projects when we are in podling, but that's a not good time. Time changed,
>> with more and more users and contributors actively involved in the
>> community, we should re-consider the guidance of the community, we could
>> see some positive thinking appears on the external repository.
>> 
>> “ There are many of the Apache RocketMQ external projects, which is born
>> from Apache RocketMQ Improvement Proposal and contributed and maintained by
>> the community. The PMC will lean towards developer community support, to
>> help discovery and initial steps towards incubation in the external
>> repository. Incubator Projects could graduate if they meet the following
>> requirements.
>> 
>> Require 3+1 vote from the PMC
>> Used successfully in production by at least three independent end users
>> which, in the PMC judgment, are of adequate quality and scope.
>> Have a healthy number of committers ”
>> 
>> From this point of view, I am willing to support the cpp sdk graduate from
>> the community. The next step, I think we should consider the formal
>> release. BTW, if we could collect more feedback just as the following,
>> that's' a good promotion for our product.
>> 
>> 1) The compilation of the original CPP SDK is tedious, and many tools and
>> dependency libraries need to be installed. The optimized version of the
>> public beta is easy to compile and get started.
>> 2) example is more detailed, the main use scenarios have examples, can
>> easily guide the basic use, follow-up use of SDK programming is simple and
>> easy to use.
>> 3) the SDK and server sides are relatively stable, basically, there is no
>> problem after the line.
>> 
>> 
>> I also want to hear from the sounds from the community, thoughts?
>> 
>> 
>> Best Regards,
>> Von Gosling
>> 
>> heng du <du...@gmail.com> 于2018年11月29日周四 下午10:45写道:
>> 
>>> Hello RocketMQ Community,
>>> 
>>> This is the discussion for the graduation of RocketMQ’s CPP client(
>>> https://github.com/apache/rocketmq-client-cpp).
>>> 
>>> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which
>>> provides two kinds of interfaces in C++ and C-style, almost have all the
>>> features included in the Java client, and it’s also the core of other
>>> language’s client, other language’s client will be built on top of it,
>>> including python, Nodejs, C#, golang and so on.
>>> 
>>> After many years of incubation, the CPP client has been used by several
>>> companies  and main features have been verified in their production
>>> environment, and up to now, there are 6 active contributors from 5
>>> organizations in the community.
>>> 
>>> So we think it has reached the graduation standard, but in order to ensure
>>> the quality of the project, we still investigated the usage information of
>>> three companies from different industries, the information shows below:
>>> 
>>>   1 A financial company
>>>     1)Environment Configuration:
>>>         (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G
>>> Memory
>>>         (2) 2 * Master + 2 * Slave
>>>           (3) Three subsystems were deployed, including six producer
>>> instances and six consumer instances.
>>>     2) Functions
>>>          Asynchronous transmission
>>>          PushConsumer with cluster mode
>>>          PushConsumer with broadcasting mode
>>>    3)scene
>>>          Mainly used for system decoupling, message reliability
>>> assurance, resolving write speed mismatch between redis and Oracle
>>> scenarios.
>>>   4)  How long has it been used?
>>>        6 months
>>>  5)Usage description
>>>       (1) The compilation of the original CPP SDK is tedious, and many
>>> tools and dependency libraries need to be installed. The optimized version
>>> of public beta is easy to compile and get started.
>>>       (2) example is more detailed, the main use scenarios have examples,
>>> can easily guide the basic use, follow-up use of SDK programming is simple
>>> and easy to use.
>>>       (3) the SDK and server sides are relatively stable, basically there
>>> is no problem after the line.
>>> 
>>> 2 An education company
>>>    1)Environment Configuration:
>>>         CentOS 7.x
>>>     2) Functions
>>>          Asynchronous transmission
>>>          Synchronous transmission
>>>          Orderly transmission
>>>          oneway transmission
>>>          PushConsumer with cluster mode
>>>          PushConsumer orderly
>>>    3)Business scale
>>>          100 million per day
>>>    3)scene
>>>          Mainly used for system decoupling
>>>   4)  How long has it been used?
>>>        1 year
>>>  5)feedback
>>>       CPP client is relatively stable, there is basically no problem
>>> Online
>>> 
>>> 3   Alibaba
>>>     1)Environment Configuration:
>>>       (1)Ubuntu Server 16.04    8*CPU   16G Memory
>>>       (2) 2 * Master + 2 * Slave
>>>         (3) two producer instances and three consumer instances.
>>>     2) Functions
>>>          (1)C++
>>>             Asynchronous transmission
>>>             PushConsumer with cluster mode
>>>          (2)C
>>>             Asynchronous transmission
>>>             PushConsumer with cluster mode
>>>    3)scene
>>>          Mainly used for system decoupling
>>>    4)  How long has it been used?
>>>        1 year
>>>     5)feedback
>>>       (1)CPP client and Java client can send and receive each other.
>>>      (2)Messages can be sent and consumed normally.
>>> 
>>> 
>>> If you have any suggestion about the graduation of the CPP client, please
>>> feel free to reply to this email, we sincerely hope to get your advice.
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
>> --
>> Nothing is impossible


Re: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by Willem Jiang <wi...@gmail.com>.
Just a quick question, what's the graduation plan? Will
RocketMQ-Client-CPP be a TLP?

As RocketMQ-Client-CPP is part of RocketMQ ecosystem, it's better to
be a sub project of RocketMQ.
ActiveMQ has lots of clients git repos, they are still part of ActiveMQ project.

Willem Jiang

Twitter: willemjiang
Weibo: 姜宁willem
On Fri, Nov 30, 2018 at 11:33 AM vongosling <fe...@gmail.com> wrote:
>
> Hi,
>
> Thanks heng, very valuable discussion for the health community. IMO, we
> should point out the rule for the incubator and graduation of the community
> projects. I remember I have proposed to add the maintainer role for the
> projects when we are in podling, but that's a not good time. Time changed,
> with more and more users and contributors actively involved in the
> community, we should re-consider the guidance of the community, we could
> see some positive thinking appears on the external repository.
>
> “ There are many of the Apache RocketMQ external projects, which is born
> from Apache RocketMQ Improvement Proposal and contributed and maintained by
> the community. The PMC will lean towards developer community support, to
> help discovery and initial steps towards incubation in the external
> repository. Incubator Projects could graduate if they meet the following
> requirements.
>
> Require 3+1 vote from the PMC
> Used successfully in production by at least three independent end users
> which, in the PMC judgment, are of adequate quality and scope.
> Have a healthy number of committers ”
>
> From this point of view, I am willing to support the cpp sdk graduate from
> the community. The next step, I think we should consider the formal
> release. BTW, if we could collect more feedback just as the following,
> that's' a good promotion for our product.
>
> 1) The compilation of the original CPP SDK is tedious, and many tools and
> dependency libraries need to be installed. The optimized version of the
> public beta is easy to compile and get started.
> 2) example is more detailed, the main use scenarios have examples, can
> easily guide the basic use, follow-up use of SDK programming is simple and
> easy to use.
> 3) the SDK and server sides are relatively stable, basically, there is no
> problem after the line.
>
>
> I also want to hear from the sounds from the community, thoughts?
>
>
> Best Regards,
> Von Gosling
>
> heng du <du...@gmail.com> 于2018年11月29日周四 下午10:45写道:
>
> > Hello RocketMQ Community,
> >
> > This is the discussion for the graduation of RocketMQ’s CPP client(
> > https://github.com/apache/rocketmq-client-cpp).
> >
> > RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which
> > provides two kinds of interfaces in C++ and C-style, almost have all the
> > features included in the Java client, and it’s also the core of other
> > language’s client, other language’s client will be built on top of it,
> > including python, Nodejs, C#, golang and so on.
> >
> > After many years of incubation, the CPP client has been used by several
> > companies  and main features have been verified in their production
> > environment, and up to now, there are 6 active contributors from 5
> > organizations in the community.
> >
> > So we think it has reached the graduation standard, but in order to ensure
> > the quality of the project, we still investigated the usage information of
> > three companies from different industries, the information shows below:
> >
> >    1 A financial company
> >      1)Environment Configuration:
> >          (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G
> > Memory
> >          (2) 2 * Master + 2 * Slave
> >            (3) Three subsystems were deployed, including six producer
> > instances and six consumer instances.
> >      2) Functions
> >           Asynchronous transmission
> >           PushConsumer with cluster mode
> >           PushConsumer with broadcasting mode
> >     3)scene
> >           Mainly used for system decoupling, message reliability
> > assurance, resolving write speed mismatch between redis and Oracle
> > scenarios.
> >    4)  How long has it been used?
> >         6 months
> >   5)Usage description
> >        (1) The compilation of the original CPP SDK is tedious, and many
> > tools and dependency libraries need to be installed. The optimized version
> > of public beta is easy to compile and get started.
> >        (2) example is more detailed, the main use scenarios have examples,
> > can easily guide the basic use, follow-up use of SDK programming is simple
> > and easy to use.
> >        (3) the SDK and server sides are relatively stable, basically there
> > is no problem after the line.
> >
> >  2 An education company
> >     1)Environment Configuration:
> >          CentOS 7.x
> >      2) Functions
> >           Asynchronous transmission
> >           Synchronous transmission
> >           Orderly transmission
> >           oneway transmission
> >           PushConsumer with cluster mode
> >           PushConsumer orderly
> >     3)Business scale
> >           100 million per day
> >     3)scene
> >           Mainly used for system decoupling
> >    4)  How long has it been used?
> >         1 year
> >   5)feedback
> >        CPP client is relatively stable, there is basically no problem
> > Online
> >
> > 3   Alibaba
> >      1)Environment Configuration:
> >        (1)Ubuntu Server 16.04    8*CPU   16G Memory
> >        (2) 2 * Master + 2 * Slave
> >          (3) two producer instances and three consumer instances.
> >      2) Functions
> >           (1)C++
> >              Asynchronous transmission
> >              PushConsumer with cluster mode
> >           (2)C
> >              Asynchronous transmission
> >              PushConsumer with cluster mode
> >     3)scene
> >           Mainly used for system decoupling
> >     4)  How long has it been used?
> >         1 year
> >      5)feedback
> >        (1)CPP client and Java client can send and receive each other.
> >       (2)Messages can be sent and consumed normally.
> >
> >
> >  If you have any suggestion about the graduation of the CPP client, please
> > feel free to reply to this email, we sincerely hope to get your advice.
> >
> >
> >
> >
> >
>
> --
> Nothing is impossible

回复: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by "Kaidi, ZHU" <i...@2333.moe>.
Hi,


I want to know when all platform's usable libraries can be put into mirror?




------------------ 原始邮件 ------------------
发件人: "vongosling"<fe...@gmail.com>;
发送时间: 2018年11月30日(星期五) 中午11:32
收件人: "users"<us...@rocketmq.apache.org>;
抄送: "dev"<de...@rocketmq.apache.org>; 
主题: Re: [DISCUSS]The graduation of RocketMQ's CPP client.



Hi,

Thanks heng, very valuable discussion for the health community. IMO, we
should point out the rule for the incubator and graduation of the community
projects. I remember I have proposed to add the maintainer role for the
projects when we are in podling, but that's a not good time. Time changed,
with more and more users and contributors actively involved in the
community, we should re-consider the guidance of the community, we could
see some positive thinking appears on the external repository.

“ There are many of the Apache RocketMQ external projects, which is born
from Apache RocketMQ Improvement Proposal and contributed and maintained by
the community. The PMC will lean towards developer community support, to
help discovery and initial steps towards incubation in the external
repository. Incubator Projects could graduate if they meet the following
requirements.

Require 3+1 vote from the PMC
Used successfully in production by at least three independent end users
which, in the PMC judgment, are of adequate quality and scope.
Have a healthy number of committers ”

From this point of view, I am willing to support the cpp sdk graduate from
the community. The next step, I think we should consider the formal
release. BTW, if we could collect more feedback just as the following,
that's' a good promotion for our product.

1) The compilation of the original CPP SDK is tedious, and many tools and
dependency libraries need to be installed. The optimized version of the
public beta is easy to compile and get started.
2) example is more detailed, the main use scenarios have examples, can
easily guide the basic use, follow-up use of SDK programming is simple and
easy to use.
3) the SDK and server sides are relatively stable, basically, there is no
problem after the line.


I also want to hear from the sounds from the community, thoughts?


Best Regards,
Von Gosling

heng du <du...@gmail.com> 于2018年11月29日周四 下午10:45写道:

> Hello RocketMQ Community,
>
> This is the discussion for the graduation of RocketMQ’s CPP client(
> https://github.com/apache/rocketmq-client-cpp).
>
> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which
> provides two kinds of interfaces in C++ and C-style, almost have all the
> features included in the Java client, and it’s also the core of other
> language’s client, other language’s client will be built on top of it,
> including python, Nodejs, C#, golang and so on.
>
> After many years of incubation, the CPP client has been used by several
> companies  and main features have been verified in their production
> environment, and up to now, there are 6 active contributors from 5
> organizations in the community.
>
> So we think it has reached the graduation standard, but in order to ensure
> the quality of the project, we still investigated the usage information of
> three companies from different industries, the information shows below:
>
>    1 A financial company
>      1)Environment Configuration:
>          (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G
> Memory
>          (2) 2 * Master + 2 * Slave
>            (3) Three subsystems were deployed, including six producer
> instances and six consumer instances.
>      2) Functions
>           Asynchronous transmission
>           PushConsumer with cluster mode
>           PushConsumer with broadcasting mode
>     3)scene
>           Mainly used for system decoupling, message reliability
> assurance, resolving write speed mismatch between redis and Oracle
> scenarios.
>    4)  How long has it been used?
>         6 months
>   5)Usage description
>        (1) The compilation of the original CPP SDK is tedious, and many
> tools and dependency libraries need to be installed. The optimized version
> of public beta is easy to compile and get started.
>        (2) example is more detailed, the main use scenarios have examples,
> can easily guide the basic use, follow-up use of SDK programming is simple
> and easy to use.
>        (3) the SDK and server sides are relatively stable, basically there
> is no problem after the line.
>
>  2 An education company
>     1)Environment Configuration:
>          CentOS 7.x
>      2) Functions
>           Asynchronous transmission
>           Synchronous transmission
>           Orderly transmission
>           oneway transmission
>           PushConsumer with cluster mode
>           PushConsumer orderly
>     3)Business scale
>           100 million per day
>     3)scene
>           Mainly used for system decoupling
>    4)  How long has it been used?
>         1 year
>   5)feedback
>        CPP client is relatively stable, there is basically no problem
> Online
>
> 3   Alibaba
>      1)Environment Configuration:
>        (1)Ubuntu Server 16.04    8*CPU   16G Memory
>        (2) 2 * Master + 2 * Slave
>          (3) two producer instances and three consumer instances.
>      2) Functions
>           (1)C++
>              Asynchronous transmission
>              PushConsumer with cluster mode
>           (2)C
>              Asynchronous transmission
>              PushConsumer with cluster mode
>     3)scene
>           Mainly used for system decoupling
>     4)  How long has it been used?
>         1 year
>      5)feedback
>        (1)CPP client and Java client can send and receive each other.
>       (2)Messages can be sent and consumed normally.
>
>
>  If you have any suggestion about the graduation of the CPP client, please
> feel free to reply to this email, we sincerely hope to get your advice.
>
>
>
>
>

-- 
Nothing is impossible



------------------
Kaidi, ZHU朱凯迪(死月)
Senior R&D Engineer @ Ant Financial Services Group (antfin.com)


Building I, Huanglong International Center, No. 77 Xueyuan Road, Hangzhou 310000, ZHEJIANG
浙江省杭州市西湖区学院路 77 号黄龙国际中心 I 座(310000)


Email: i@2333.moe

回复: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by "Kaidi, ZHU" <i...@2333.moe>.
Hi,


I want to know when all platform's usable libraries can be put into mirror?




------------------ 原始邮件 ------------------
发件人: "vongosling"<fe...@gmail.com>;
发送时间: 2018年11月30日(星期五) 中午11:32
收件人: "users"<us...@rocketmq.apache.org>;
抄送: "dev"<de...@rocketmq.apache.org>; 
主题: Re: [DISCUSS]The graduation of RocketMQ's CPP client.



Hi,

Thanks heng, very valuable discussion for the health community. IMO, we
should point out the rule for the incubator and graduation of the community
projects. I remember I have proposed to add the maintainer role for the
projects when we are in podling, but that's a not good time. Time changed,
with more and more users and contributors actively involved in the
community, we should re-consider the guidance of the community, we could
see some positive thinking appears on the external repository.

“ There are many of the Apache RocketMQ external projects, which is born
from Apache RocketMQ Improvement Proposal and contributed and maintained by
the community. The PMC will lean towards developer community support, to
help discovery and initial steps towards incubation in the external
repository. Incubator Projects could graduate if they meet the following
requirements.

Require 3+1 vote from the PMC
Used successfully in production by at least three independent end users
which, in the PMC judgment, are of adequate quality and scope.
Have a healthy number of committers ”

From this point of view, I am willing to support the cpp sdk graduate from
the community. The next step, I think we should consider the formal
release. BTW, if we could collect more feedback just as the following,
that's' a good promotion for our product.

1) The compilation of the original CPP SDK is tedious, and many tools and
dependency libraries need to be installed. The optimized version of the
public beta is easy to compile and get started.
2) example is more detailed, the main use scenarios have examples, can
easily guide the basic use, follow-up use of SDK programming is simple and
easy to use.
3) the SDK and server sides are relatively stable, basically, there is no
problem after the line.


I also want to hear from the sounds from the community, thoughts?


Best Regards,
Von Gosling

heng du <du...@gmail.com> 于2018年11月29日周四 下午10:45写道:

> Hello RocketMQ Community,
>
> This is the discussion for the graduation of RocketMQ’s CPP client(
> https://github.com/apache/rocketmq-client-cpp).
>
> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which
> provides two kinds of interfaces in C++ and C-style, almost have all the
> features included in the Java client, and it’s also the core of other
> language’s client, other language’s client will be built on top of it,
> including python, Nodejs, C#, golang and so on.
>
> After many years of incubation, the CPP client has been used by several
> companies  and main features have been verified in their production
> environment, and up to now, there are 6 active contributors from 5
> organizations in the community.
>
> So we think it has reached the graduation standard, but in order to ensure
> the quality of the project, we still investigated the usage information of
> three companies from different industries, the information shows below:
>
>    1 A financial company
>      1)Environment Configuration:
>          (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G
> Memory
>          (2) 2 * Master + 2 * Slave
>            (3) Three subsystems were deployed, including six producer
> instances and six consumer instances.
>      2) Functions
>           Asynchronous transmission
>           PushConsumer with cluster mode
>           PushConsumer with broadcasting mode
>     3)scene
>           Mainly used for system decoupling, message reliability
> assurance, resolving write speed mismatch between redis and Oracle
> scenarios.
>    4)  How long has it been used?
>         6 months
>   5)Usage description
>        (1) The compilation of the original CPP SDK is tedious, and many
> tools and dependency libraries need to be installed. The optimized version
> of public beta is easy to compile and get started.
>        (2) example is more detailed, the main use scenarios have examples,
> can easily guide the basic use, follow-up use of SDK programming is simple
> and easy to use.
>        (3) the SDK and server sides are relatively stable, basically there
> is no problem after the line.
>
>  2 An education company
>     1)Environment Configuration:
>          CentOS 7.x
>      2) Functions
>           Asynchronous transmission
>           Synchronous transmission
>           Orderly transmission
>           oneway transmission
>           PushConsumer with cluster mode
>           PushConsumer orderly
>     3)Business scale
>           100 million per day
>     3)scene
>           Mainly used for system decoupling
>    4)  How long has it been used?
>         1 year
>   5)feedback
>        CPP client is relatively stable, there is basically no problem
> Online
>
> 3   Alibaba
>      1)Environment Configuration:
>        (1)Ubuntu Server 16.04    8*CPU   16G Memory
>        (2) 2 * Master + 2 * Slave
>          (3) two producer instances and three consumer instances.
>      2) Functions
>           (1)C++
>              Asynchronous transmission
>              PushConsumer with cluster mode
>           (2)C
>              Asynchronous transmission
>              PushConsumer with cluster mode
>     3)scene
>           Mainly used for system decoupling
>     4)  How long has it been used?
>         1 year
>      5)feedback
>        (1)CPP client and Java client can send and receive each other.
>       (2)Messages can be sent and consumed normally.
>
>
>  If you have any suggestion about the graduation of the CPP client, please
> feel free to reply to this email, we sincerely hope to get your advice.
>
>
>
>
>

-- 
Nothing is impossible



------------------
Kaidi, ZHU朱凯迪(死月)
Senior R&D Engineer @ Ant Financial Services Group (antfin.com)


Building I, Huanglong International Center, No. 77 Xueyuan Road, Hangzhou 310000, ZHEJIANG
浙江省杭州市西湖区学院路 77 号黄龙国际中心 I 座(310000)


Email: i@2333.moe

Re: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by vongosling <fe...@gmail.com>.
Hi,

Thanks heng, very valuable discussion for the health community. IMO, we
should point out the rule for the incubator and graduation of the community
projects. I remember I have proposed to add the maintainer role for the
projects when we are in podling, but that's a not good time. Time changed,
with more and more users and contributors actively involved in the
community, we should re-consider the guidance of the community, we could
see some positive thinking appears on the external repository.

“ There are many of the Apache RocketMQ external projects, which is born
from Apache RocketMQ Improvement Proposal and contributed and maintained by
the community. The PMC will lean towards developer community support, to
help discovery and initial steps towards incubation in the external
repository. Incubator Projects could graduate if they meet the following
requirements.

Require 3+1 vote from the PMC
Used successfully in production by at least three independent end users
which, in the PMC judgment, are of adequate quality and scope.
Have a healthy number of committers ”

From this point of view, I am willing to support the cpp sdk graduate from
the community. The next step, I think we should consider the formal
release. BTW, if we could collect more feedback just as the following,
that's' a good promotion for our product.

1) The compilation of the original CPP SDK is tedious, and many tools and
dependency libraries need to be installed. The optimized version of the
public beta is easy to compile and get started.
2) example is more detailed, the main use scenarios have examples, can
easily guide the basic use, follow-up use of SDK programming is simple and
easy to use.
3) the SDK and server sides are relatively stable, basically, there is no
problem after the line.


I also want to hear from the sounds from the community, thoughts?


Best Regards,
Von Gosling

heng du <du...@gmail.com> 于2018年11月29日周四 下午10:45写道:

> Hello RocketMQ Community,
>
> This is the discussion for the graduation of RocketMQ’s CPP client(
> https://github.com/apache/rocketmq-client-cpp).
>
> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which
> provides two kinds of interfaces in C++ and C-style, almost have all the
> features included in the Java client, and it’s also the core of other
> language’s client, other language’s client will be built on top of it,
> including python, Nodejs, C#, golang and so on.
>
> After many years of incubation, the CPP client has been used by several
> companies  and main features have been verified in their production
> environment, and up to now, there are 6 active contributors from 5
> organizations in the community.
>
> So we think it has reached the graduation standard, but in order to ensure
> the quality of the project, we still investigated the usage information of
> three companies from different industries, the information shows below:
>
>    1 A financial company
>      1)Environment Configuration:
>          (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G
> Memory
>          (2) 2 * Master + 2 * Slave
>            (3) Three subsystems were deployed, including six producer
> instances and six consumer instances.
>      2) Functions
>           Asynchronous transmission
>           PushConsumer with cluster mode
>           PushConsumer with broadcasting mode
>     3)scene
>           Mainly used for system decoupling, message reliability
> assurance, resolving write speed mismatch between redis and Oracle
> scenarios.
>    4)  How long has it been used?
>         6 months
>   5)Usage description
>        (1) The compilation of the original CPP SDK is tedious, and many
> tools and dependency libraries need to be installed. The optimized version
> of public beta is easy to compile and get started.
>        (2) example is more detailed, the main use scenarios have examples,
> can easily guide the basic use, follow-up use of SDK programming is simple
> and easy to use.
>        (3) the SDK and server sides are relatively stable, basically there
> is no problem after the line.
>
>  2 An education company
>     1)Environment Configuration:
>          CentOS 7.x
>      2) Functions
>           Asynchronous transmission
>           Synchronous transmission
>           Orderly transmission
>           oneway transmission
>           PushConsumer with cluster mode
>           PushConsumer orderly
>     3)Business scale
>           100 million per day
>     3)scene
>           Mainly used for system decoupling
>    4)  How long has it been used?
>         1 year
>   5)feedback
>        CPP client is relatively stable, there is basically no problem
> Online
>
> 3   Alibaba
>      1)Environment Configuration:
>        (1)Ubuntu Server 16.04    8*CPU   16G Memory
>        (2) 2 * Master + 2 * Slave
>          (3) two producer instances and three consumer instances.
>      2) Functions
>           (1)C++
>              Asynchronous transmission
>              PushConsumer with cluster mode
>           (2)C
>              Asynchronous transmission
>              PushConsumer with cluster mode
>     3)scene
>           Mainly used for system decoupling
>     4)  How long has it been used?
>         1 year
>      5)feedback
>        (1)CPP client and Java client can send and receive each other.
>       (2)Messages can be sent and consumed normally.
>
>
>  If you have any suggestion about the graduation of the CPP client, please
> feel free to reply to this email, we sincerely hope to get your advice.
>
>
>
>
>

-- 
Nothing is impossible

Re: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by vongosling <fe...@gmail.com>.
Hi,

Thanks heng, very valuable discussion for the health community. IMO, we
should point out the rule for the incubator and graduation of the community
projects. I remember I have proposed to add the maintainer role for the
projects when we are in podling, but that's a not good time. Time changed,
with more and more users and contributors actively involved in the
community, we should re-consider the guidance of the community, we could
see some positive thinking appears on the external repository.

“ There are many of the Apache RocketMQ external projects, which is born
from Apache RocketMQ Improvement Proposal and contributed and maintained by
the community. The PMC will lean towards developer community support, to
help discovery and initial steps towards incubation in the external
repository. Incubator Projects could graduate if they meet the following
requirements.

Require 3+1 vote from the PMC
Used successfully in production by at least three independent end users
which, in the PMC judgment, are of adequate quality and scope.
Have a healthy number of committers ”

From this point of view, I am willing to support the cpp sdk graduate from
the community. The next step, I think we should consider the formal
release. BTW, if we could collect more feedback just as the following,
that's' a good promotion for our product.

1) The compilation of the original CPP SDK is tedious, and many tools and
dependency libraries need to be installed. The optimized version of the
public beta is easy to compile and get started.
2) example is more detailed, the main use scenarios have examples, can
easily guide the basic use, follow-up use of SDK programming is simple and
easy to use.
3) the SDK and server sides are relatively stable, basically, there is no
problem after the line.


I also want to hear from the sounds from the community, thoughts?


Best Regards,
Von Gosling

heng du <du...@gmail.com> 于2018年11月29日周四 下午10:45写道:

> Hello RocketMQ Community,
>
> This is the discussion for the graduation of RocketMQ’s CPP client(
> https://github.com/apache/rocketmq-client-cpp).
>
> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which
> provides two kinds of interfaces in C++ and C-style, almost have all the
> features included in the Java client, and it’s also the core of other
> language’s client, other language’s client will be built on top of it,
> including python, Nodejs, C#, golang and so on.
>
> After many years of incubation, the CPP client has been used by several
> companies  and main features have been verified in their production
> environment, and up to now, there are 6 active contributors from 5
> organizations in the community.
>
> So we think it has reached the graduation standard, but in order to ensure
> the quality of the project, we still investigated the usage information of
> three companies from different industries, the information shows below:
>
>    1 A financial company
>      1)Environment Configuration:
>          (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G
> Memory
>          (2) 2 * Master + 2 * Slave
>            (3) Three subsystems were deployed, including six producer
> instances and six consumer instances.
>      2) Functions
>           Asynchronous transmission
>           PushConsumer with cluster mode
>           PushConsumer with broadcasting mode
>     3)scene
>           Mainly used for system decoupling, message reliability
> assurance, resolving write speed mismatch between redis and Oracle
> scenarios.
>    4)  How long has it been used?
>         6 months
>   5)Usage description
>        (1) The compilation of the original CPP SDK is tedious, and many
> tools and dependency libraries need to be installed. The optimized version
> of public beta is easy to compile and get started.
>        (2) example is more detailed, the main use scenarios have examples,
> can easily guide the basic use, follow-up use of SDK programming is simple
> and easy to use.
>        (3) the SDK and server sides are relatively stable, basically there
> is no problem after the line.
>
>  2 An education company
>     1)Environment Configuration:
>          CentOS 7.x
>      2) Functions
>           Asynchronous transmission
>           Synchronous transmission
>           Orderly transmission
>           oneway transmission
>           PushConsumer with cluster mode
>           PushConsumer orderly
>     3)Business scale
>           100 million per day
>     3)scene
>           Mainly used for system decoupling
>    4)  How long has it been used?
>         1 year
>   5)feedback
>        CPP client is relatively stable, there is basically no problem
> Online
>
> 3   Alibaba
>      1)Environment Configuration:
>        (1)Ubuntu Server 16.04    8*CPU   16G Memory
>        (2) 2 * Master + 2 * Slave
>          (3) two producer instances and three consumer instances.
>      2) Functions
>           (1)C++
>              Asynchronous transmission
>              PushConsumer with cluster mode
>           (2)C
>              Asynchronous transmission
>              PushConsumer with cluster mode
>     3)scene
>           Mainly used for system decoupling
>     4)  How long has it been used?
>         1 year
>      5)feedback
>        (1)CPP client and Java client can send and receive each other.
>       (2)Messages can be sent and consumed normally.
>
>
>  If you have any suggestion about the graduation of the CPP client, please
> feel free to reply to this email, we sincerely hope to get your advice.
>
>
>
>
>

-- 
Nothing is impossible

Re: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by liqipeng <wl...@163.com>.
As far as I know, RocketMQ-Client-CPP has been able to support multiple operating systems, such as centos, redhat, ubuntu, windows, and has been used online by many companies. I look forward to graduating from the CPP client as soon as possible.
> 在 2018年11月29日,下午10:45,heng du <du...@gmail.com> 写道:
> 
> Hello RocketMQ Community, 
> 
> This is the discussion for the graduation of RocketMQ’s CPP client(https://github.com/apache/rocketmq-client-cpp).
> 
> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which provides two kinds of interfaces in C++ and C-style, almost have all the features included in the Java client, and it’s also the core of other language’s client, other language’s client will be built on top of it, including python, Nodejs, C#, golang and so on.
> 
> After many years of incubation, the CPP client has been used by several companies  and main features have been verified in their production environment, and up to now, there are 6 active contributors from 5 organizations in the community.
> 
> So we think it has reached the graduation standard, but in order to ensure the quality of the project, we still investigated the usage information of three companies from different industries, the information shows below:
> 
>   1 A financial company
>     1)Environment Configuration:
>         (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G Memory
>         (2) 2 * Master + 2 * Slave
>           (3) Three subsystems were deployed, including six producer instances and six consumer instances.
>     2) Functions
>          Asynchronous transmission
>          PushConsumer with cluster mode
>          PushConsumer with broadcasting mode
>    3)scene
>          Mainly used for system decoupling, message reliability assurance, resolving write speed mismatch between redis and Oracle scenarios.  
>   4)  How long has it been used?
>        6 months
>  5)Usage description
>       (1) The compilation of the original CPP SDK is tedious, and many tools and dependency libraries need to be installed. The optimized version of public beta is easy to compile and get started.
>       (2) example is more detailed, the main use scenarios have examples, can easily guide the basic use, follow-up use of SDK programming is simple and easy to use.
>       (3) the SDK and server sides are relatively stable, basically there is no problem after the line.
> 
> 2 An education company
>    1)Environment Configuration:
>         CentOS 7.x
>     2) Functions
>          Asynchronous transmission
>          Synchronous transmission
>          Orderly transmission
>          oneway transmission
>          PushConsumer with cluster mode
>          PushConsumer orderly
>    3)Business scale
>          100 million per day​​
>    3)scene
>          Mainly used for system decoupling
>   4)  How long has it been used?
>        1 year
>  5)feedback
>       CPP client is relatively stable, there is basically no problem Online
> 
> 3   Alibaba
>     1)Environment Configuration:
>       (1)Ubuntu Server 16.04    8*CPU   16G Memory
>       (2) 2 * Master + 2 * Slave
>         (3) two producer instances and three consumer instances.
>     2) Functions
>          (1)C++  
>             Asynchronous transmission
>             PushConsumer with cluster mode
>          (2)C
>             Asynchronous transmission
>             PushConsumer with cluster mode
>    3)scene
>          Mainly used for system decoupling
>    4)  How long has it been used?
>        1 year
>     5)feedback
>       (1)CPP client and Java client can send and receive each other.
>      (2)Messages can be sent and consumed normally.
> 
> 
> If you have any suggestion about the graduation of the CPP client, please feel free to reply to this email, we sincerely hope to get your advice.
> 
> 
> 
> 


Re: [DISCUSS]The graduation of RocketMQ's CPP client.

Posted by liqipeng <wl...@163.com>.
As far as I know, RocketMQ-Client-CPP has been able to support multiple operating systems, such as centos, redhat, ubuntu, windows, and has been used online by many companies. I look forward to graduating from the CPP client as soon as possible.
> 在 2018年11月29日,下午10:45,heng du <du...@gmail.com> 写道:
> 
> Hello RocketMQ Community, 
> 
> This is the discussion for the graduation of RocketMQ’s CPP client(https://github.com/apache/rocketmq-client-cpp).
> 
> RocketMQ-Client-CPP is the C/C++ client of Apache RocketMQ,  which provides two kinds of interfaces in C++ and C-style, almost have all the features included in the Java client, and it’s also the core of other language’s client, other language’s client will be built on top of it, including python, Nodejs, C#, golang and so on.
> 
> After many years of incubation, the CPP client has been used by several companies  and main features have been verified in their production environment, and up to now, there are 6 active contributors from 5 organizations in the community.
> 
> So we think it has reached the graduation standard, but in order to ensure the quality of the project, we still investigated the usage information of three companies from different industries, the information shows below:
> 
>   1 A financial company
>     1)Environment Configuration:
>         (1)Red Hat Enterprise Linux Server release 6.5    8*CPU   32G Memory
>         (2) 2 * Master + 2 * Slave
>           (3) Three subsystems were deployed, including six producer instances and six consumer instances.
>     2) Functions
>          Asynchronous transmission
>          PushConsumer with cluster mode
>          PushConsumer with broadcasting mode
>    3)scene
>          Mainly used for system decoupling, message reliability assurance, resolving write speed mismatch between redis and Oracle scenarios.  
>   4)  How long has it been used?
>        6 months
>  5)Usage description
>       (1) The compilation of the original CPP SDK is tedious, and many tools and dependency libraries need to be installed. The optimized version of public beta is easy to compile and get started.
>       (2) example is more detailed, the main use scenarios have examples, can easily guide the basic use, follow-up use of SDK programming is simple and easy to use.
>       (3) the SDK and server sides are relatively stable, basically there is no problem after the line.
> 
> 2 An education company
>    1)Environment Configuration:
>         CentOS 7.x
>     2) Functions
>          Asynchronous transmission
>          Synchronous transmission
>          Orderly transmission
>          oneway transmission
>          PushConsumer with cluster mode
>          PushConsumer orderly
>    3)Business scale
>          100 million per day​​
>    3)scene
>          Mainly used for system decoupling
>   4)  How long has it been used?
>        1 year
>  5)feedback
>       CPP client is relatively stable, there is basically no problem Online
> 
> 3   Alibaba
>     1)Environment Configuration:
>       (1)Ubuntu Server 16.04    8*CPU   16G Memory
>       (2) 2 * Master + 2 * Slave
>         (3) two producer instances and three consumer instances.
>     2) Functions
>          (1)C++  
>             Asynchronous transmission
>             PushConsumer with cluster mode
>          (2)C
>             Asynchronous transmission
>             PushConsumer with cluster mode
>    3)scene
>          Mainly used for system decoupling
>    4)  How long has it been used?
>        1 year
>     5)feedback
>       (1)CPP client and Java client can send and receive each other.
>      (2)Messages can be sent and consumed normally.
> 
> 
> If you have any suggestion about the graduation of the CPP client, please feel free to reply to this email, we sincerely hope to get your advice.
> 
> 
> 
>