英文:
Frameworks for distributed Go (like Erlang OTP)?
问题
似乎Go语言正在受到关注,并且有很多有趣的项目在使用它。
但是,我经常听到一个观点,即Go语言的主要关注点是单机,与Erlang OTP不同,它没有很好地支持构建分布式系统。
那么,有哪些用于构建可靠的分布式系统的Go框架和方法可用?
重要的是,这些框架应该经过实战验证,并且在生产环境中承受了大量负载,而不仅仅在GitHub上受欢迎。
英文:
Seems like Go is gaining traction and there are lots of interesting projects using it.
But, I frequently heard an opinion that Go primary focus is single machine, unlike Erlang OTP it doesn't have good support for building distributed systems.
So, what frameworks and approaches available for Go to build reliable distributed systems?
Important thing - such frameworks should be battle tested and used in production with heavy load, not just popular on GitHub.
答案1
得分: 6
GopherCon 2014中有几个用于分布式系统的框架:
> 与Erlang有些不同,Erlang的分布式操作系统OTP位于语言之下,而我们认为分布式操作系统应该在语言之上构建并使用语言。
-
Writing a High Performance Database in Go:
skydb/sky
和skydb.io,最新版本包括分布式计算,因此您可以在多个节点上运行Sky并实现线性扩展。
> NSQ是一个实时分布式消息平台,完全使用Go构建,它促进分布式和去中心化的拓扑结构,没有单点故障,实现了容错性和高可用性,并提供可靠的消息传递保证。
第一个和第三个框架正在生产环境中使用。
英文:
The last GopherCon 2014 had several of those frameworks for distributed systems:
> Somewhat unlike Erlang, where the distributed operating system OTP is below the language, we assert that the distributed OS should be built above and using the language.
-
Writing a High Performance Database in Go:
skydb/sky
and skydb.io, with its last release including distributed computing, so you can run Sky across multiple nodes and scale linearly.
> NSQ is a realtime distributed messaging platform, built entirely in Go, that promotes distributed and decentralized topologies without single points of failure, enabling fault tolerance and high availability coupled with a reliable message delivery guarantee.
The first and third are used in production.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论