相关疑难解决方法(0)

nginx/starman/dancer网络堆栈的解释

我已经做了一段时间的网络编程,并且对LAMP堆栈非常熟悉.我决定尝试玩弄nginx的/接龙/舞者堆栈和我有点困惑如何理解,从一个高层次,所有的部分是如何相互关联的.设置堆栈似乎并不像设置LAMP堆栈那样简单,但这可能是因为我并不真正了解这些部分是如何相关的.

我理解nginx正在扮演的角色 - 一个轻量级的网络服务器/代理 - 但我对starman与pgsi,plack和舞者的关系感到困惑.

我将非常感谢这些部分如何相互关联以及为什么每个部分都需要(或不必要)来获得堆栈设置的高级细分.谢谢!

nginx plack starman dancer

32
推荐指数
3
解决办法
7026
查看次数

为什么要在框架Web服务器前使用http服务器?

Web应用程序框架(如sinatra(ruby),play(scala),lift(scala))生成一个侦听特定端口的Web服务器.

我知道有一些原因,如安全性,群集以及在某些情况下的性能,可能会导致我在我的Web应用程序前面使用Apache Web服务器.

根据您的经验,您有任何理由吗?

ruby scala lift sinatra playframework

20
推荐指数
1
解决办法
2383
查看次数

nginx和Perl:FastCGI与反向代理(PSGI/Starman)

如今,运行Perl Web应用程序的一个非常流行的选择似乎是nginx webserver代理对FastCGI守护程序或PSGI启用的Web服务器(例如Starman)的请求.

关于为什么一般会这样做会有很多问题(例如为什么在Catalyst/Plack/Starman中使用nginx?)并且答案似乎适用于这两种情况(例如,允许nginx提供静态内容,轻松重启应用程序服务器,负载均衡等)

但是,我对使用FastCGI与反向代理方法的优缺点特别感兴趣.似乎Starman被广泛认为是最快和最好的Perl PSGI应用程序/网络服务器,我很难看到使用FastCGI的任何优势.这两种方法似乎都支持:

  • UNIX域套接字以及TCP套接字
  • fork/process manager样式服务器以及非阻塞基于事件的(例如AnyEvent)服务器.
  • 信号处理/正常重启
  • PSGI

同样,任一选项的nginx配置都非常相似.

那你为什么选择一个呢?

perl reverse-proxy fastcgi nginx plack

19
推荐指数
1
解决办法
8337
查看次数

标签 统计

nginx ×2

plack ×2

dancer ×1

fastcgi ×1

lift ×1

perl ×1

playframework ×1

reverse-proxy ×1

ruby ×1

scala ×1

sinatra ×1

starman ×1