AMQP vs interní queue rubrika: Návrh

6 Vojta Svoboda
položil/-a 8.2.2018

Připravuji SMS bránu, na kterou budou 2 (nebo více) e-shopů posílat požadavky na odeslání SMS. Eshopy budou na stejném serveru jako SMS brána. Těch SMS může být v jednu chvíli více, než je propustnost SMS brány. Běžně toto řeším pomocí Queue přímo v aplikaci (v tomto případě v SMS bráně), např. pomocí Laravel Queues, které běží na Redisu.

Jakou výhodu by mělo, když bych před SMS bránu předřadil AMQP, třeba RabbitMQ?

Jako jednu z výhod vidím to, že bych nemusel frontu realizovat přímo v SMS bráně. Ta brána by byla jenom konzument fronty z AMQP. V e-shopech bych pak SMS posílal přímo do Rabbita. Těch SMS bran pak může být teoreticky více a můžou se střídat v odbavování.

Výhodu řešení s interní frontou zase vidím v tom, že mě to donutí udělat nějaké jednoduché API na SMS bráně, které bude univerzální i třeba pro externí aplikace, které neběží na stejném serveru a nechtějí řešit žádné fronty, chtějí prostě jenom poslat request na /api/v1/send.

Nějaké výhody/nevýhody co mi unikají? K čemu byste se přiklonili vy?
Díky

odkaz Vyřešeno
12 harrison314
odpověděl/-a 9.2.2018

AMQP nie je komponenet ani fronta je to komunikacny protokol.

Kedze pri odosielani SMS nezalezi na poradi, tak jediny rozdiel by si asi pocitil pri velmi velkom objeme odosielanych SMS-iek a pri tom, ked chces mat tych SMS bran viac s jednym vstupnym bodom.

Nenapisal si ako je v sucasnosti impelemntovana ta interna fronta, ale tu kludne stacila tabulka v databaze, RabbitMQ moze byt na toto owerhed, ktory ti prinie benefit len od urciteho objemu dat. A aj k externej fronte vies napisat jednoduchy vstupny bod pre API (napriklad REST).

Nevyhodou RabbitMQ je zas vysie poziadavky na infrastrukturu, ked uz dal by som ju na samostatny stroj.

Komentáře

  • Vojta Svoboda : Díky za odpověď. Aktuálně fronta ani SMS brána není žádná, to teprve připravuji a právě zvažuji možnosti realizace. SMS nebude nijak extrémně moc, řekněme do 20.000 za měsíc. Bude to ale v dávkách, např. dávka 500 v jednom okamžiku. 9.2.2018
  • harrison314 : Inac urcite pouzi nieco s perzistenciou sprav. 9.2.2018
  • archenroot : Z otazky mi je patrne, ze autor rozumi rozdilu protokol vs broker, ackoli to tam trochu mixuje :-) 16.2.2018

Pro zobrazení všech 2 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.