mirror of
https://github.com/go-micro/go-micro.git
synced 2025-01-05 10:20:53 +02:00
af3cfa0a4c
remove unnecessary dependencies between plugins upgrade go-micro.dev/v4 to v4.2.1 |
||
---|---|---|
.. | ||
proto | ||
go.mod | ||
go.sum | ||
grpc_test.go | ||
grpc.go | ||
README.md |
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/asim/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`),
})