如何在同一个webapp中运行Sentry客户端和服务器会影响性能?

S. *_*rby 1 django sentry

我正在考虑为我的Django项目设置Sentry,但我想知道是否要将Sentry服务器与我的主webapp一起安装,或者在单独的Web实例中安装.

我可以想到让Sentry在同一个webapp中的好处是:

  • 易于设置和维护(一个webapp而不是两个,不需要安装eventlet等)
  • 易于管理员使用(例如使用与webapp管理员相同的帐户登录Sentry)

Sentry文档在这里这里建议,在同一个webapp中运行它会降低webapp服务质量,但具体如何?

  • 如果没有错误发生,Sentry会减慢webapp的速度吗?
  • 如果发生许多错误(例如,每分钟10次),webapp会变得非常慢吗?

Chr*_*att 8

除非发生错误,Sentry不会做任何事情,即使这样,对响应时间的影响也可以忽略不计 - 至少与系统上任何其他类型的日志记录一样可以忽略不计.但是,一般情况下,这不会对您的应用产生影响.

文档引用集成Sentry将成为问题的场景是在高并发环境中以及QoS(服务质量)必须的环境中.让我更详细地介绍一下.

首先是高并发性.在这里,您的网站获得了如此多的流量1)您必须剥离服务器以便处理请求(想想Twitter或Facebook)或2)负载足以让您的服务器瘫痪(Digg-effect,尽管现在可能需要重命名),在这种情况下你也会失去Sentry访问权限.

二,QoS影响.在服务器上混合应用程序意味着更多的失败点.如果您的Django项目中存在错误,它可能会使Sentry陷入其中,从而使诊断变得更加困难.或者相反,如果Sentry中的某些东西爆炸,可能会让你的Django项目失败,导致潜在的访问者数量,销售额,广告收入等.

问题实际上并非如此(尽管这很重要),它实际上是关于责任分离和减少失败点.如果您正在运营一个小型网站,那么您可能并不太关心.但是,对于像Disqus(制作Sentry)这样的网站,隔离的Sentry服务器是必需的.