Cloud services, such as Amazon EC2, have helped bring virtualization to the forefront of the IT conversation. Its full power however, also includes benefits such as high availability, disaster recovery, and rapid application provisioning. In this article, Contegix CEO Matthew Porter, discusses how virtualization can be used to bring these benefits to enterprise and Saas deployments.
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.
One of the most exciting things in Java right now is the work being done to get other programming languages onto the JVM. If you want to try something very different from Java, Lisp is a great option. 12
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. 3
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
"Ruby has no debugger" - this misconception has stuck around for ages. Time to eradicate it: Ruby does indeed have powerful debugging support. We look at what's available for all Ruby implementations.
Simon Ritter explains the vision and capabilities of the Real-Time Java specification (RTSJ), which will bring guaranteed response times regardless of GC. 3
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
Orion Letizi goes in-depth on OpenTerracotta, an open-source JVM-level clustering solution that can cluster single-jvm apps with no code changes. 10
Using both the JVM and the CLR inside the same operating system process is a relatively trivial matter, since any process is capable of loading just about any shared library. Ted Neward shows how. 2