Error Kernel Pattern

因为在看Akka的资料时,看到“Error Kernel Pattern”一词,所以想查一下资料是什么意思。

在Roland Kuhn的 Reactive Design Patterns书中,有介绍Error Kernel的概念。

我翻译一下:

“在监督层次结构中,将重要的应用程序状态或功能保留在根目录附近,同时将危险的操作委托给叶子。”

此模式基于简单组件模式(Simple Component)构建,适用于具有不同故障概率和可靠性要求的组件组合到更大的系统或应用程序中的任何地方 - 系统的某些功能必须永远不会发生故障,而其他功能必然会出现故障。应用简单组件模式通常会使您处于此位置,因此您需要熟悉错误内核模式。

这种模式已经在Erlang程序中建立了几十年,并且是JonasBonér在JVM上实现Actor框架-Akka的主要灵感之一。Akka这个名字最初被认为是Actor Kernel的回文,指的是这个核心设计模式。

既然这个模式是根据简单组件模式设计的,翻译一下作者写的。

“一个组件只能做一件事,但要全部完成。”

这种模式适用于系统执行多个功能的任何地方,或者它执行的功能非常复杂,需要将它们分解为不同的组件。一个例子是包含拼写检查的文本编辑器:两个独立的功能(编辑可以在没有拼写检查的情况下完成,拼写也可以在完成的文本上检查,不需要编辑功能),但另一方面,这些功能都很简单。

简单组件模式源于Tom DeMarco在1979年出版的“结构化分析和系统规范”(Prentice Hall)一书中提出的单一责任原则。在其抽象形式中,它要求“最大化内聚并最小化耦合。”应用于面向对象的软件设计,通常如下所述:“一个类应该只有一个改变的理由。”

参考:https://www.reactivedesignpatterns.com/patterns/error-kernel.html

猜你喜欢

转载自my.oschina.net/u/2277632/blog/2934056
今日推荐