akka或golang的类似替代方案支持分布式并发?

 手机用户2502868585 发布于 2023-01-30 05:01

我知道golang在内置支持方面非常擅长并发,但在我看来它们并不是分布式的,所以框架/库允许我们在分布式环境中编写生产者/消费者应用程序.

3 个回答
  • 如果您想在分布式程序中使用Go的通道概念,可以查看Go Circuit框架.

    它提供了一个运行多进程程序的框架(可能分布在多台机器上),允许您使用通道在这些进程之间进行通信.

    2023-01-30 05:18 回答
  • 这里不需要重新发明轮子......生产者/消费者应用程序通常使用消息队列构建.

    使用这种方法,您应该尝试将问题分解为小的(理想情况下是幂等的)任务,构建可以排队这些任务的应用程序,然后使用另一个可以使这些任务出列并执行它们的工作程序.扩展很简单:只需添加更多工作人员.

    那里有很多排队解决方案,对于一个用Go写的非常好的解决方案来看看NSQ.

    2023-01-30 05:23 回答
  • 迟了两年,但如果有人在找。 https://github.com/AsynkronIT/gam

    GAM(Go演员模型)既支持Akka这样的演员,也支持Orleans这样的Virtual Grains。Protobuf代码生成支持像虚拟谷物这样的奥尔良女士,为您提供键入的消息和键入的谷物类型。参见 https://github.com/AsynkronIT/gam/blob/dev/examples/cluster/member/main.go https://github.com/AsynkronIT/gam/blob/dev/examples/cluster/shared/protos。原型

    它的速度也非常快,每秒有100万以上的远程消息。

    2023-01-30 05:30 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有