3. Scaling applications Scale-out Web app Business Logic Framework Framework JVM Web app Business Logic Framework Framework JVM Web app Business Logic Framework Framework JVM Database For Stateless applications In order for these servers to work in a clustered fashion a developer has to concentrate on how to integrate them and learn the apis and consider the infrastructure things. Also there is learning curve involved.
4.
5. Enter Terracotta Scale-out Web app Business Logic Framework Framework Web app Business Logic Framework Framework Web app Business Logic Framework Framework JVM JVM JVM Terracotta JVM JVM JVM
6.
7. Logical Model Application Instance Application Instance Application Instance Terracotta Process JVM JVM JVM
Virtualization takes physical machine and slices them into logical chunks so it does exact inverse of virtualization. JVM-level clustering provides an ambience which is simple,scalable and highly available. NAM enables Terracotta to cluster Java Virtual Machines (JVMs) directly underneath applications, and is a proven runtime approach to providing Java applications both high availability and scalability. Transparency does not mean that TC works for everything and its invisible and does not require code change but it means that freedom and purity of design. Clustering service move clustering from architecture concept to a service on which applications can
Example directory and file remotely. Clients is completely transparent of whether its doing changes on local file or remote file.
1) Caching inside the application's memory is po ssible through terracotta's transparency. This significantly lessens the workload from terracotta server. 2) Terrcotta stores the object's fields near each others and since tarracotta reads entire disk block in one disk I/O operation. 3) Since tarracotta writes in batches so if multiple objects change their changes are written together to the disk.