This PR completely refactors the existing Python SDK, including the following content:
It hides the implementation details of coroutines. Users do not need to understand asyncio API, It is simpler to use.
It provides asynchronous methods for sending, receiving, and acknowledging message.
It implements thread safety for using multiple producers and consumers in a multithreaded environment, the existing version can’t work under a multi-threaded environment.
It implements metrics based on OpenTelemetry.
It fixes some bugs, such as multiple connections for the same endpoints、 heartbeat failures and so on
This PR completely refactors the existing Python SDK, including the following content: