Terracotta has announced the release of Terracotta 3.0, adding a new operations center, a very nice developer console that shows you the health and performance of your cluster, and adding many new certified platforms. Terracotta provides a distributed object heap, where you specify a set of instances and class types as being shared among various JVMs. The client connects to a DSO server in a form of hub and spoke network architecture, and any changes to the shared objects get propagated to every other participating client JVM. The servers can be striped and can also manage hot failover between primaries and backups. The developer console looks particularly nice, showing heap and runtime statistics information, as well as diagnostics covering your cluster performance. DSO comes in an "ES" edition, which is OSS and lacks some of the more sophisticated networking capabilities, and also has commercial versions which provide access to the full feature set. See What's New In Terracotta 3.0 for more information.
- Posted by: Joseph Ottinger
- Posted on: April 16 2009 14:08 EDT
- Re: Terracotta Distributed Shared Objects 3.0 released by Jose Maria Arranz on April 17 2009 03:23 EDT
- Re: Terracotta Distributed Shared Objects 3.0 released by ARI ZILKA on April 18 2009 11:58 EDT
I'm praying Google to support sticky sessions in Google App Engine (GAE). GAE only supports replicated sessions and this is a serious problem for AJAX intensive server centric frameworks, because the state in server may be really complex. Transmitting the whole object tree in server in serialized form to the distributed sessions when something changes in a concrete server instance, is a really really bad idea. The other option is to define a granular mechanism to propagate small changes, achieving this objective deeply pollutes the source code of the framework, unless you use an AOP approach... Then Terracotta comes to us to save world with this kind of solution :) I've not tried Terracotta but I know the power of AOP and bytecode enhancement because I'm using it in a product of mine (JNIEasy). In fact Google is already using bytecode enhancement in GAE with DataNucleus. Please Google please, add Terracotta to GAE if you don't want to add sticky sessions. Of course including both options is better :)
Please Google please, add Terracotta to GAE if you don't want to add sticky sessions. Of course including both options is better :)Jose, Thanks for urging Google to pay attention to the reality of Java apps out there. As I understand it, they don't allow threads nor do they allow socket connections. Instead they give you a memcache-style API to bigtable or something--haven't looked too closely. Anyways, if they want to compete with EC2 and allow Java developers to build "real" apps, they will have to change their thinking. Specifically, most apps contain: Spring; Hibernate; Tomcat or Jetty or Glassfish; and a relational DB like Oracle or MySQL or Postgres. Terracotta's job is to get inside that stack sandwich and make it all faster and cheaper to run by offloading the db by 70% or more. But Google is pushing for their own stack design which never was bottlenecked by a database. Makes sense for them...this is what they are best at. Just makes less sense for the rest of us, IMO. We'll see how it plays out over time :) Cheers, --Ari