You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.3 KiB
59 lines
1.3 KiB
package main
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"github.com/seaweedfs/seaweedfs/weed/pb"
|
|
"github.com/seaweedfs/seaweedfs/weed/pb/mq_pb"
|
|
"google.golang.org/grpc"
|
|
"google.golang.org/grpc/credentials/insecure"
|
|
)
|
|
|
|
func main() {
|
|
|
|
err := pb.WithBrokerGrpcClient(true,
|
|
"localhost:17777",
|
|
grpc.WithTransportCredentials(insecure.NewCredentials()),
|
|
func(client mq_pb.SeaweedMessagingClient) error {
|
|
pubClient, err := client.Publish(context.Background())
|
|
if err != nil {
|
|
return err
|
|
}
|
|
if initErr := pubClient.Send(&mq_pb.PublishRequest{
|
|
Message: &mq_pb.PublishRequest_Init{
|
|
Init: &mq_pb.PublishRequest_InitMessage{
|
|
Topic: &mq_pb.Topic{
|
|
Namespace: "test",
|
|
Name: "test",
|
|
},
|
|
Partition: &mq_pb.Partition{
|
|
RangeStart: 0,
|
|
RangeStop: 1,
|
|
RingSize: 1,
|
|
},
|
|
},
|
|
},
|
|
}); initErr != nil {
|
|
return initErr
|
|
}
|
|
|
|
for i := 0; i < 10; i++ {
|
|
if dataErr := pubClient.Send(&mq_pb.PublishRequest{
|
|
Message: &mq_pb.PublishRequest_Data{
|
|
Data: &mq_pb.DataMessage{
|
|
Key: []byte(fmt.Sprintf("key-%d", i)),
|
|
Value: []byte(fmt.Sprintf("value-%d", i)),
|
|
},
|
|
},
|
|
}); dataErr != nil {
|
|
return dataErr
|
|
}
|
|
}
|
|
return nil
|
|
})
|
|
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
|
|
}
|