2 ms·
Where I work architects agree with you. Yet fairly modest requirements like 4000 concurrenct connections or a 16gb cache can be hard to achieve. We almost exc
by teknopaul 6y ago
Where I work architects agree with you.
Yet fairly modest requirements like 4000 concurrenct connections or a 16gb cache can be hard to achieve.
We almost exclusivly write for the JVM. I see systems with 20 - 30 - 40 jvms with huge CPU and RAM demands, to meet modest perf requirements.
Sometimes I do wonder if we shouldn't write a little more carefully written C and a lot less memory safe Java.
- lmm 6y agoHandling large numbers of connections is more easily done in Java, in my experience, since Java's async support is relatively straightforward. I would lay money that the language isn't your real bottleneck. Switching languages might save you a factor of 2, using better algorithms or datastructures can save you a factor of 1000 or more. How much profiling do you do?
- dirtydroog 6y agoLook at the networking sourc code for Redis. It meets all your requirements and isn't that big.