我正在使用Scala / Akka编写TCP客户端服务器程序。 服务器端的一些角色需要处理来自客户端的TCP消息。 我使用(复制)代码基本上解析收到的TCP消息,并在接收到分隔符时将消息发送给其他人。
由于不止一个actor使用这个逻辑,我在baseTCP actor中抽象了它,并从中继承了其他actor。 我想在这个基本actor中添加公共代码,例如处理Bound / Connected / CommandFailed等。 这种处理在阿卡是否正常?还是气馁? 最好的祝福, 维沙尔
答案 0 :(得分:0)
是的,这是可能的,并且遵循您描述的内容的一个示例是PersistentActor。 http://doc.akka.io/api/akka/2.3.4/#akka.persistence.PersistentActor这是演员的子类型。
在我过去的公司中,我们通过扩展它来将HashMap作为状态和一些已定义的生命周期状态(如open,close,waitingForAck,termination)来抽象更多PersistentActor。