我有一个简单的scala + akka应用程序,它以最简单的方式初始化。
object Init extends App {
implicit val system = ActorSystem("app")
// Endpoints initialization and binding
// Scheduling
// Some other components
}
重点是,当actor系统被创建并且它已经存在时,那么如果中间出现任何问题(例如一些丢失的配置,端口已经绑定等等),我们最终可以使用部分配置但仍在运行的应用程序。我完全清楚我可以在try catch和kill app中包围所有内容,如果出现任何问题,但也有部分初始化可能会失败(换句话说,如果这样的初始化失败,那么我们只记录事实然后去与我们的生活)。再一次,我可以想象if / try / catch的组合来解决这个问题,但问题是:我能做得更好,更好,更干净吗?