7

我们是一家初创公司,目前处于使用 SUAVE 和 F# 作为 Web 应用程序开发框架的评估模式。我非常热衷于使用 SUAVE 框架来开发我的应用程序。我只想知道 SUAVE 是否已准备好生产,与并发用户的 OWIN 相比,是否对其进行了任何性能基准测试,以及 Web 服务器可以处理多少用户流量。

4

1 回答 1

6

尽管这个线程现在 8 个月大,但我想分享我使用 Suave 作为 Web 服务器的经验。

首先,基于简单的基准来衡量性能并不能告诉您更复杂系统的整体性能的真相。但是,在使用 Suave 时,它​​不太可能成为您的应用程序的瓶颈。它更多地取决于整个架构、请求和响应之间的机制总和以及实现细节(例如,对列表的随机访问相当慢)。

我现在在 3 个项目中使用了 Suave,总是非常成功。它们都大量使用并行化和多线程。其中两个直接由 Suave 在 Nginx 代理后面运行,一个使用 IIS。在 IIS 下运行对性能没有任何可衡量的影响。当我遇到任何性能问题时,Suave 从来都不是寻找它们的地方。

当利用 F# 出色的并发和并行化功能时,您的应用程序将受益于垂直扩展。例如,我构建了一个图像处理服务,它在 AWS 上表现相当糟糕,但在配备四核 Pentium 处理器的笔记本电脑上表现出色。但同样,这与 Suave 无关。实际上,它几乎超出了您的范围。

Suave 本身就是一个伟大而可靠的选择。在大约 2 年的时间里,我没有遇到过极端情况,因为 Suave 会成为麻烦的原因。

我不得不提一下,我的经验是基于简单的 Web 服务器和服务。Suave 被用于一个相当平坦的 Web 层来服务 RPC 或 REST-API。
其他任务,如流媒体或软实时应用程序可能需要另一种方法,并且可能不适合 Suave。

于 2017-12-11T11:15:48.647 回答