InfoQ Homepage Performance & Scalability Content on InfoQ
-
NewRelic Offers Free Rails Monitoring, Adds New Features
NewRelic now offers their Rails performance monitoring (RPM) Lite product free of charge for all Rails users. A host of new features were added to the various commercial versions of RPM.
-
Fibers Roundup: NeverBlock Now Rails Compatible, "Poor Man's" Fibers For 1.8
NeverBlock released a new version of their library - this time with support for Rails and Ruby 1.8. The 1.8 support uses Amun Gupta's "Poor Man's" Fiber code which implements Fibers using Threads.
-
Interview: Pervasive's Jim Falgout on Multi Core Programming and Data Flow
InfoQ sat down recently with Pervasive architect Jim Falgout to discuss Data Rush and the data flow concept.
-
Coverity Readiness Manager Brings Quick Visibility to Code Characteristics
Coverity recently released Readiness Manager for Java providing a dashboard and analysis for code complexity, violation of best practices, architectural integrity, interdependencies, and test coverage.
-
Article: Using Ruby Fibers for Async I/O: NeverBlock and Revactor
Ruby 1.9's Fibers and non-blocking I/O are getting more attention - we talked to Mohammad A. Ali of the NeverBlock project (which provides support for MySQL and PostgreSQL) and Tony Arcieri of the Revactor project.
-
JRuby Roundup: RCov Port Available, Ribs For Hibernate Support, Parser Stats
A port of the popular code coverage tool rcov is now available for JRuby. Ola Bini started a Hibernate-based library for persisting Ruby objects named Ribs. And finally, JRuby trunk contains a new MBean for analysing parse times.
-
Dynamic Invocation Runs on OpenJDK
John Rose, a Hotspot VM developer at Sun, has announced the first successful execution of the 'invokedynamic' instruction on the OpenJDK VM. Dynamic invocation is an important feature for adapting dynamic languages to the JVM.
-
Second Life is Deploying Mono-based Servers
The popular virtual world Second Life relies heavily on user-created scripts. These scripts are written in a proprietary language called LSL and run on their servers. In order to improve performance they are deploying the Mono runtime in Second Life's 1.24 servers.
-
Rails Roundup: Rails 2.2 Will Be Threadsafe, ETags Support in Rails Edge
Work is going on to make Rails 2.2 be thread safe - we look at what's been done. Also: ETags support has been added to Rails Edge.
-
Article: Scalability Worst Practices
In this article, former Orbitz lead architect Brian Zimmer discusses scalability worst pratices. Topics covered include The Golden Hammer, Resource Abuse, Big Ball of Mud, Dependency Management, Timeouts, Hero Pattern, Not Automating, and Monitoring.
-
An in-depth overview of modern Application Performance Management
Nicholas Whitehead, a Senior Technology Architect with ADP, published a three part article series on IBM's developerWorks entitled Java run-time monitoring that reviews, in detail, the strategies employed in modern Application Performance Management (APM) solutions.
-
JRuby Roundup: Java Integration and Debugging (JSR-45) Improvements
Some recent changes on the JRuby trunk improve Java Integration, which allows JRuby to interact with pure Java code faster and more conveniently. Also: Ruby code compiled with JRuby's (JIT) compiler can now make use of the JVMs debugging capabilities using JSR-45 (Debugging Support for Other Languages).
-
Enumerating Concurrent Collections
Continuing our series on parallel programming and collections, we now turn to the problem of enumerating mutable collections. With so many options available, picking the right semantics is hard, so Stephen Toub of the Parallel Extensions team is asking for feedback.
-
The Challenges in Java Benchmarking
Brent Boyer posted an article on IBM's DeveloperWorks that discusses the challenges in Java benchmarking and introduces a Java benchmarking framework.
-
Presentation: The Top 10 Ways to Botch Enterprise Java Application Scalability and Reliability
In this presentation, Cameron Purdy discusses Java scaling. Topics include performance improvement versus scaling improvement, serial bottlenecks, queue theory, rewriting existing frameworks, avoiding the database, single points of failure, avoiding abstractions, disaster recovery, one-size-fits-all architecture, large JVM heaps, network failures, and trusting product claims.