[英]What will happen if I don't scale my application or database servers and I increase the load?
I understand horizontal scaling, vertical scaling, sharding, I want to gain more understanding on what will happen to the application ie the effects of not scaling over how I can solve the problem by scaling.我了解水平缩放、垂直缩放、分片,我想更多地了解应用程序会发生什么,即不缩放的影响如何通过缩放解决问题。
Here are my doubts,这是我的疑惑,
Generally, all requests have a timeout, these timeouts occur at most layer boundaries (Browser->HTTP server, HTTP Server -> Application Server / Microservices layer, Application -> Database).通常,所有请求都有超时,这些超时发生在大多数层边界(浏览器->HTTP 服务器、HTTP 服务器-> 应用程序服务器/微服务层、应用程序-> 数据库)。 When your load increases to the point where some layer cannot service the request before that timeout occurs, the user will not get a response, and the application will be broken当您的负载增加到某个层无法在超时发生之前为请求提供服务时,用户将得不到响应,并且应用程序将被破坏
Depending on where the timeout occurs, you may send a useful error, or it could be a generic "hang" where the application appears to be frozen or broken in some way.根据超时发生的位置,您可能会发送一个有用的错误,或者它可能是一个通用的“挂起”,应用程序似乎以某种方式被冻结或损坏。
If enough requests are awaiting servicing, and you have turned up all the timeouts to an unreasonably high level, you may allow more and more threads to queue.如果有足够多的请求等待服务,并且您已将所有超时设置到不合理的高水平,您可能会允许越来越多的线程排队。 These threads use memory, and ultimately you will run out of memory and be unable to create additional threads, at which point the application will once again hang and become unresponsive.这些线程使用内存,最终您将耗尽内存并且无法创建额外的线程,此时应用程序将再次挂起并变得无响应。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.