Home

News: Terracotta Virtualization Server 1.1 Now Available

  1. Terracotta Virtualization Server (TVS) version 1.1 is now available and free for development use. See it's introductory post on TSS for more information.

    Terracotta's technology eliminates I/O bottlenecks without any proprietary API's at all - providing the first true transparent clustering and caching solution for Java today.

    TVS is composed of two components:

    1) DSO (Distributed Shared Objects): This solution allows an application written for a single JVM to be transparently clustered to multiple JVM's without any programming - no API's, no Terracotta imports - true transparent clustering.

    2) HA-JDBC: This solution wraps the native JDBC driver and provides a coherent cache of the system of record both locally (in process), as well as in a separate "L2" server, which functions as a hub in a hub and spoke architecture.

    Please download it and try it out - let us know what you think.
  2. We have an OLTP application with realtime requirements. We use JBoss and need failover. But our architect rejects JBoss's JCache and JGroups because of the presumed drag that redundacy puts on normal operation. Does anyone know of any benchmark results that show how much extra CPU or network load is imposed on normal operation by a cluster framework such as Terracotta, Coherence, JCache, JGroups, GridGain, etc?
  3. We have an OLTP application with realtime requirements. We use JBoss and need failover. But our architect rejects JBoss's JCache and JGroups because of the presumed drag that redundacy puts on normal operation. Does anyone know of any benchmark results that show how much extra CPU or network load is imposed on normal operation by a cluster framework such as Terracotta, Coherence, JCache, JGroups, GridGain, etc?

    Presumed drag? Your architect hasn't tested it? Of course, it will cause some degredation in performance but unless he knows how much and then compares that against your comfort threshold for performance slowdown it's sort of just saying "I don't like it because it's blue." Benchmarks don't necessarily work either because they won't be accurate against the performance affect it will have on your application.
  4. JBossCache and tuning[ Go to top ]

    In the end, nothing beats actually trying out a product for your application. That is what will tell you whether performance figures, etc. fall within an acceptable threshhold.

    One must also keep in mind that with feature-rich products like JBossCache there is quite a lot of tuning that can be done, which can drastically change performance figures. Reading the JBossCache and JGroups documentation and playing with configs is something one would have to expect to do to make the most of JBossCache.
  5. Exciting![ Go to top ]

    I hope Terracota works well, and it is bug free. It attacks quite a sophisticated task, so I hope it is well implemented.

    I was looking for a while for a JVM clustering solution - this may be it. I will definitely give it a try.

    If someone has similar solution to recommend please do so.
  6. Exciting! - Indeed...[ Go to top ]

    It was great to see the virtualization space grow so much and get that much attention at JavaOne. In fact, this was - I believe - the first time that a Java virtualization product received the highest stamp of approval by SUN giving GigaSpaces Enterprise Application Grid the "Duke's Choice Award" :) [http://www.gigaspaces.com/news2005_07.htm].
    I haven't had a chance to check out the TerraCotta solution yet. But if you are looking for a Java Caching/HA solution - this thread should provide you with some good ideas on where to start. In addition to TerraCotta, TangoSol and GridGain, The GigaSpaces EAG is also an option I encourage you to look at.

    Cheers,
    Gad Barnea
    GigaSpaces
  7. drag on operation[ Go to top ]

    We have an OLTP application with realtime requirements. We use JBoss and need failover. But our architect rejects JBoss's JCache and JGroups because of the presumed drag that redundacy puts on normal operation.

    First, if you need true HA with instant lossless failover, then you need to accept that there will be some latency cost per operation compared to an optimized non-HA solution.

    I can't speak to JBossCache or JGroups, but in my experience and depending on the app, you may find that the results are significantly better being performed in a scale-out cluster than in the alternatives. For example, by moving load from an over-taxed database server into a J2EE cluster, one of our reference accounts dropped their database utilization by 80%, and the effect on the J2EE cluster was a reduction in CPU utilization of 40%, with a net decrease in latency of over one second per transaction.

    I haven't had a chance to see this new Terracotta product yet, but any way you look at it, this Java/J2EE market is pretty exciting. There are a number of solutions available for various scale-out and HA challenges .. so if you're the IT manager or CTO or architect that had the vision to pick Java 5 or 10 years ago for your mission-critical infrastructure, you're probably feeling pretty good.

    Peace,

    Cameron Purdy
    Tangosol Coherence: Clustered Shared Memory for Java
  8. drag on operation[ Go to top ]

    First, if you need true HA with instant lossless failover, then you need to accept that there will be some latency cost per operation compared to an optimized non-HA solution.

    Our requirements are that failover can be slow, but normal operation must be minimally degraded. I believe these to be the most common requirements of enterprise failover, regardless of whether it's a high-throughput application such as ours.
  9. drag on operation[ Go to top ]

    Brian,
    You are correct - these are very common requirements for enterprise applications. As Cameron said, Instant & lossless failover will require acceptance of some level of latency. These are 2 parameters that whatever solution you end up using should allow you to configure as to what amount of 'loss' is acceptable (persistence synchronicity level) and how immediate the failover transfer of control should be.
    If the 'instant' portion of the equation is not critical and full (100%) persistence synchronicity (i.e. NO data loss) isn't either, you should be able to achieve throughput levels that are comparable to 'normal operation'.
    I can't speak for the other products, but with GigaSpaces EAG, there are architectural solutions (i.e. configuration options) that allow 'normal operation' throughput levels with instant failover and very high levels of synchronicity.

    What level of synchronicity would you need?

    Gad Barnea,
    GigaSpaces
  10. drag on operation[ Go to top ]

    We have a fault tolerant mode where things are in Active / Standby. (Some competitive solutions can do this too...I am sure they will all speak up and point that out for us here.) In our case there is no configuration required. If you virtualize an app using Terracotta Virtualization Server, a 2nd node can always pick up where the 1st left off without actually replicating the data to that 2nd node. This is no magic...the simple explanation is that the <bold>true</bold> 2nd node for apps based on Terracotta is the Virtualization Server itself.

    So how does this help you? Well, a 3rd, 4th or nth node can do exactly the same. In other words, clustering in an Active / Hot-standby mode is of fixed cost w/ Terracotta, no matter how many hot standby's you need. Moreoever, if you decided to go from Active / Hot to Active / Active, you could do so without stopping the app or rewriting or reconfiguring anything. The difference between Active / Active and Active / Passive for us is whether or not you send workload to all nodes or only one. The "virtualization" part of "virtualization server" makes sure objects are materialized only on JVMs that actively need those objects.


    See my other post for how to get access to third-party analysis of our performance impact on applications (coming soon).
  11. We have an OLTP application with realtime requirements. We use JBoss and need failover. But our architect rejects JBoss's JCache and JGroups because of the presumed drag that redundacy puts on normal operation. Does anyone know of any benchmark results that show how much extra CPU or network load is imposed on normal operation by a cluster framework such as Terracotta, Coherence, JCache, JGroups, GridGain, etc?
    Hi Brian,
    If you have a real real-time requirements (guaranteed QoS) you may be in a tough situation with Java. If you, as I suspect, have so-called near real-time requirements then as it was mentioned before you will always encounter some delays just by design.

    I am pretty much know what I would recommend but I would say that practically any vendor out there will be glad to do a POC to help with benchmarking... and that's what I would recommend to do.

    Nikita,
    GridGain Systems.
  12. If you, as I suspect, have so-called near real-time requirements then as it was mentioned before you will always encounter some delays just by design.

    Yes. So my question is: which cluster library puts the least drag on normal operation for simple active/backup failover (ie, a cluster of only two computers)? Our architect hand codes failover, and I'd like to call his attention to the most streamlined kit available. Is the cluster software industry's answer that every shop must do its own benchmarking, even for simple failover needs?
  13. Is the cluster software industry's answer that every shop must do its own benchmarking, even for simple failover needs?

    Failover needs are rarely simple in business-critical applications. I'm sure every vendor mentioned in this thread can provide you with a benchmark privately (I'll be happy to send you one, if you want - email me at gad at gigaspaces dot com). In fact, product comes with a built-in point-and-click GUI-based benchmarking utility that allows you to quickly benchmark many types of configurations without writing any code.

    Hope this helps.

    Gad Barnea
    GigaSpaces
  14. Is the cluster software industry's answer that every shop must do its own benchmarking, even for simple failover needs?
    Failover needs are rarely simple in business-critical applications. I'm sure every vendor mentioned in this thread can provide you with a benchmark privately (I'll be happy to send you one, if you want - email me at gad at gigaspaces dot com). In fact, product comes with a built-in point-and-click GUI-based benchmarking utility that allows you to quickly benchmark many types of configurations without writing any code. Hope this helps. Gad Barnea GigaSpaces

    Actually, most vendors cannot safely publish the impact to industry-standard benchmarks because the tests clearly state that no one can edit the source code in order to make the test work on a different platform or in a different way--the Spec folks reasonably do not want to lessen the relevancy of the Spec numbers. And, most vendors in this space are not "plug-configure-play" in the purest sense.

    Terracotta is actively supporting third party organizations who will shortly publish or seek to publish the impact (good or bad) we have on the industry-standard specs. You should have the answers you are seeking, for our software, shortly. Contact Bob Griswold directly (he posted this article) for more info.
  15. We have an OLTP application with realtime requirements. We use JBoss and need failover. But our architect rejects JBoss's JCache and JGroups because of the presumed drag that redundacy puts on normal operation. Does anyone know of any benchmark results that show how much extra CPU or network load is imposed on normal operation by a cluster framework such as Terracotta, Coherence, JCache, JGroups, GridGain, etc?

    What does your workload look like, and what's the maximum latency you can take?

    Guglielmo
  16. Terracotta Download Site[ Go to top ]

    The Terracotta Virtualization Server can be downloaded from our website at: http://www.terracottatech.com

    Please give it a try and let us know what you think!
  17. Congratulations Bob. I'm not sure if everyone here is aware of this but I know persons such as yourself and Don Ferguson were really pioneers of clustering technology with WebLogic. I am looking forward to seeing the product and feel certain that it will be worthy of recommending it to clients.

    John Harby
    JMH Solutions
    http://www.jmhsolutions.com