3 ms·
When I first saw a whole stack of low latency C++ Win32 based servers running on Windows supporting an interest rate trading business back in 2004 I was amazed.
by osullivj 11y ago
When I first saw a whole stack of low latency C++ Win32 based servers running on Windows supporting an interest rate trading business back in 2004 I was amazed. Talarian SmartSockets was used for interprocess pub/sub between servers. There was no COM. No thread pools, just a handful of threads in each process executing distinct code. Very clean async design. Back then Linux didn't have lightweight threads, IIRC. I think this is the kind of thing Windows Nano might support. Is that what you had in mind when you look forward to Windows as a server OS?
- pjmlp 11y agoWindows IO completion ports and the way threads are scheduled are probably only beaten by Solaris and Aix specific APIs. Most FOSS devs never care to learn such APIs and stay with the lowest common denominator that happens to exist in GNU/Linux and *BSD.
- anon4 11y agoDo you think this will change with the popularity of node.js and libuv? That is, people using said capabilities in a cross-platform manner more.
- pjmlp 11y agoI doubt it. On the enterprise space from our customers, no one cares about them. It is all about .NET, C++ and additionally the JVM when going outside Windows.
- trentnelson 11y ago> are probably only beaten by Solaris and Aix specific APIs. They're definitely not. AIX copied the IOCP interface almost verbatim, but missed one critical piece: associating an IOCP with a desired concurrency level. Solaris added event ports, but again, they missed the concurrency link too. The root of the problem on UNIX is the readiness I/O model. See https://speakerdeck.com/trent/pyparallel-how-we-removed-the-gil-and-exploited-all-cores?slide=47 https://speakerdeck.com/trent/pyparallel-how-we-removed-the-... for more info.
- pjmlp 11y agoThanks for the heads up. It's been a decade since I touched Solaris and Aix.
- trentnelson 11y agoYou should see what you can do today with Registered I/O and the new threadpool APIs. It is phenomenal. (And literally decades ahead of anything UNIX offers. OS X comes close with GCD.)
- pjmlp 11y agoI am aware of it. Even though I used UNIX a lot on my career, I have always been with foots on both lands and enjoyed Win32 more than POSIX, claimed as portable, but full of nuaces per UNIX clone.