Bruno's Journal


yet another triathlete CTO

Facebook BigPipe in an Async Servlet

Since Subbu wrote BigPipe using node.js, I had to see how the same thing would look like in a Java async servlet.


On Scaling node.js to Multiple Cores

From a thread on multicore leverage in nodejs, Edwin Khodabakchian talking about feedly:


Nodes and Jetties

I am intrigued by node.js. Others are not so much. So they ask me, why node.js, why not Jetty, or Netty, or … ? Others say, and Twisted, and EventMachine? The core of the answer lies in a simple not well understood truth: concurrent programming is really hard. Concurrent programming using threads and locks to shared memory is extremely hard. Most programmers get concurrency wrong, since they don’t quite realize that threads actually execute simultaneously.


Why node.js Matters

Since the days when I coded my first reactor [POSA2] back at MIT, I have been convinced of the conceptual simplicity of non-blocking event driven server. Aside not blocking for I/O and being able to scale well beyond polling architectures, it is harder, sometimes impossible, to make concurrent programming mistakes with an event-driven programming paradigm. However, reactor servers never took off massively, probably because event based programming of server-side applications is a more complex programming paradigm for the average programmer than a thread- or process-per-request. In in a way, we have had not enough pressure to move, yet. Things would just work, reasonable well.


Autonomy, Mastery, Purpose

</embed>