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
Speaking at NFJS Europe : "Cutting-edge productivity with RIFE and Web Continuations"

I'm speaking at NFJS in London at the end of this month about RIFE and 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 about Terracotta in the real-world.

Cutting-edge productivity with RIFE and Web Continuations

RIFE is a full-stack, open-source Java web application framework, offering fast results with the promise of maintainability and code clarity. This session will review the novel ideas in Java web application development that RIFE has introduced to the development community.

Through a real-world demonstration of the development process with RIFE, learn how RIFE makes developing easier with features such as: instant reloads and centralized declarations, meta programming through constraints and meta data merging, run-time POJO-driven CRUD generation, bi-directional logic-less templates, automatic context-aware components, and the integration of a content management framework.

The second part will focus on state management, which has always been a complex and tricky part of web application development. Native Java web continuations simplify this and automatically allow you to create a one-to-one conversation between users and a web application. State preservation and flow control no longer need to be handled manually, bringing you back to the simplicity of single user console applications. Remember 'scanf()'?

Continuations will be introduced from general principles, followed by practical examples that explain how they benefit web application development and their frequent usage patterns. Finally, automatic and non-intrusive fail-over and scalability will be demonstrated through the integration with Terracotta.

posted by Geert Bevin in RIFE on Aug 9, 2007 8:46 PM : 1 comment [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]
 
Artima article : Distributed Web Continuations with RIFE and Terracotta

In this article, Jonas Bonér and me discuss how the RIFE Web framework helps you become productive and efficient in building conversational Web applications. Productivity with RIFE is in large part due to RIFE's unique approach to Web development—its use of continuations for conversational logic, and complete integration of meta-programming to minimize boilerplate code.

We also introduce you to Terracotta and it's JVM-level clustering technology, and show you how Terracotta and RIFE can work together to create an application stack that allows you to scale out and ensure high-availability for your applications, but without sacrificing simplicity and productivity. This means working with POJOs, and minimal boilerplate and infrastructure code.

You can read it at Artima.

posted by Geert Bevin in RIFE on Aug 8, 2007 8:23 PM : 0 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