We will be in contact shortly.
Kdb Insights
Kdb Insights Overview
Built for The Modern Data Ecosystem
Unified for Richer Analytics
Faster Return on Investment
PyKX Python Interoperability
Services & Support
Financial Services Use Cases
FX Solutions
Quant Research
Surveillance
Trading Analytics
Industry & IoT Use Cases
Automotive
Energy & Utilities
Manufacturing
Telco
Services & Support
Learn
Overview
Featured Courses
KX Academy
Connect
KX Community
Community Events
Developer Blog
Build
Download
Documentation
Support
About Us
Partner with Us
Become a Partner
Find a Partner
Partner Signup
Join Us
Connect with Us
In the latest Kx technical whitepaper, Marcus Clarke discusses the use of Socket Sharding, which was introduced as a new feature in kdb+ V3.5. Socket Sharding enables the use of Linux’s SO_REUSEPORT socket option, which allows multiple sockets to listen on the same IP address and port number combination. The kernel will then allocate connection requests across the listening processes.
In this paper, Marcus investigates several scenarios where processes are running with this socket option enabled. These include adding more listener processes on the fly, sending a large volume of requests, routing connections when one listener process is busy and rolling updates to minimize downtime.
On Linux systems, the SO_REUSEPORT option was introduced in kernel version 3.9, so the commands in the examples below will fail if run on an older version of Linux.
Marcus Clarke is a kdb+ consultant for Kx and has worked at a number of leading financial institutions in both the UK and Asia. Currently based in New York, he is designing, developing and maintaining a kdb+ system for multiple asset classes at a top tier investment bank.