Navigation

RSS 2.0 New Entries Syndication Feed Atom 0.3 New Entries Syndication Feed

Show blog menu v

 

General

Use it

Documentation

Support

Sibling projects

RIFE powered

Valid XHTML 1.0 Transitional

Valid CSS!

Blogs : Latest entries

avatar
Terracotta lightning talk at Fosdem 2008
The yearly open-source Fosdem conference takes place again in Brussels on February the 23rd and the 24th.

I'm giving a 15 minute lightning talk about Terracotta on Saturday the 23rd at 15h40. Given the available time, I will not be able to say much and will just try to wet everybody's appetite. I'll stick around for a while afterwards to answer question and give demos and such.

You can find the details here:
http://fosdem.org/2008/schedule/events/456

Looking forward to the conference and catching up with everyone in real life :-)

posted by Geert Bevin in Terracotta on Feb 15, 2008 11:09 AM : 0 comments [permalink]
 
Profiling Terracotta clients with YourKit is dead easy

While tracking down some performance characteristics of the ConcurrentHashMap class with Terracotta, I decided to run it through the YourKit profiler.

I remember that a while ago, someone on the Terracotta mailing list was having difficulties profiling client applications since we instrument the JDK classes through a bootjar. I thus expected to run into problems with YourKit. To my surprise I didn't experience a single one. Following the instructions on the YourKit website to manually enable profiling, did exactly what was expected and I was thus able to get all the information I wanted.

As an example, this is similar to the command line that I executed:

java -agentlib:yjpagent=sampling,onexit=snapshot
    -cp /path/to/project/classes
    -Dtc.install-root=$TC_INSTALL_DIR
    -Xbootclasspath/p:$TC_INSTALL_DIR/lib/dso-boot/dso-boot-hotspot_linux_160_02.jar
    -Dtc.config=tc-config.xml
    com.MyMainClass

Just thought that this might be helpful to know ;)

posted by Geert Bevin in Terracotta on Oct 25, 2007 12:17 PM : 0 comments [permalink]
 
Speaking at NFJS Europe : "Exploring Terracotta - JVM clustering in the real world"

I'm speaking at NFJS in London at the end of this month about Terracotta. You can find the abstract of my session quoted below. The schedule looks very interesting and I'm excited that NFJS is finally taking place in Europe too.

If you're interested in going, you might want to click on the banner to the right or to use the promotion code NFJS-RIF660. This will give you a free Nintendo Wii with your registration (woohooo, I love my Wii!).

See you at NFJS Europe.

I also have another session continuations, RIFE and Terracotta.

Exploring Terracotta : JVM clustering in the real world

Terracotta provides open-source clustering for Java and removes the burden from the developer. Instead of having to design and code against a specific API, the characteristics of the Java Memory Model (wait, lock, notify) are automatically translated towards a multiple node architecture. This clustering solution guarantees proper handling of concurrency, fail-over, distributed method invocation and efficient state propagation by simply instrumenting your Java bytecode and providing you with Network Attached Memory. This is however so generic that it's sometimes difficult realize which use-cases can benefit from it.

This presentation introduces the basic principles of Terracotta and explains how to configure and integrate it into your application. Afterwards, we'll go through a collection of real-world examples that all benefit from JVM-level clustering. These include: serialization-less HTTP session clustering, fine-grained distributed caches, workload distribution through master-worker, shared state and events between server and desktop tiers, clustered Spring and other OSS frameworks ... and more.

Garbage collection made the JVM responsible for memory management. Take the plunge and experience how Terracotta does the same for clustering.

posted by Geert Bevin in Terracotta on Aug 9, 2007 8:39 PM : 2 comments [permalink]
 
Clustered Drupal through Quercus, Terracotta and Ehcache

Caucho created an impressive Java implementation of PHP that runs in Resin, called Quercus.

I regularly hear people complain about the scalability of Drupal on PHP and after looking at the layer cache implementation, it seems that they use the database as a cache. This is understandable since short of using memcached, PHP doesn't support preserving object state across requests. However, tunneling everything through the database is bound to create a bottleneck.

Quercus has a neat module system that allows the creation of PHP functions in Java. So I wondered if I could use Terracotta together with Ehcache to replace Drupal's caching system with a more scalable solution.

After some tinkering and experimenting I got it to work. I did have to resort to some ugly hacks, since Terracotta doesn't officially support Resin yet (they inject their own system classloader which doesn't play well with how we do stuff). I also didn't do any performance tests, nor went through all the Drupal features to check if everything still worked.

I think this prototype is very interesting though, since it gives a glimpse of what is possible nowadays in the Java world when creating 'technology mash-ups' (for the lack up a better term). Who would have thought a year ago that you would be able to improve the scalability of a PHP CMS by using JVM-level clustering, makes my mind spin if I think about it.

If you want to try this out for yourself, I posted detailed instructions on our wiki. I'm interested in knowing what your findings are and if you have any improvements to what I did, please reach out and let me know.

posted by Geert Bevin in Terracotta on Aug 1, 2007 2:54 PM : 14 comments [permalink]
 

 
 
 
Google
rifers.org web