[
https://issues.apache.org/jira/browse/TUBEMQ-3?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Haiji Li updated TUBEMQ-3:
--------------------------
Attachment: screenshot-2.png
> 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: Haiji Li
> Priority: Normal
> Labels: pull-request-available
> Fix For: 0.6.0
>
> Attachments: TubeMQCpp.png, screenshot-1.png, screenshot-2.png
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> 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.
> !screenshot-1.png!
> Task
> 1.io thread management
> 2. Connection interface
> 3. Connection pool management
> 4.IO Buffer
> 5.Future/Promise support
> 6.Codec interface and TubeMQ interactive encoding
> 7. Functionalization of service interface parameter settings
> 8.Future 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
> Future/Promise interface
> Codec interface
> Log
> Config
> Buffer
> 2. Service interface development
> API service interface, such as heartbeat package variable function
> Request Future/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)