Go Cloud开发工具包有什么新功能

前言

Go Cloud 是什么

Go 语言团队识别了云端应用程序使用的通用服务,并创建了可跨云进行应用的通用 API。Go Cloud 采用 blob 存储,可访问 MySQL 数据库,可进行运行时配置,还有一个具有内置日志记录,跟踪和运行状况检查的 HTTP 服务器。Go Cloud 目前提供对 Google Cloud Platform(GCP)和 Amazon Web Services(AWS)的支持。后期 Go 团队计划与其他云服务和 Go 语言社区合作,尽快为其他云厂商添加支持。

Go Cloud 旨在为各种云中最常用的服务提供中立于厂商的 API,这样可以轻松地将 Go 应用程序进行跨云迁移。Go Cloud 还为其他编写跨云的库的开源项目奠定了基础。来自社区各级各类开发人员的反馈将决定 Go Cloud 中未来 API 的优先级。

介绍

2018年7月,我们推出Go Cloud开发工具包(以前简称为“Go Cloud”),这是一个开源项目,构建库和工具,以改善使用Go开发云的体验。从那时起我们取得了很多进步 - 感谢早期的贡献者!我们期待发展Go CDK社区的用户和贡献者,并很高兴与早期采用者密切合作。

便携式API

我们的第一个计划是一组用于常见云服务的可移植API。您使用这些API编写应用程序,然后将其部署在任何提供程序组合上,包括AWS,GCP,Azure,内部部署或单个开发人员计算机上进行测试。可以通过实现接口添加其他提供程序。

如果满足以下任何条件,这些便携式API非常适合:

  • 您在本地开发云应用程序。
  • 您拥有要在云中运行的内部部署应用程序(永久或作为迁移的一部分)。
  • 您希望跨多个云实现可移植性。
  • 您正在创建一个将使用云服务的新Go应用程序。

与需要为每个云提供商编写新应用程序代码的传统方法不同,使用Go CDK,您可以使用我们的便携式API编写应用程序代码,以访问下面列出的服务集。然后,您可以在任何受支持的云上运行应用程序,只需更改配置。

我们目前的API包括:

  • blob,用于blob数据的持久性。支持的提供商包括:AWS S3,Google云端存储(GCS),Azure存储,文件系统和内存。
  • pubsub用于发布/订阅主题的消息。支持的提供商包括:Amazon SNS / SQS,Google Pub / Sub,Azure Service Bus,RabbitMQ和内存。
  • runtimevar,用于监视外部配置变量。支持的提供程序包括AWS Parameter Store,Google Runtime Configurator,etcd和文件系统。
  • screts,用于加密/解密。支持的提供程序包括AWS KMS,GCP KMS,Hashicorp Vault和本地对称密钥。
  • 用于连接云SQL提供程序的助手。支持的提供商包括AWS RDS和Google Cloud SQL。
  • 我们还在开发文档存储API(例如MongoDB,DynamoDB,Firestore)。

反馈

我们希望您和我们一样对Go CDK感到兴奋 - 查看我们的godoc,浏览我们的教程,并在您的应用程序中使用Go CDK。我们很乐意听取您希望了解的其他API和API提供商的想法。

如果您正在深入了解Go CDK,请与我们分享您的经验:

  • 什么进展顺利?
  • 使用API​​有任何痛点吗?
  • 您使用的API中是否缺少任何功能?
  • 有关文档改进的建议。

要发送反馈,您可以:

谢谢!

来自Google的Go Go Cloud Development Kit团队,Twitter #GoCDK

相关

What’s new in the Go Cloud Development Kit
Go Cloud开源发布:Go将成为云端应用开发的首选语言?