Ruby.rewrite(Ruby)
In this RubyFringe talk, Reginald Braithwaite writes Ruby code to read, write, and rewrite Ruby. Demos include extending Ruby with conditional expressions, call-by-name and more.
- Ruby,
Tracking change and innovation in the enterprise software development community
Posted by Srini Penchikala on Apr 23, 2008 11:30 AM
The latest version of Terracotta, an open source JVM clustering framework, includes new features like cluster visualization tools and official support for Tomcat 6 platform. Terracotta team announced on Monday, the general availability of version 2.6 of the product which also includes performance improvements in several common use-cases.
The cluster visualization and monitoring tool suite provides a view of the overall health and performance of application clusters. Operators and developers can use these tools to monitor application performance metrics like CPU usage, network and disk activity, Terracotta statistics, object change rates and garbage collection cycles. These tools include Cluster Visualization and Snapshot Visualization run-time graphs which are stored in a database for offline view at a later time. The snapshots are viewed using lock profiler in Terracotta administration console to find deadlocks and other locking hotspots in the application code.
Ari Zilka, Terracotta's CTO, recently wrote a blog entry explaining more about the visualization tools and lock profiler. He explained the profiler tool features and how to use it to diagnose runtime performance hotspots.
Terracotta's support for Tomcat includes clustering of session and application data in web applications running on the popular open source servlet container. Other new feature in Terracotta 2.6 is the addition of new projects to their Forge Project site which now includes EHCache and Hibernate integrations. These two frameworks were previously available in the core Terracotta kit. Forge project site provides a common place for Terracotta development team and community members to collaborate on Terracotta specific integrations and projects and communicate about resolution of any defects. Terracotta Integration Module allows sets of configuration elements and supporting Java classes to be packaged together as a single module within the Terracotta configuration.
InfoQ spoke with Terracotta team about new features in the latest version. Regarding the details of cluster visualization and management tools included in the new release, they said:
The cluster visualization feature is about tuning and visibility into your application. The visualization tools are broken out into runtime statistics that you can see in real-time in addition to a statistics recorder that you can use to gather further statistics for offline processing in a special dashboard. The runtime statistics include: Java Heap, System CPU, Terracotta Transactions, Terracotta Flush and Fault Rate. In addition, there are more than 30 statistics that can be recorded, including CPU, Disk, Network, Heap, Thread Dumps, Terracotta Queue Depths and more.
You can now use the Administration Console to take and view thread dumps on all the JVMs in the cluster. Taking a series of them gives you visibility into what the threads across the cluster are doing. You can also use the Administration Console to dynamically adjust log levels on remote JVMs and to eject JVMs from the cluster for easier debugging.
Responding to a question on performance improvements, the team explained the motivation behind these improvements and how they went about accomplishing them.
The performance improvements are targeted for specific common use-cases such as iteration in tight loops while filling a cache; automatic string compression and support for interned strings; as well as general read/write performance improvements.
We have built a workload modeling platform to simulate the use cases that we find in our customers' applications. This modeling platform allows us to quickly create performance tests around specific code patterns that we find in the real world and pull them into our automated continuous integration and test suite. This allows us to establish performance baselines from which to extract performance improvements along specific vectors and, more importantly, to continually monitor performance from release to release to ensure there are no performance regressions.
InfoQ asked about the future roadmap of Terracotta product in terms of new features and enhancements.
A big part of 2008 for Terracotta is the development of a runtime dashboard that will provide application visibility, control, and SLA policy management including:
- Server striping and mirroring for extreme scalability
- Historical analysis (think Google Analytics for your application)
- Automated snapshots
- Application message center
- Push-button deployment
- SLA-driven deployment (deploy on demand)
- Assisted upgrades (rolling upgrades, automated software deployment)
In other news, Terracotta announced that they are bundling Hyperic SIGAR (System Information Gatherer and Reporter) with Terracotta version 2.6, to obtain key operating system and hardware information. SIGAR, part of Hyperic HQ management platform, provides services like auto-inventory, monitoring, login tracking, control and remote diagnostics.
Gnip Case Study: Reliable and Scalable Access to Massive Data Streams from Multiple Sources
Terracotta 10x Faster Than Oracle Coherence
Hibernate without Database Bottlenecks
Why Should I Care About Terracotta?
Terracotta 2.7 Download now for scalability without tradeoffs
Terracotta is Scalability and Availability for Java Applications. It clusters the JVM itself, which dramatically simplifies development and reduces database dependency.
Metering the Grid
blog.jinspired.com/?p=239
Most importantly a standard approach and product for all different grid/soa/javaee platforms.
Kind regards,
William
Metering the Grid
blog.jinspired.com/?p=239
Most importantly a standard approach and product for all different grid/soa/javaee platforms.
William
Way to go! Very good and steady progress. And it's very nice to know about the roadmap.
In this RubyFringe talk, Reginald Braithwaite writes Ruby code to read, write, and rewrite Ruby. Demos include extending Ruby with conditional expressions, call-by-name and more.
Aptana RadRails: An IDE for Rails Development by Javier Ramírez discusses the latest Aptana RadRails IDE, a development environment for creating Ruby on Rails applications.
Cliff Click discusses how to optimize generated bytecode for running on the JVM. Click analyzes and reports on several JVM languages and shows several places where they could increase performance.
Scott Ambler, Practice Lead for Agile Development at IBM, speaks on the current status of the Agile community and practices having a look at the perspective of the Agile’s future.
Dave Nicolette and Karl Scotland try to introduce non-technical managers to one of the most popular Agile development techniques: Test-Driven Development (TDD).
Smooks is best known for its transformation capabilities, but in this article Tom Fennelly describes how you can also use it for structured event streaming.
Successful architectures evolve over time to meet changing business requirements. Luke Hohmann presents how to collaborate with key members of your business to manage architectural changes.
In this article, Dr. Tobias Komischke explains how colors used in a GUI can influence our interaction with a computer and offers advice on using the appropriate colors for the interface.
3 comments
Reply