Go-Chassis — это микросервисный фреймворк для быстрой разработки микросервисов на Go.
Go-Chassis разработан как независимый от протокола фреймворк, любой протокол может интегрироваться с Go-Chassis и использовать такие функции, как балансировка нагрузки, автоматический выключатель, ограничение скорости, управление маршрутизацией, которые делают ваш сервис устойчивым.
Go-Chassis делает сервис наблюдаемым благодаря открытой трассировке и Prometheus.
Go-Chassis является гибким, многие различные модули могут быть заменены другими реализациями, такими как реестр, метрики, цепочка обработчиков, центр конфигурации и т. д.
Благодаря множеству встроенных функций, таких как управление маршрутами, автоматические выключатели, балансировка нагрузки и мониторинг, вам не нужно самостоятельно исследовать, внедрять и интегрировать множество решений.
Go-Chassis поддерживает платформу Istio, хотя Istio — отличная платформа с сервисной сеткой в плоскости данных, она, безусловно, снижает пропускную способность и увеличивает задержку вашего сервиса. Go-Chassis может повысить производительность программы Go, вы можете использовать конфигурации Istio для управления Go-Chassis.
У Go-Chassis также есть решение для сервисной сетки https://github.com/go-mesh/mesher, оно построено на основе Go-Chassis. Вы можете использовать один и тот же реестр и конфигурацию для управления всеми сервисами, написанными на разных языках.
Вы можете ознакомиться с плагинами, чтобы увидеть больше возможностей.
Вы можете увидеть дополнительные документы здесь, этот документ предназначен для последней версии Go-Chassis, если вы хотите увидеть документацию своей версии, следуйте здесь, чтобы создать её.
git clone git@github.com:go-chassis/go-chassis.git
cd go-chassis
export GO111MODULE=on
go mod download
#опционально
export GO111MODULE=on
go mod vendor
Обратите внимание: если вы не используете мод, мы не можем гарантировать вам совместимость. Однако вы всё ещё можете поддерживать своего собственного поставщика, что означает, что вы должны решать проблемы компиляции самостоятельно.
Вы можете посмотреть примеры здесь
Обратите внимание: сейчас примеры переносятся на сюда
Go-Chassis поддерживает 3 типа коммуникационных протоколов.
Добавьте -tags debug
в аргументы сборки перед отладкой, если ваша версия go — go1.10 или выше.
Пример:
go build -tags debug -o server -gcflags "all=-N -l" server.go
Chassis настроил тег debug
, чтобы решить проблему с отладкой dlv:
https://github.com/golang/go/issues/23733
https://github.com/derekparker/delve/issues/865
Эта часть представляет некоторые экосистемы, с которыми может работать go chassis.
С сервисным центром ServiceComb в качестве реестра go chassis предоставляет больше функций, таких как управление контрактами и множественный реестр сервисов, настоятельно рекомендуется. Это не помешает вам использовать kubernetes или Istio, потому что сервисный центр может агрегировать разнородные реестры и предоставить вам единую точку входа в реестр служб.
У go chassis есть плагины для реестра k8s и реестра Istio, а также поддержка управления трафиком Istio. Вы можете использовать spring cloud или Envoy с go chassis под одной службой обнаружения служб.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )