A microservice toolkit
Clone or download
Latest commit 0ce424e Jan 16, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
api remove cors support Jan 15, 2019
bot Update tests Jan 15, 2019
cli update to match go-micro Jan 10, 2019
cmd remove cors support Jan 15, 2019
internal update readme template Jan 15, 2019
new add go.mod template Nov 22, 2018
plugin again update the readme May 31, 2016
proxy Add the go-proxy Jan 15, 2019
web remove cors support Jan 15, 2019
.compose.yml switch to proxy Apr 5, 2018
.travis.yml bump travis Sep 25, 2018
BACKERS.md remove backer Dec 4, 2018
Dockerfile Use latest version of Alpine instead of 3.2 Oct 29, 2018
LICENSE Move API and CLI into the micro project Apr 7, 2015
README.md update readme Jan 16, 2019
main.go Make micro cmd importable Jul 4, 2017

README.md

Micro License GoDoc Travis CI Go Report Card

Micro is a toolkit for microservice development.

Overview

Micro addresses the key requirements for building scalable systems. It takes the microservice architecture pattern and transforms it into a set of tools which act as the building blocks of a platform. Micro deals with the complexity of distributed systems and provides simple abstractions already understood by developers.

Technology is constantly evolving. The infrastructure stack is always changing. Micro is a pluggable toolkit which addresses these issues. Plug in any stack or underlying technology. Build future-proof systems using micro.

Features

The toolkit is composed of the following features:

  • API Gateway: A single http entry point with dynamic request routing using service discovery. The API gateway allows you to build a scalable microservice architecture on the backend and consolidate serving a public api on the frontend. The micro api provides powerful routing via discovery and pluggable handlers to serve http, grpc, websockets, publish events and more.

  • Interactive CLI: A CLI to describe, query and interact directly with your platform and services from the terminal. The CLI gives you all the commands you expect to understand what's happening with your micro services. It also includes an interactive mode.

  • Service Proxy: A transparent proxy built on Go Micro and the MUCP protocol. Offload service discovery, load balancing, fault tolerance, message encoding, middleware, monitoring and more to a single a location. Run it standalone or alongside your service.

  • Service Templates: Generate new service templates to get started quickly. Micro provides predefined templates for writing micro services. Always start in the same way, build identical services to be more productive.

  • SlackOps Bot: A bot which runs on your platform and lets you manage your applications from Slack itself. The micro bot enables ChatOps and gives you the ability to do everything with your team via messaging. It also includes ability to create slack commmands as services which are discovered dynamically.

  • Web Dashboard: The web dashboard allows you to explore your services, describe their endpoints, the request and response formats and even query them directly. The dashboard also includes a built in CLI like experience for developers who want to drop into the terminal on the fly.

Getting Started

See the docs for detailed information on the architecture, installation and use of the toolkit.

Sponsors

Sixt is an Enterprise Sponsor of Micro

Become a sponsor by backing micro on Patreon. Finding existing backers in BACKERS.md.