Слияние кода завершено, страница обновится автоматически
kiteq-client-go — это клиент на Go для kiteq
kiteq/
├── README.md
├── log конфигурация log4go
├── benchmark Benchmark программы для KiteQ
├── client клиент KiteQ
Для KiteQClient требуется реализация слушателя сообщений, мы определили следующий интерфейс:
type IListener interface {
// Обработчик получения сообщения
OnMessage(msg *protocol.StringMessage) bool
// Обработчик транзакций
// Все транзакции считаются неудачными, если они явно не были успешно завершены
// Любое исключение или возврат значения false указывает на отсутствие подтверждения
OnMessageCheck(tx *protocol.TxResponse) error
}
Запуск Producer:
producer := client.NewKiteQClient(${zkhost}, ${groupId}, ${password}, &defaultListener{})
producer.SetTopics([]string{"trade"})
producer.Start()
// Создание сообщения
msg := &protocol.StringMessage{}
msg.Header = &protocol.Header{
MessageId: proto.String(client.MessageId()),
Topic: proto.String("trade"),
MessageType: proto.String("pay-succ"),
ExpiredTime: proto.Int64(time.Now().Unix()),
DeliveryLimit: proto.Int32(-1),
GroupId: proto.String("go-kite-test"),
Commit: proto.Bool(true)}
msg.Body = proto.String("echo")
// Отправка сообщения
producer.SendStringMessage(msg)
Запуск Consumer:
consumer := client.NewKiteQClient(${zkhost}, ${groupId}, ${password}, &defaultListener{})
consumer.SetBindings([]*binding.Binding{
binding.Bind_Direct("s-mts-test", "trade", "pay-succ", 1000, true),
})
consumer.Start()
Готово! Выполнена функциональность публикации и подписки на сообщения...
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )