4

我希望在 OCaml 中编写一个 Web 服务服务器(使用 http 协议)。

举个简单的例子,我想写一个http server. 用户可以访问它并提供像http://myservice.com?i=1&j=2. 然后我的服务器获取请求和参数calculate i+j并返回结果。


当然,我的服务对于计算部分会比较复杂。而不是这个简单的计算示例,我真正需要做的是

  1. 访问数据库(MongoDB)以获取一些数据
  2. 访问另一个 3rd 方网络服务以获取更多数据
  3. 计算所有数据得到结果并返回给用户。

所以,我也需要考虑parallelism/ multi-threading,虽然我想先从简单的案例开始。


我的问题是:

  • 我应该使用哪个库来首先设置这样一个http server?我研究过Ocamlnet 3并认为它可能是一个很好的候选者,但它缺乏好的教程,我仍然不知道如何使用nethttpd等等netplex
  • 我应该如何设计我的 Web 应用程序的架构?我知道 OCaml 不擅长parallelism,那我怎样才能让每个服务实例不阻塞呢?
4

0 回答 0