1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/scottkiss-kaca

Клонировать/Скачать
README.md 1.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 16.03.2025 19:03 c11e88f

О системе KACA

система публикации/подписки на основе протокола WebSocket

Начало работы

go get github.com/scottkiss/kaca

Сервер

package main

import (
	"github.com/scottkiss/kaca"
)

func main() {
	// Установите значение true для проверки источника
	kaca.ServeWs(":8080", true)
}

Клиент публикации/подписки

package main

import (
	"fmt"
	"github.com/scottkiss/kaca"
	"time"
)

func main() {
	producer := kaca.NewClient(":8080", "ws")
	consumer := kaca.NewClient(":8080", "ws")
	consumer.Sub("say")
	consumer.Sub("you")
	consumer.ConsumeMessage(func(message string) {
		fmt.Println("consume =>" + message)
	})
	time.Sleep(time.Second * 2)
	producer.Pub("you", "world")
	producer.Pub("say", "hello")
	time.Sleep(time.Second * 2)
}

Клиент рассылки

package main

import (
	"fmt"
	"github.com/scottkiss/kaca"
	"time"
)

func main() {
	producer := kaca.NewClient(":8080", "ws")
	consumer := kaca.NewClient(":8080", "ws")
	c2 := kaca.NewClient(":8080", "ws")
	c2.ConsumeMessage(func(message string) {
		fmt.Println("c2 consume =>" + message)
	})
	consumer.Sub("say")
	consumer.Sub("you")
	consumer.ConsumeMessage(func(message string) {
		fmt.Println("consume =>" + message)
	})
	time.Sleep(time.Second * 2)
	producer.Broadcast("broadcast...")
	time.Sleep(time.Second * 2)
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/scottkiss-kaca.git
git@api.gitlife.ru:oschina-mirror/scottkiss-kaca.git
oschina-mirror
scottkiss-kaca
scottkiss-kaca
master