![]() ![]() We also need some near real-time visualization for all our data, and for that we use elasticsearch and kibana. As the amount of requests and load on the system increases, the response time subsequently also starts to increase. Now 20ms is still a decent amount of time to do everything if your servers are geographically close, but as the the traffic increases, abiding by this time restriction requires us to optimise and decrease load on our servers which can have a massive impact on performance. The catch is, all this needs to be completed within 20 milliseconds. The reverse-proxy then removes some of the headers which are only required for our internal logging and then sends the response back to the client.Once the request makes it to the backend, the backend application(nodejs) makes multiple different redis lookups, applies some learning from a machine learning model, does some more calculation and then responds with either a valid response (200) or an empty response (204).Kong also have some useful plugins that we use, and some custom plugins. So we use Kong, the popular API gateway as out reverse proxy. As a business requirement, all these parameters need to be dynamically configurable.Add/update some additional info in some selected requests.Drop spammy traffic and rate-limit certain type of requests.Upon receiving a request, proxy it to one of our application servers based on some predetermined rules.2 years down the line, we have a spot fleet of logstash instances that do nothing but process logs and put it into our elastic cluster. When I joined 2 years back, we were serving like 400-500 qps and handled like 20 servers for different purposes. Over the past 2 years, our business has seen an exponential growth in the amount of requests we serve and the infrastructure we handle. At our peak, we serve around 35,000 requests per second, which is actually a bigger number than you initially realize. So I work for an Ad-Tech company, and in this industry we receive a huge volume and rate of requests. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |