2

只是使用 python & gevent.server 来服务一个简单的登录服务器(只需检查一些数据并进行一些 db 操作),当它受到 ddos​​ 攻击时会不会有问题?

如果使用 apache/ngnix 来服务器 http 请求会更好吗?

4

2 回答 2

3

如果你使用 gevent.server 来实现你自己的 HTTP 服务器,我建议不要这样做,你应该使用 gevent.pywsgi,它提供了一个功能齐全、稳定且经过全面测试的 HTTP 服务器。它不如 gevent.wsgi 快,后者由 libevent-http 提供支持,但具有您可能需要的更多功能,例如 HTTPS。

Gevent 比 Apache 更有可能在 DDOS 攻击中幸存下来,但 nginx 在这方面与 gevent 一样好,尽管我不明白如果你可以在纯 Python 服务器上做得很好,为什么还要使用它。如果您通过同一服务器有多个后端,那么使用 nginx 就是这种情况,例如您的身份验证服务器以及一些静态文件服务(可以完全由 nginx 完成)以及可能的其他子系统或其他虚拟主机,所有这些都可以通过单个 nginx 配置提供服务。

于 2012-07-31T13:08:15.043 回答
1

在我看来,使用纯 Python 服务器永远无法获得与使用主流 Web 服务器(如 Apache 和 Nginx)相同的安全级别。

这些在发布之前都经过了很好的测试,因此,通过使用稳定的构建并正确配置它,您将接近最大可能的安全性。

纯 python 服务器在开发过程中非常有用,但我不知道有任何可以声称与它们竞争安全测试/错误报告/快速修复的服务器。

这就是为什么通常建议将这些服务器之一放在纯 python 中的服务器之前的原因,例如使用 ProxyPass 之类的选项。

于 2012-07-31T12:39:39.610 回答