AMQP vs interní queue rubrika: Návrh

7 Vojta Svoboda
položil/-a 8.2. 16:51

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
16 harrison314
odpověděl/-a 9.2. 9:00

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. 10:08
  • harrison314 : Inac urcite pouzi nieco s perzistenciou sprav. 9.2. 11:49
  • archenroot : Z otazky mi je patrne, ze autor rozumi rozdilu protokol vs broker, ackoli to tam trochu mixuje :-) 16.2. 22:48

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.