In addition to the functional requirements of any application, a good architect must satisfy the quality attributes requirements, also known as non-functional requirements. It's his/her duty to step up and understand the problems related to one of these non-functional requirements, before attempting to solve them.
When designing an application to fit any of the non-functional requirements, you will need to understand and make trade-offs between these requirements. But, that's not the only problem; today, a vast array of platforms, languages, and tools are available to build high-end applications that support large-scale business needs and appeal to a large number of people. While building an application is a relatively straightforward task for an application developer, building an application that can scale and scale well is often quite difficult. Infinispan specially addresses performance and scalability requirements.
In this chapter, we are going to explain...