dockerzhang opened a new issue #602:
URL: https://github.com/apache/incubator-inlong/issues/602


   <p>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.</p>
   
   <p> <span class="image-wrap" style=""><img 
src="https://issues.apache.org/jira/secure/attachment/13014546/13014546_Tubemq-cpp-client.png";
 style="border: 0px solid black" /></span> <br/>
   Task<br/>
    1.io thread management<br/>
    2. Connection interface<br/>
    3. Connection pool management<br/>
    4.IO Buffer<br/>
    5.Future/Promise support<br/>
    6.Codec interface and TubeMQ interactive encoding<br/>
    7. Functionalization of service interface parameter settings<br/>
    8.Future service interface<br/>
    9.Master implementation, metadata acquisition and reading interface<br/>
    10. Consumer realization<br/>
    11. Producer Realization<br/>
    12.Client configuration<br/>
    13. Producer API package<br/>
    14. Consumer API package</p>
   
   <p>Plan<br/>
    Phase 1 (Available)-Implement basic functions and ensure unit test 
coverage<br/>
    RPC support<br/>
    Message consumption (pull mode)<br/>
    Write message (synchronous)<br/>
    Connection pool implementation-automatic reconnection of broken links, 
automatic recovery of idle connections, shared according to sessionFactory<br/>
    Test case and specification construction-</p>
   
   <p>Phase 2 (Practical)-Realize the features of each function and be able to 
adapt to a certain level of pressure measurement<br/>
    Asynchronous production <br/>
    Authentication and authentication && Prevent production and consumption 
around the master <br/>
    Accurately specify offset partition consumption <br/>
    Frequency control<br/>
    Consumption of multiple topics in a single group <br/>
    Server filter consumption </p>
   
   <p>Phase 3 (Easy to use)-Continuous iteration, full-featured implementation, 
realizing the latest function points according to priority<br/>
    Inactive for more than specified minutes, mainly at the production end, 
such as 3 minutes <br/>
    Automatically shield the dead pixels, detect the dead pixels through the 
algorithm, and automatically shield the fault Broker's data transmission <br/>
    TLS <br/>
    push consumption</p>
   
   <p> </p>
   
   <p>Featrue<br/>
    1.rpc development<br/>
    Pre-research--asio development<br/>
    Connection interface<br/>
    Connection pool management-connection reuse, automatic reconnection of 
broken links, automatic recovery of idle connections, sharing according to 
sessionFactory<br/>
    Streaming request support-based on serialNo<br/>
    Future/Promise interface<br/>
    Codec interface<br/>
    Log<br/>
    Config<br/>
    Buffer</p>
   
   <p>2. Service interface development<br/>
    API service interface, such as heartbeat package variable function<br/>
    Request Future/Promise function encapsulation<br/>
    Config: client, consumer, producer, Master, rpc<br/>
    Message id</p>
   
   <p>3.Client<br/>
    turn stop<br/>
    Configuration input<br/>
    Consumer API<br/>
    Producer API</p>
   
   <p>4.Master<br/>
    Authentication<br/>
    Prevent the production and consumption around the Master: get the token 
from the Master and update it to the local metadata<br/>
    Metadata management: Topic, Group, Master<br/>
    Master Heartbeat</p>
   
   <p>5. Consumer<br/>
    User interface<br/>
    Heartbeat support<br/>
    pull consumption<br/>
    Consumption of multiple topics in a single group<br/>
    Authentication<br/>
    Precisely specify offset partition consumption</p>
   
   <p>6. Producer<br/>
    User interface<br/>
    Simultaneous production<br/>
    Asynchronous production<br/>
    Load balancing algorithm: polling<br/>
    Load balancing algorithm: hash</p>
   
   <p>7. Advanced features<br/>
    Master disconnects and reconnects, traversing dns to obtain Master host 
IP<br/>
    Limiting<br/>
    Effectively-Once<br/>
    tls:asio+openssl<br/>
    Filter consumption<br/>
    Inactive for more than the specified minutes, mainly at the production end, 
for example 3 minutes<br/>
    Fuse: Automatically shield the dead spots, detect the dead spots through 
the algorithm, automatically shield the fault Broker's data transmission<br/>
    Reporting time-consuming, failure; static weight (number of partitions), 
dynamic weight<br/>
    Connection pool management-automatic recovery of idle connections, shared 
according to sessionFactory<br/>
    Push consumptio</p>
   
   <p> </p>
   
   <p> </p>
   <i>JIRA link - <a 
href="https://issues.apache.org/jira/browse/INLONG-3";>[INLONG-3]</a> created by 
zhangguocheng</i>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to