Packages
Learn about each of the project’s packages to get familiar with the Microbus
codebase.
- application - A collector of microservices that run in a single process and share the same lifecycle
- cfg - Options for defining config properties
- codegen - The code generator
- connector - The primary construct of the framework and the basis for all microservices
- coreservices - Microservices that are required for most if not all apps
- configurator - The configurator core microservice
- control - Client API for the
:888
control subscriptions
- httpegress - The HTTP egress proxy core microservice
- httpingress - The HTTP ingress proxy core microservice
- metrics - The metrics microservice collects metrics from microservices and delivers them to Prometheus and Grafana
- openapiportal - The OpenAPI portal microservice produces a portal page that lists all microservices with open endpoints
- smtpingress - The SMTP ingress microservice listens for incoming emails and fires appropriate events
- dlru - A distributed LRU cache that is shared among all peers of a microservice
- env - Manages the loading of environment variables, with the option of overriding values for testing
- errors - An enhancement of Go’s standard
errors
package that adds stack tracing and status codes
- examples - Demo microservices
- browser is an example of a microservice that uses the HTTP egress core microservice
- calculator demonstrates functional handlers
- directory is an example of a microservice that provides a RESTful CRUD API backed by a database
- eventsink and eventsource shows how events can be used to reverse the dependency between two microservices
- hello demonstrates the key capabilities of the framework
- helloworld demonstrates the minimalist classic example
- messaging demonstrates load-balanced unicast, multicast and direct addressing messaging
- frame - A utility for type-safe manipulation of the HTTP control headers used by the framework
- httpx - Various HTTP utilities
- lru - An LRU cache with limits on age and weight
- openapi - OpenAPI document generator
- pub - Options for publishing requests over the bus
- rand - A utility for generating random numbers and identifiers
- service - Interface definitions of microservices
- sub - Options for subscribing to handle requests over the bus
- trc - Options for creating tracing spans
- timex - Enhancement of Go’s standard
time.Time
- utils - Miscellaneous utility classes and functions