diff options
Diffstat (limited to 'weed/mq')
| -rw-r--r-- | weed/mq/README.md | 4 | ||||
| -rw-r--r-- | weed/mq/broker/brokder_grpc_pub.go | 16 |
2 files changed, 20 insertions, 0 deletions
diff --git a/weed/mq/README.md b/weed/mq/README.md index d4e2d5843..6a641c009 100644 --- a/weed/mq/README.md +++ b/weed/mq/README.md @@ -25,6 +25,10 @@ SeaweedMQ is designed for use cases that need to: * Pass messages by reference instead of copying. * Clients can optionally upload the messages first and just submit the references. * Drastically reduce the broker load. +* Stateless brokers + * All brokers are equal. One broker is dynamically picked as the leader. + * Add brokers at any time. + * Allow rolling restart brokers or remove brokers at a pace. # Design diff --git a/weed/mq/broker/brokder_grpc_pub.go b/weed/mq/broker/brokder_grpc_pub.go new file mode 100644 index 000000000..a26be5171 --- /dev/null +++ b/weed/mq/broker/brokder_grpc_pub.go @@ -0,0 +1,16 @@ +package broker + +import ( + "github.com/seaweedfs/seaweedfs/weed/pb/mq_pb" +) + +/* +The messages is buffered in memory, and saved to filer under + /topics/<topic>/<date>/<hour>/<segment>/*.msg + /topics/<topic>/<date>/<hour>/segment + /topics/<topic>/info/segment_<id>.meta +*/ + +func (broker *MessageQueueBroker) Publish(stream mq_pb.SeaweedMessaging_PublishServer) error { + return nil +} |
