Has anyone tried simultaneously subscribing to MD feeds in a concurrent programming style? From different threads, processes, or applications? Any trouble?
For example, let's say I have this architecture:
Python program 1 (main thread)
- X - MD subscription (main thread: core 1: GIL 1)
- AAPL MD subscription (thread 1: core 1: GIL 1)
- TSLA MD subscription (thread 1: core 1: GIL 1)
- IBM MD subscription (thread 2: core 1 GIL 1)
^^^ Simpler: same core and GIL, separate threads.
Python program 2 (main thread)
- JPM MD subscription (main thread: core 2: GIL 2)
- VZ MD subscription (thread 1: core 2: GIL 2)
- GS MD subscription (spawns new process - thread 1, core 3: GIL 3)
^^^ Some shared threads and GIL; new core and GIL for this program. Also new core, GIL, and process on the GS sub.
Is IB smart enough to handle these concurrent subscriptions, and apply MD limits (both count and speed), or will it go down like the Hindenburg?
Note that my intention is to push all stated maximums to limit: 100 total subscriptions, at 50 price points/second.
Thx, Keith
For example, let's say I have this architecture:
Python program 1 (main thread)
- X - MD subscription (main thread: core 1: GIL 1)
- AAPL MD subscription (thread 1: core 1: GIL 1)
- TSLA MD subscription (thread 1: core 1: GIL 1)
- IBM MD subscription (thread 2: core 1 GIL 1)
^^^ Simpler: same core and GIL, separate threads.
Python program 2 (main thread)
- JPM MD subscription (main thread: core 2: GIL 2)
- VZ MD subscription (thread 1: core 2: GIL 2)
- GS MD subscription (spawns new process - thread 1, core 3: GIL 3)
^^^ Some shared threads and GIL; new core and GIL for this program. Also new core, GIL, and process on the GS sub.
Is IB smart enough to handle these concurrent subscriptions, and apply MD limits (both count and speed), or will it go down like the Hindenburg?
Note that my intention is to push all stated maximums to limit: 100 total subscriptions, at 50 price points/second.
Thx, Keith
Last edited: