阅读665 返回首页    go 阿里云 go 技术社区[云栖]


Akka学习过程的疑问

- actor要如何分解才合适,在一个JVM上随意为每个功能启动多个actor?那远程actor一般作为其中的一个功能还是服务?

- actor和线程的关系
actor数和线程数不是一一对应的。2.7 million actors占1GB内存. 而1GB内存只能运行4096个线程.奥秘在于Actor直接可以复用线程。Actor和线程是不同的抽象,他们的对应关系是由Dispatcher决定的。一个Actor可以使用多个线程,一个线程也会被多个Actor复用。

- akka的scale up和scale out
不用修改一行代码,就可以让我们的程序scale up和scale out

- 设计一套系统的架构应该如何?
1.为每层设置一个supervisor,并转发给child? child负责对应的任务
3.貌似spark只用akka做通信,使用3个actor进行远程通信: client,master,worker.
其中worker会动态取spawn新的线程去处理任务。(为什么不使用actor ?任务繁重不能交给actor?)https://www.cnblogs.com/hseagle/p/3673147.html

最后更新:2017-04-03 05:39:44

  上一篇:go Akka TestKit测试包的使用
  下一篇:go System.BadImageFormatException: 未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程序。