Repolode
google

google/go-cloud

Библиотека Go с переносимыми API для объектного хранилища, pub/sub, баз данных и секретов — одна кодовая база работает в любом крупном облаке.

Звёзды
9,920
Форки
863
Открытые issues
2
Последний коммит
5 дней назад

Что это?

Go Cloud Development Kit (Go CDK) позволяет разработчикам на Go создавать облачные приложения, используя стабильные идиоматичные интерфейсы для распространённых сервисов — например, объектного хранилища, баз данных и обмена сообщениями. Код приложения вызывает единый API, а драйверы для конкретных провайдеров берут на себя особенности каждого облака, поэтому одну и ту же программу можно развертывать у разных облачных провайдеров.

В набор входят API для объектного хранилища, publish/subscribe, переменных, меняющихся во время выполнения, хранения документов и секретов, а также для подключения к MySQL/PostgreSQL. Кроме того, есть серверные утилиты для логирования запросов, трассировки и проверки работоспособности. Архитектура набора основана на пакете Go database/sql. Он дополняет генератор кода Wire, который создаёт понятный для чтения код и импортирует только те облачные SDK, которые использует приложение.

API имеют статус alpha. Сопровождающие предпочитают не добавлять новые драйверы в этот репозиторий, а оставлять здесь уже существующие; для новых провайдеров они предлагают использовать отдельные репозитории.

Ключевые возможности

  • 01Переносимый API объектного хранилища, работающий с S3, Google Cloud Storage и другими бэкендами.
  • 02API для pub/sub, переменных времени выполнения, хранения документов и секретов — для каждого есть единый интерфейс.
  • 03Поддержка подключений к MySQL (включая MariaDB) и PostgreSQL.
  • 04Встроенные средства логирования запросов, трассировки и проверки работоспособности серверов.
  • 05Набор рассчитан на совместное использование с Wire: в сборку попадают только используемые вами облачные SDK.

Сценарии использования

  • Создание сервиса на Go, который должен работать в AWS, GCP или Azure без переписывания кода для хранилищ.
  • Абстрагирование объектного хранилища, чтобы в локальных тестах и в production можно было использовать разные бэкенды.
  • Добавление переносимой работы с секретами или pub/sub в мультиоблачное приложение на Go.

Быстрый старт

  1. 1

    Установите модуль Go CDK в свой проект на Go

    go get gocloud.dev
  2. 2

    Ознакомьтесь с документацией и руководствами на сайте проекта

Что важно знать

  • Согласно README, API пока находятся на стадии альфа-тестирования.
  • Проект предпочитает поддерживать существующие драйверы, поэтому новые драйверы в основной репозиторий, скорее всего, не примут.
  • Нужные вам драйверы для конкретных облачных платформ могут находиться в отдельных внешних репозиториях.

Темы

Частые вопросы

Что такое go-cloud?
Библиотека Go с переносимыми API для объектного хранилища, pub/sub, баз данных и секретов — одна кодовая база работает в любом крупном облаке. Go Cloud Development Kit (Go CDK) позволяет разработчикам на Go создавать облачные приложения, используя стабильные идиоматичные интерфейсы для распространённых сервисов — например, объектного хранилища, баз данных и обмена сообщениями. Код приложения вызывает единый API, а драйверы для конкретных провайдеров берут на себя особенности каждого облака, поэтому одну и ту же программу можно развертывать у разных облачных провайдеров.
go-cloud можно использовать бесплатно? Какая у него лицензия?
go-cloud распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
go-cloud всё ещё поддерживается?
Активно поддерживается. Последний коммит в go-cloud — 2 нояб. 2026 г..
Для чего можно использовать go-cloud?
Создание сервиса на Go, который должен работать в AWS, GCP или Azure без переписывания кода для хранилищ. Абстрагирование объектного хранилища, чтобы в локальных тестах и в production можно было использовать разные бэкенды. Добавление переносимой работы с секретами или pub/sub в мультиоблачное приложение на Go.
Как установить go-cloud?
Установите модуль Go CDK в свой проект на Go: go get gocloud.dev Ознакомьтесь с документацией и руководствами на сайте проекта
Где скачать go-cloud?
Исходный код и инструкции по установке — на GitHub: https://github.com/google/go-cloud

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

CLI и конвейер данных для синхронизации метаданных облачной и SaaS-инфраструктуры с хранилищем данных — для SQL-запросов, инвентаризации ресурсов и анализа безопасности.

6,6 тыс.+5 за неделю567GoMPL-2.0Активно поддерживаетсяОбновлён 20 часов назад