Microservice alternatives and similar packages
Based on the "Web Frameworks" category.
Alternatively, view Microservice alternatives based on common mentions on social networks and blogs.
-
Gin
Gin is a web framework written in Go! It features a martini-like API with much better performance, up to 40 times faster. If you need performance and good productivity. -
go-kit
A Microservice toolkit with support for service discovery, load balancing, pluggable transports, request tracking, etc. -
Iris
High-performance golang web application framework, providing a robust set of features for building modern web applications. -
httprouter
A high performance router. Use this and the standard http handlers to form a very high performance web framework. -
Faygo
Faygo uses the new architecture to make itself the most suitable Go Web framework for developping API. Just define a struct Handler, Faygo will automatically bind, verify the request parameters and generate the online API documentation. -
REST Layer
A framework to build REST/GraphQL API on top of databases with mostly configuration over code. -
Goyave
Feature-complete web framework aimed at clean code and fast development, with powerful built-in functionalities. -
rye
Tiny Go middleware library (with canned Middlewares) that supports JWT, CORS, Statsd, and Go 1.7 context -
ozzo-routing
A high-performance HTTP router and Web framework supporting routes with regular expressions. Comes with full support for quickly building a RESTful API application.
Get performance insights in less than 4 minutes
Do you think we are missing an alternative of Microservice or a related project?
README
Microservice
The framework for the creation of microservices, written in Golang. (note: http microservice)
Architecture microservice includes:
- handle
- tuner (configuration)
- middleware-style tools (for demo)
Create a new Middleware
Use as a example tools/metric.go file.
Creating a new handler
To do this, you just need to create a new public method in the handler, which takes input http.ResponseWriter, http.Request. Look created to demonstrate the method HelloWorld.
Perfomance
For a general understanding of what is the speed of microservice using the proposed architecture will be high, and bring the benchmark results obtained by me on my computer:
- BenchmarkMain-2 10000000 192 ns/op
- BenchmarkMainParallel-2 10000000 104 ns/op
Tuner
The default configuration file:
config.toml
Specify in the command line another file:
yourservice -confile other.toml
To change the setting on the command line, you specify the section and parameter name (composed by a slash):
yourservice -Main/Port 85
Configuring priorities:
- command line (highest priority)
- environment
- configuration file
Dependencies
- Logger https://github.com/Sirupsen/logrus
- Route https://github.com/claygod/Bxog
- Config https://github.com/BurntSushi/toml
Any of these libraries can be replaced or supplemented, in this case, they are likely designed to show which way to develop their own microservices. You might also be useful to connect logstash and influxdb.
Conclusion
Microservice Library does not claim the laurels of the only true solution, but on occasion, I hope, will help you create your own micro-architecture of the service, becoming the prototype for future applications.
Copyright © 2017-2019 Eduard Sesigin. All rights reserved. Contacts: [email protected]