Scalability is a highly sensitive issue for most hosted applications. However if one follows the right architecture and other considerations from the beginning, you will have not to worry about this aspect later on. This session aims to cover some scalability and load distribution considerations we followed while developing application which had to scale to a million users.
This session on Scalability Considerations In Java was presented at 6th Annual IndicThreads.com Conference On Java, December 2011, Pune, India.
It will cover the following considerations:
- Restful Architecture: Heart of horizontal scalability and distributed application.
- Stateless UI: No need to do extra configuration if you do follow simple guideline
- MySQL master/slave replication: Use it to maximum
- Separate read and write layer: Divide and Rule.
- Distribution of load: In horizontal scaling how you can distribute load across your nodes/server. This applies specifically to daemon processes running in background to perform some CPU intensive processes (like data mining) or some low priority non-real time processes (like sending some (non-critical) notifications to users) or batch processing.
- DB sharing: Idea is to divide data physically so that each cluster should have its own users data
The talk will discuss learning from a system GSLab built using java/j2ee technologies. This particular product required to have support of 1 million user and processing packets coming from each user after every two hour to show it on users dashboard.
We will also go through the workload distribution technique we have used which is required for batch processing of data using Quartz library.
Yogesh Deshpande is a Technical Manager at GSLab. He has 11 years of experience in building applications using various Java/j2ee technology stacks,open source and other proprietary frameworks. His primary area of interest is in scalability and design considerations of applications for various languages for web application development.
* On play, you can change the layout as convenient.