Related Posts
Right Time to Go for External Investment?
“Makarand, what is the right time to go for external investment?... read more
How do I plan a long-term software development project?
Just yesterday, I got the long-awaited message, “The Eagle has landed!”... read more
Continuity in Long term projects
Feature-rich, scalable, secure products are built over a long time period.... read more
Rule-Based Chatbots Vs. AI-based Chatbots.
I was chatting with one of the car service companies about... read more
6 Essential Machine Learning Algorithms Every Data Scientist Should Know
As the field of data science continues to evolve, mastering essential... read more
How to Create Graphs for Similar Entity Search
How to Create Graphs for Similar Entity Search We demonstrate the application... read more
Why Voice AI is the Key to Unlocking Customer Service’s Next Big Innovation
1. Personalized Customer Experience : Voice AI enables personalized interactions by recognizing... read more
Considerations for using JWT tokens- Part 2
To cater to this challenge create a blacklist or whitelist the... read more
ChatGPT API: The language model that understands your business needs.
1. Automation ChatGPT API automates customer service queries, allowing staff to focus... read more
How to build an ethical startup that makes a positive impact
What does Being ethical mean? It’s a hard-to-define term. Especially for... read more
The team was excited. The demo went well. Our platform was appreciated and they agreed to use it. Great news indeed!
“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?