patron alternatives and similar packages
Based on the "Web Frameworks" category.
Alternatively, view patron alternatives based on common mentions on social networks and blogs.
-
Gin
Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin. -
Iris
The fastest HTTP/2 Go Web Framework. New, modern and easy to learn. Fast development with Code you control. Unbeatable cost-performance ratio :rocket: -
Gorilla WebSocket
DISCONTINUED. A fast, well-tested and widely used WebSocket implementation for Go. -
GoFrame
GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang. -
goa
๐ Goa: Elevate Go API development! ๐ Streamlined design, automatic code generation, and seamless HTTP/gRPC support. โจ -
GoFr
An opinionated GoLang framework for accelerated microservice development. Built in support for databases and observability. -
Faygo
Faygo is a fast and concise Go Web framework that can be used to develop high-performance web app(especially API) with fewer codes. Just define a struct handler, faygo will automatically bind/verify the request parameters and generate the online API doc. -
Huma
A modern, simple, fast & flexible micro framework for building HTTP REST/RPC APIs in Go backed by OpenAPI 3 and JSON Schema. -
go-server-timing
DISCONTINUED. Go (golang) library for creating and consuming HTTP Server-Timing headers
InfluxDB - Purpose built for real-time analytics at any scale.
Do you think we are missing an alternative of patron or a related project?
Popular Comparisons
README
patron
Patron is a framework for creating microservices, originally created by Sotiris Mantzaris (https://github.com/mantzas). This fork is maintained by Beat Engineering (https://thebeat.co)
Patron
is french for template
or pattern
, but it means also boss
which we found out later (no pun intended).
The entry point of the framework is the Service
. The Service
uses Components
to handle the processing of sync and async requests. The Service
starts by default an HTTP Component
which hosts the /debug
, /alive
, /ready
and /metrics
endpoints. Any other endpoints will be added to the default HTTP Component
as Routes
. Alongside Routes
one can specify middleware functions to be applied ordered to all routes as MiddlewareFunc
. The service sets up by default logging with zerolog, tracing and metrics with Jaeger and prometheus.
Patron
provides abstractions for the following functionality of the framework:
- service, which orchestrates everything
- components and processors, which provide an abstraction of adding processing functionality to the service
- asynchronous message processing (RabbitMQ, Kafka, AWS SQS)
- synchronous processing (HTTP)
- gRPC support
- metrics and tracing
- logging
Patron
provides the same defaults for making the usage as simple as possible.
Patron
needs Go 1.16 as a minimum.
Table of Contents
- [Architecture](docs/Architecture.md)
- [CLI](docs/other/CLI.md)
- Components
- [Async](docs/components/async/Async.md)
- [Kafka](docs/components/async/Kafka.md)
- [AMQP](docs/components/async/AMQP.md)
- [AWS SQS (deprecated)](docs/components/async/AWSSQS.md)
- [HTTP (deprecated)](docs/components/HTTP.md)
- [HTTP v2](docs/components/HTTPv2.md)
- [gRPC](docs/components/gRPC.md)
- [AWS SQS](docs/components/SQS.md)
- [AMQP](docs/components/AMQP.md)
- [Clients](docs/clients/Clients.md)
- Packages
- [Reliability](docs/other/Reliability.md)
- [Observability](docs/observability/Observability.md)
- [Logging](docs/observability/Logging.md)
- [Distributed Tracing](docs/observability/DistributedTracing.md)
- [Caching](docs/other/Caching.md)
- [Encoding](docs/other/Encoding.md)
- [Errors](docs/other/Errors.md)
- [Examples](docs/Examples.md)
- [Code of Conduct](docs/CodeOfConduct.md)
- [Contribution Guidelines](docs/ContributionGuidelines.md)
- [Acknowledgments](docs/ACKNOWLEDGMENTS.md)