News and Thoughts from the WebSphere Extended Deployment Senior Architecture Team
Today, applications basically have two choices for application state. JVM only which means that if the JVM terminates then this state is lost and in a database which means that the state can survive termination. The fact that there are only 2 choices ties the hands of developers. JVM only is very cheap but offers no persistence at all. Many customers are using this because the cost of 'persisting' this state is too high for the application. Database based state is basically as permanent as you can get but it relatively expensive. As the application scales horizontally then the load on the database increases. If you want to scale a database then usually that means more CPUS, faster disks and more database licenses.
Many times applications need persistent state but it doesn't need to be as reliable as database persistent. They want a cheaper option which is less durable but still adequate for the application. They basically want persistence choices that offer them a variable cost/performance curve for different levels of persistence.
ObjectGrid can offer such applications additional choices. ObjectGrid can act as a state container for an application and provide the following qualities of service for persistence (this is a subset):
If the remote state server becomes a bottleneck then we can partition it on to multiple servers to scale it. Each partition can, of course, be replicated for additional fault tolerance. The cost of scaling this remote state server is significantly cheaper than the cost of scaling a database, it's CPU/memory/network and an ObjectGrid license.
I'm not suggesting here that all application state such as bank accounts be stored in an objectgrid. I'm just saying that there are frequently other types of data which don't need to be stored to disk but still needs to be made highly available in a cost effective way. ObjectGrid can help meet these requirements and offer customers additional persistence choices outside the current ones that was none and a database.[Read More]