我有一个当前在 IIS 上运行的 ASP.NET 网站。现在我想移动该站点以在 Cassini 上运行。
Cassini 与 IIS 相比有哪些优势?它的缺点是什么?
您使用 Cassini 作为生产网络服务器的经验是什么?
我有一个当前在 IIS 上运行的 ASP.NET 网站。现在我想移动该站点以在 Cassini 上运行。
Cassini 与 IIS 相比有哪些优势?它的缺点是什么?
您使用 Cassini 作为生产网络服务器的经验是什么?
据我所知,您不能在生产中使用 Cassini,因为它仅侦听 localhost 请求。您必须自己修改源代码并重新编译网络服务器。
另一件事是 IIS 建立在 http.sys 内核级库之上,以获得最佳性能。我不熟悉最新的 Cassini 版本,但上次我检查时,它使用了较慢的托管 TCP 套接字。
如果您的网站不是很受欢迎,而 Cassini 具有您需要的所有功能,为什么不... Cassini 没有任何问题。它是一个简单的网络服务器,但它不是 IIS 的唯一替代品。
有Abyss、UltiDev Cassini和我认为其他一些支持 ASP.NET 的开源服务器。
UltiDev Web Server Pro是一个免费的、可再分发的、轻量级的 Web 服务器,具有许多用于 ASP.NET 应用程序(从 ASP.NET 1.1 到 4)的企业级功能。与 Cassini 不同的是,它的设计并没有妨碍它为面向 Internet 的应用程序提供服务。由 UltiDev Cassini fork 的供应商 UltiDev 创建的新 UWS Pro 在功能上更接近 IIS,而不是 Cassini。更多截图。
.
简单的选择:根本不可能在生产中使用 Cassini,因为它不能从远程机器访问(它只在 localhost 上侦听)。
如果你正在寻找替代服务器,我会说你最好使用一些被证明可以处理扩展的东西,比如 apache 上的 mod_mono。
iis 的集成管道、路由、压缩和缓存功能很难复制。但是,如果不了解操作系统和根级别的网络堆栈,就很难实现应用程序池和故障快速响应。
Cassini 没有声称是多线程的,也没有处理任何可能与 iis 相关的高级电子标签或其他标题控制问题,但通常在更高版本的 iis 中也设置为合理的默认值。
为了完整起见,您可以使用较旧的 rails-mongrels 模型,在端口 10100 - 10110 上启动 10 个 cassini,然后使用 ngenx 或 apache 在这些线程上加载平衡请求,并使用监控工具将请求重做到新的当旧的出去吃午饭并不断重新启动2个左右的端口时线程,因为你超载了。
没有任何可能的角度可以查看 cassini 或其任何衍生产品,并考虑将其用作开发/测试服务器以外的任何东西。