binance-exchange / binance-java-api

binance-java-api is a lightweight Java library for the Binance API, supporting synchronous and asynchronous requests, as well as event streaming using WebSockets.
MIT License
834 stars 627 forks source link

API should allow integration with ExecutorService to allow better control of client threading #409

Open antlen opened 2 years ago

antlen commented 2 years ago

When you make an asynchronous call there is no control of how many threads are used for the requests and responses. Particularly when responses are processed the client needs to ensure data integrity, this could be done using synchronization but its better achieved using intelligent threading and dispatching. This is even more important when connecting to more than one exchange and you need to ensure that responses for the same ticker across multiple exchanges are processed in order.

The most simple way to achieve this is to control the threading model for the async calls, rather than relying on the http library.

antlen commented 2 years ago

Also available here as a bolt on library until (unless) this is merged into master : https://github.com/antlen/binance-java-api-extensions