Go 博客

Go Cloud Development Kit 的新变化

Google 的 Go Cloud Development Kit 团队
2019 年 3 月 4 日

简介

去年七月,我们推出了 Go Cloud Development Kit(之前简称为 “Go Cloud”),这是一个构建库和工具的开源项目,旨在改进使用 Go 进行云开发的体验。自那时以来,我们取得了很大的进展——感谢早期的贡献者们!我们期待着 Go CDK 用户和贡献者社区的发展,并很高兴与早期采用者密切合作。

可移植 API

我们的第一个倡议是为常见云服务提供一套可移植 API。您使用这些 API 编写应用程序,然后可以将其部署到任何提供商组合上,包括 AWS、GCP、Azure、本地部署,或用于测试的单个开发者机器上。通过实现接口可以添加额外的提供商。

如果符合以下任何情况,这些可移植 API 将非常适合您

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

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

我们当前的 API 集包括

  • blob,用于持久化 blob 数据。支持的提供商包括:AWS S3、Google Cloud Storage (GCS)、Azure Storage、文件系统和内存。
  • pubsub,用于向主题发布/订阅消息。支持的提供商包括:Amazon SNS/SQS、Google Pub/Sub、Azure Service Bus、RabbitMQ 和内存。
  • runtimevar,用于监视外部配置变量。支持的提供商包括 AWS Parameter Store、Google Runtime Configurator、etcd 和文件系统。
  • secrets,用于加密/解密。支持的提供商包括 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 中是否有缺失的功能?
  • 改进文档的建议。

发送反馈的方式包括

谢谢!

下一篇文章:新的 Go 开发者网络
上一篇文章:Go 1.12 已发布
博客索引