Rails 2.2 is schedule to be thread safe - but will blocking I/O libraries make it necessary to run multiple Ruby instances? We take a look at how non-blocking I/O and Ruby 1.9's Fibers help solve the problem. We talked to Mohammad A. Ali of the NeverBlock project and Tony Arcieri of the Revactor project.
Features like biased locking, lock coarsening, lock elision by escape analysis and adaptive spin locking are all designed to increase concurrency by allowing more effective sharing amongst application threads. But do they actually work? In this two part article, Jeroen Borgers explores these features and attempt to answer the performance question with the aid of a single threaded benchmark.
Jeroen Borgers examines if biased locking, lock coarsening, lock elision by escape analysis and adaptive spin locking techniques in the latest JVMs actually work in highly-concurrent apps. 16
Simon Brown distills some key scalability principles derived from a summit of architects and adds his own perspectives. 7
Concurrency, Actors, Fibers/Coroutines, Rubinius' Multi-VM, and more - a lot of interesting topics. We caught up with Ruby's MenTaLguY who can shed light about all of them. 1
Finding performance bottlenecks can be a difficult task and it can get more difficult as our applications grow in size. The Box is a methodology tool that focuses us efforts to improve performance. 6