ParanoiaGo Framework
Современный, высокопроизводительный фреймворк для Go, созданный для быстрой разработки масштабируемых и надежных микросервисов.
package main
import (
"github.com/devpro_studio/Paranoia/paranoia"
)
func main() {
app := paranoia.New("minimal app", "app.yaml")
err := app.Init()
if (err != nil) {
panic(err)
return
}
defer app.Stop()
//...
}Возможности
Почему Paranoia?
Paranoia предоставляет все необходимые инструменты для создания современных, масштабируемых и надежных приложений на Go
Модульная архитектура
Все компоненты реализованы как независимые пакеты, которые можно свободно комбинировать и внедрять в приложение. Строите ли вы монолит или микросервисы - Paranoia адаптируется под ваши нужды.
ДокументацияМногослойная архитектура
Фреймворк поддерживает классическую слоенную архитектуру (controller-service-repository), DDD, CQRS и другие подходы. Выбирайте стиль, который лучше всего подходит для вашего проекта.
ДокументацияСерверные компоненты
Поддержка различных серверных компонентов: HTTP, gRPC, Kafka, RabbitMQ. Единый подход к конфигурации, встроенные метрики и мониторинг, возможность расширения и кастомизации.
ДокументацияХранилища данных
Единый интерфейс для работы с файлами и облачными хранилищами (S3). Гибкая конфигурация, поддержка метрик и мониторинга, простой API для сохранения и загрузки данных.
ДокументацияБазы данных
Поддержка различных баз данных: PostgreSQL, MySQL, SQLite, MongoDB, ClickHouse и других. Единый интерфейс, миграции, кэширование и оптимизация запросов.
ДокументацияТелеметрия и логирование
Встроенная поддержка метрик и трассировки с интеграцией с OpenTelemetry, Prometheus, Zipkin, Sentry. Различные логгеры для разных сценариев использования.
ДокументацияСвязанные проекты
Другие проекты экосистемы
Познакомьтесь с сопутствующими проектами, расширяющими возможности Paranoia
Go Utils
Коллекция полезных утилит и инструментов для Go, обеспечивающих расширенные возможности для стандартной библиотеки
NetLocker
Мощный инструмент для распределенной блокировки общего доступа к ресурсам
FeatureStorm
Система управления функциями и возможностями приложения на основе аттрибутов. Возможность разворачивать новые фичи на определенные аудитории пользователей, или методом АБ тестирования.
Готовы начать разработку с Paranoia?
Присоединяйтесь к сообществу разработчиков и создавайте мощные приложения на Go