PubSub

ΠŸΠ°Ρ‚Ρ‚Π΅Ρ€Π½ PubSub(Publisher-Subscriber) являСтся Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠ΅ΠΉ Observer. ВзаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ происходит Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°Π½Π°Π» связи Event channel. Publisher отправляСт события Π² event channel. Subscriber подписываСтся Π½Π° Π½ΡƒΠΆΠ½ΠΎΠ΅ события ΠΈ ΠΆΠ΄Π΅Ρ‚ Π΅Π³ΠΎ поступлСния Π² event channel.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ классичСским Observer ΠΈ PubSub являСтся слабая ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ(loose coupling). Publisher ΠΈ Subscriber Π² PubSub Π½Π΅ Π·Π½Π°ΡŽΡ‚ ΠΎ сущСствованиС Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ Observer ΠΈ Subject.

ΠŸΠ°Ρ‚Ρ‚Π΅Ρ€Π½ PubSub ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для асинхронного взаимодСйствия Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² систСмС. Π’ качСствС event channal ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ Π±Ρ€ΠΎΠΊΠ΅Ρ€ΠΎΠΌ, шин событий ΠΈ ΠΏΡ€(broker, message broker,event bus, …)

Python

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования этого ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π° Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°ΠΊΠ΅Ρ‚ PyPubSub: https://github.com/IkeMurami-Examples/pypubsub-example

Last updated