Go kit 概览

该篇为翻译文:原文地址 https://github.com/go-kit/kit

Go kit 是一个语言工具包,用于在GO 语言中构建微服务。我们可以解决分布式系统和应用程序架构中的常见问题,因此你可以专注于业务开发。

使用理由:

Go 是一种服务器语言,但是他在Facebook,Twitter等公司中,使用的比率不是特别大。许多这些组织已经转向基于JVM的堆栈用于其业务逻辑,这在很大程度上归功于直接支持其微服务架构的库和生态系统。

为了达到更高的成功水平,Go需要的不仅仅是简单的基本语法。他需要一个全面的工具包,用于大规模分布式系统。Go kit是一套包和最佳实践,为任何规模的组织提供了一种全面,强大且可信赖的构建微服务的方法。

目标:

  • Operate in a heterogeneous SOA — expect to interact with mostly non-Go-kit services
  • RPC作为主要的消息传递模式
  • 使用序列化传输-而不仅仅是使用HTTP JSON语言 
  • Operate within existing infrastructures — no mandates for specific tools or technologies

依赖项

Go kit 是一个库,是有很多重要的包构成。包管理工具,都会验证包的健壮性。因此我们应该使用包管理工具来管理安装依赖,包括Go kit。为了避免兼容性和可用性问题,Go kit不提供自己的依赖项,也不建议使用第三方导入代理。

我提供一个包管理工具清单,包括dep,gb,glide,gvt,govendor。此外,Go kit使用各种持续集成提供程序来发现和修复兼容性问题。

Service frameworks

  • gizmo, a microservice toolkit from The New York Times ★
  • go-micro, a microservices client/server library ★
  • gotalk, async peer communication protocol & library
  • Kite, a micro-service framework
  • gocircuit, dynamic cloud orchestration

猜你喜欢

转载自www.cnblogs.com/jingying/p/10955763.html