[请让我知道顺序,当有更多用户时会发生什么。
如果服务器崩溃,如果流量再次下降,它将自动恢复吗?
Env:一台服务器,请使用nginx-gunicorn。但不使用自动修复服务。(beanstalk,k8s等)交通:我不知道。但是我认为服务器可以覆盖10位访客,并且有100位访客
我不想覆盖太多用户。但是我只想知道访问者多于可用服务器时会发生什么。
问题有点抽象,您能添加更多详细信息吗,
如果您打算rate-limit到API的请求,则称为限制,您可以使用此处提到的各种方法来限制它们:https://www.django-rest-framework.org/api-guide/throttling/
如果服务器在站点上并且您拥有它,并且不介意对其进行爬网,则只需对其进行测试。您可以使用“ Apache Benchmark”(通常在Linux命令行上仅使用“ ab”)执行此操作。使用ab,您可以在具有大量并发请求的服务器上运行,并获得有关您的工作情况的报告。您可以发送GET,POST等。尝试逐渐使用更严格的测试方案,尝试击中一个您认为是资源消耗更大的端点之一。
您还可以同时在自己的浏览器中运行您的网站,并亲自查看服务器负载很重时的情况。
另一方面,如果您的站点在共享硬件上运行,则应多加注意。如果您对共享主机进行严格的负载测试,那么他们肯定会成为攻击者。他们可能不开心。但是,如果您小心翼翼,不要过分忙碌,那么ab仍然可以使您一次轻松模拟10个,20个或200个用户,并获得有关所有用户一般经验的报告(例如,平均响应)时间,请求失败的数量等)
TLDR:使用Apache Benchmark(“ ab”)来模拟大量负载。如果使用共享托管,请不要过度使用它。
最后,如果您担心并想为您的情况添加一些硬件保护,请考虑获取一个Cloudflare帐户并将您的网站放在该帐户的后面。它会为您进行缓存,还可以提供节流和其他负载控制功能。它对某些功能是免费的,而对其他功能则便宜。