1
0
mirror of https://github.com/go-micro/go-micro.git synced 2025-01-05 10:20:53 +02:00
go-micro/plugins/broker/grpc
2020-12-26 15:32:45 +00:00
..
proto add all the plugins 2020-12-26 15:32:45 +00:00
go.mod add all the plugins 2020-12-26 15:32:45 +00:00
go.sum add all the plugins 2020-12-26 15:32:45 +00:00
grpc_test.go add all the plugins 2020-12-26 15:32:45 +00:00
grpc.go add all the plugins 2020-12-26 15:32:45 +00:00
README.md add all the plugins 2020-12-26 15:32:45 +00:00

GRPC Broker

The grpc broker is a point to point grpc broker.

Overview

This broker is like the built in go-micro http2 broker except it uses grpc and protobuf as the protocol and messaging format. It uses the go-micro registry to subscribe to a topic, creating a service for that topic. Publishers lookup the registry for subscribers and publish to them, hence point to point.

Usage

import (
	"github.com/micro/go-micro/plugins/broker/grpc"
)

// create and connect (starts a grpc server)
b := grpc.NewBroker()
b.Init()
b.Connect()

// subscribe
sub, _ := b.Subscribe("events")
defer sub.Unsubscribe()

// publish
b.Publish("events", &broker.Message{
	Headers: map[string]string{"type": "event"},
	Body: []byte(`an event`),
})