diff --git a/pubsub/README.md b/pubsub/README.md index c10e554..673153e 100644 --- a/pubsub/README.md +++ b/pubsub/README.md @@ -5,11 +5,12 @@ В файле [pubsub.go](./pubsub.go) заданы интерфейсы `PubSub`/`Subscription` с подробным описанием всех методов. Требования к системе: - - На один топик может подписываться (и отписываться) множество подписчиков - - FIFO для сообщений, вы не должны терять их порядок - - Один медленный подписчик не должен тормозить остальных - - Метод Close должен уважать переданный контекст, так если он отменен - выходим, inflight сообщения выбрасываем - - Если будут использоваться горутины - они не должны течь :) + +- На один топик может подписываться (и отписываться) множество подписчиков. +- FIFO для сообщений, вы не должны терять их порядок. +- Один медленный подписчик не должен тормозить остальных. +- Метод Close должен уважать переданный контекст, так если он отменен - выходим сразу, бегущие хендлеры оставляем бежать. +- Если будут использоваться горутины - они не должны течь :) Нужно написать реализацию и конструктор (см. [my_pubsub.go](./my_pubsub.go)): ```