by Katrina McCormack
The kdb+ IPC protocol allows multiple kdb+ processes to co-operate in an application and can also be used by a developer to connect a kdb+ process to an application developed in another language.
This paper provides an in-depth look at the underlying mechanisms of interprocess communication in kdb+. It begins by providing an overview of TCP connections and discusses applications for using Unix domain sockets across processes on a local host, and the use of TLS/SSL for more secure communication. It describes the main message handlers invoked in the process of opening a connection, running a query and closing a connection to a process, with various examples to illustrate each step.
It then takes a closer look at how IPC is applied in a vanilla tickerplant application, from when the data is first received from an upstream feed process to how tables are saved down at the end of the day.
To read the paper in full please click on this link. Thanks to Katrina for the paper and review assistance from Paula Clarke and James Neill.