Related Posts
The key to successful business: Having a clear vision
“I am thinking about the cofounder and the possible team. There are... read more
Data Strategy: A strategic asset
Mckinsey just came out with a study that found that the... read more
Best practices for designing scalable software
Trying to make your product scalable? That’s usually an exhaustive task.... read more
Why you shouldn’t fall in love with your product?
“I am now all set with this amazing idea and I... read more
The first step to take before developing a product
The days are getting a little longer and the sun has become... read more
Empathy: The secret sauce to great leadership
“This is completely unreasonable, I am expecting complete professional behaviour, I... read more
Going Global with Amazon MWS-API
Introduction Amazon provides a complete (well, almost complete!) web-based solution for retailers... read more
Are you delivering promised value
Is your product really delivering the promised value? No one will be... read more
Employee Story – Arjun
Since the beginning of my career, I have always worked very... read more
Two Most Important Words for any business
Handling of undesired scenarios/events like product replacements/refunds plays a crucial part... read more
“We will use it from next week. Will it hold well when all users log in on Monday morning?” A common concern, based on past experience.
The team had done a good job of understanding the scalability requirements, designed an architecture that will scale well. However, during the initial phase, everyone was focused on functionality. Performance was yet to be tested.
As I was reviewing, I found one thing missing – concurrency requirements.
How many users can be active at the same time?
How many requests will simultaneously reach the server?
This is an essential factor for capacity planning. Too less will mean dropped requests and too much will mean higher costs.
There is no correct answer. Concurrency keeps changing based on external events, time of the day, user behavior, etc. It can be predicted only with visibility into past data.
This is where instrumentation comes to help. Build desired counters in the system, record, monitor, and notify them regularly. Allow for the tuning of what to check, what to record, and what to notify. You are going to need regular monitoring and tweaking for the best efficiency.
Do you have the counters built in your product?