Server Environment
Linux/RedHat
6 cores
Java 7/8
About application :
We are working on developing a low latency (7-8 ms) high speed trading platform using Java. Multi-leg orders are sent after algo conditions are met
Problem
The orders to the exchange using TCP/IP java.net.Socket
APIs (using java.io.OutputStream.write(bytes[] arg0)
). Profiler measurement is records as 5-7 microsec which is very high as per our low latency reqs. We are not made use of setPerformancePreferences() api as suggested in one of the questions posted in stacktrace.
Question
- Any alternatives to java.net.Socket to reduce the socket transmission time?
- Any optimization techniques to improve performance
- Is setPerformancePreferences() is of any use?