如果我要把一个程序投入生产,我需要这个程序做几件事情来使它“可操作化”——也就是说,由工程师和操作人员以一种可测量和可验证的方式运行和维护。在我看来,一个可操作的程序必须:
在 Scala 的世界里,有很多很好的库可以处理至少前三个需求。例子:
As for deployment, one approach taken in the Scala world is to bundle together the bytecode and libraries that comprise one's program with something like assembly-sbt, then push the resulting bundle (a "fat JAR") to remote servers with a tool like Capistrano that executes commands in parallel over SSH. This isn't a problem that necessitates language-specific tools, but I'm curious if such a tool exists in the Haskell community.
可能有一些 Haskell 库提供了我上面描述的特性。我想知道哪些可用的库被认为是“最好的”; 也就是说,哪些是最成熟、维护良好、在 Haskell 社区中常用的,以及 Haskell 最佳实践的典范。
If there are any other libraries, tools, or practices around making Haskell code "production-ready", I'd love to know about those as well.