Skip to content

Latest commit

 

History

History
46 lines (29 loc) · 1.92 KB

README.md

File metadata and controls

46 lines (29 loc) · 1.92 KB

BOP Microservice framework

Build Status codecov godoc

BOP is a light weight micro-service framework written in Go. It relies on RPC patterns using gnatsd as an rpc broker.

Development

In order to play with the code you will need to have golang installed and gnatsd

Architecture

The framework is built around the gnatsd message broker. This is a lightweight simple and blazing fast broker. We take advantage of its native queueing features as well as its request-reply model.

Trying it out

Download the repo then run gnatsd, now you can start the greeter server and try the simple client.

If you run gnatsd on any other address or port then set the env var NATS_HOST

Starting the server:

cd $GOPATH/src/github.com/kynrai/bop/examples/greeter_server
go run main.go

Run the client:

cd $GOPATH/src/github.com/kynrai/bop/examples/greeter_client
go run main.go

Tracing

BOP comes with tracing out the box, if no app server is declared then no traces will be visible as it will default to the opentracing noop server. The examples show how traving might work with appdash. See the opentracing documentation for more information

Acknowledgments

This project has been inspired by my own work and works of others across the open source community. Notable sources of inspiration cames from the following:

go-mciro A microservice ecosystem

gnatsd The messaging system

Micro on Nats Talk from the creator of go-micro on using nats as a transport