[ 
https://issues.apache.org/jira/browse/TUBEMQ-3?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17195977#comment-17195977
 ] 

charleli commented on TUBEMQ-3:
-------------------------------

already done consume, 
The consumer part has been completed, and the producer part will be completed 
later.

Reference code
https://github.com/Qihoo360/evpp/blob/master/evpp/any.h  version c5038a6  
LICENSE BSD 3-Clause
https://github.com/Qihoo360/evpp/blob/master/evpp/buffer.h version b2535d7  
LICENSE BSD 3-Clause
https://github.com/apache/pulsar/blob/master/pulsar-client-cpp/lib/Future.h 
b3596c4   LICENSE Apache 2.0


> C++ SDK support in TubeMQ
> -------------------------
>
>                 Key: TUBEMQ-3
>                 URL: https://issues.apache.org/jira/browse/TUBEMQ-3
>             Project: Apache TubeMQ
>          Issue Type: New Feature
>            Reporter: zhangguocheng
>            Assignee: charleli
>            Priority: Normal
>             Fix For: 0.6.0
>
>         Attachments: TubeMQCpp.png
>
>
> I will contribute the SDK of C + +, which is currently being sorted out. 
> Without changing the server-side interaction protocol, the semantics will be 
> the same as the Java implementation.
>     !TubeMQCpp.png!
> Task
>  1.io thread management
>  2. Connection interface
>  3. Connection pool management
>  4.IO Buffer
>  5.Futrue/Promise support
>  6.Codec interface and TubeMQ interactive encoding
>  7. Functionalization of service interface parameter settings
>  8.Futrue service interface
>  9.Master implementation, metadata acquisition and reading interface
>  10. Consumer realization
>  11. Producer Realization
>  12.Client configuration
>  13. Producer API package
>  14. Consumer API package
> Plan
>  Phase 1 (Available)-Implement basic functions and ensure unit test coverage
>  RPC support
>  Message consumption (pull mode)
>  Write message (synchronous)
>  Connection pool implementation-automatic reconnection of broken links, 
> automatic recovery of idle connections, shared according to sessionFactory
>  Test case and specification construction-
> Phase 2 (Practical)-Realize the features of each function and be able to 
> adapt to a certain level of pressure measurement
>  Asynchronous production 
>  Authentication and authentication && Prevent production and consumption 
> around the master 
>  Accurately specify offset partition consumption 
>  Frequency control
>  Consumption of multiple topics in a single group 
>  Server filter consumption 
> Phase 3 (Easy to use)-Continuous iteration, full-featured implementation, 
> realizing the latest function points according to priority
>  Inactive for more than specified minutes, mainly at the production end, such 
> as 3 minutes 
>  Automatically shield the dead pixels, detect the dead pixels through the 
> algorithm, and automatically shield the fault Broker's data transmission 
>  TLS 
>  push consumption
>  
> Featrue
>  1.rpc development
>  Pre-research--asio development
>  Connection interface
>  Connection pool management-connection reuse, automatic reconnection of 
> broken links, automatic recovery of idle connections, sharing according to 
> sessionFactory
>  Streaming request support-based on serialNo
>  Futrue/Promise interface
>  Codec interface
>  Log
>  Config
>  Buffer
> 2. Service interface development
>  API service interface, such as heartbeat package variable function
>  Request Futrue/Promise function encapsulation
>  Config: client, consumer, producer, Master, rpc
>  Message id
> 3.Client
>  turn stop
>  Configuration input
>  Consumer API
>  Producer API
> 4.Master
>  Authentication
>  Prevent the production and consumption around the Master: get the token from 
> the Master and update it to the local metadata
>  Metadata management: Topic, Group, Master
>  Master Heartbeat
> 5. Consumer
>  User interface
>  Heartbeat support
>  pull consumption
>  Consumption of multiple topics in a single group
>  Authentication
>  Precisely specify offset partition consumption
> 6. Producer
>  User interface
>  Simultaneous production
>  Asynchronous production
>  Load balancing algorithm: polling
>  Load balancing algorithm: hash
> 7. Advanced features
>  Master disconnects and reconnects, traversing dns to obtain Master host IP
>  Limiting
>  Effectively-Once
>  tls:asio+openssl
>  Filter consumption
>  Inactive for more than the specified minutes, mainly at the production end, 
> for example 3 minutes
>  Fuse: Automatically shield the dead spots, detect the dead spots through the 
> algorithm, automatically shield the fault Broker's data transmission
>  Reporting time-consuming, failure; static weight (number of partitions), 
> dynamic weight
>  Connection pool management-automatic recovery of idle connections, shared 
> according to sessionFactory
>  Push consumptio
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to