Golang Go语言中是否有类似Python ray的分布式框架?

发布于 1周前 作者 zlyuanteng 来自 Go语言

Golang Go语言中是否有类似Python ray的分布式框架?

我最近才接触 go 语言吗,是个新手,过去用 python 的时候浅显的用过一个叫 ray 框架,这个框架有个好处,代码可以被分发到各个各个节点运行(各个节点安装好相应的库),这样做的好处是,只要节点安装好了库,每次可能分发不同的代码去分布式并行化计算,请问 go 里有没有这种现成的轮子,由于 go 语言需要编译,如果有这样的框架的话,代码发送过去后需要先编译再运行吗?非常感谢。

9 回复

k8s…

更多关于Golang Go语言中是否有类似Python ray的分布式框架?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


go 编译后,直接发二进制文件运行,节点都不用装 go 相应的库。

Ray 和 K8S 不是一个层的工具

人家问的是计算框架,楼下说的是容器平台,都不是一回事
apache beam 看下符合不?有 go 的 sdk

这个对标的是 python 的 celery ,按我理解应该跟 ray 不同,ray 面向的更多是机器学习,celery 是分布式队列

Actor 模式吧,go 有 https://github.com/asynkron/protoactor-go
你要分布式并行化计算,你确定是要 go 来实现吗?不考虑 flink 和 kubeflow 之类的?

在Golang(Go语言)生态中,确实存在类似于Python中Ray的分布式框架,尽管它们在具体实现和功能上可能有所不同。Ray是一个为AI和机器学习优化的Python分布式框架,而Go语言则有其独特的分布式框架和工具集。

对于Go语言来说,其分布式框架如gRPC、Consul等,提供了高效、可靠和可扩展的通信机制和服务管理功能。这些框架能够简化分布式系统的开发过程,并支持多种服务类型和通信协议。例如,gRPC是一个高性能的、跨语言的远程过程调用(RPC)框架,它使用Protocol Buffers作为序列化协议,支持多种服务类型,非常适合微服务架构中的服务间通信。

此外,虽然Apache Beam主要是一个由Java和Python SDK支持的统一编程模型,用于构建可移植的批处理和流处理数据管道,但它也提供了一个实验性的Go SDK。这允许开发人员使用Go语言编写Beam程序,从而在一定程度上实现分布式计算的功能。然而,需要注意的是,由于Go SDK还处于实验阶段,可能会遇到文档不足、生态不成熟和性能优化等方面的挑战。

综上所述,Go语言拥有多种分布式框架和工具集,能够满足不同场景下的分布式系统开发需求。

回到顶部