GraphQL.cz/Fórum/Nevýhody REST Polling oproti GraphQL Subscription

Nevýhody REST Polling oproti GraphQL Subscription

Zajímalo by mě, jaké jsou konkrétní nevýhody používání REST Polling ve srovnání s GraphQL Subscription. Mám pocit, že REST Polling je takové staromódní a pořád se musí posílat ty dotazy na server, aby se zjistilo, jestli došlo k nějaké změně, což mi přijde dost neefektivní. Navíc se mi zdá, že to může zatěžovat server víc než by mělo, zvlášť když máme hodně uživatelů, kteří se neustále snaží znovu načíst data. Na druhou stranu jsem slyšel, že GraphQL Subscription by tohle všechno mohlo vyřešit efektivněji tím, že umožňuje real-time komunikaci. Takže by mě zajímalo, co konkrétně dělá GraphQL Subscription lepším řešením v porovnání s REST Polling? Jsou tam nějaké zásadní technické rozdíly? A jak to třeba ovlivňuje výkon aplikace nebo uživatelskou zkušenost? Máte někdo zkušenosti s přechodem z REST Polling na GraphQL Subscription? Jaké jste měli problémy nebo výzvy? Díky moc za jakoukoliv pomoc a názory!

145 slov
1.5 minut čtení
21. 7. 2020
Adam Švanda

Jasně, REST Polling má spoustu nevýhod, co se týče efektivity. Jak říkáš, posílání dotazů na server pořád dokola, jen abychom zjistili, jestli se něco změnilo, je fakt staromódní a zatěžuje jak server, tak klienta. Když máš víc uživatelů, tak to může vést k zbytečným požadavkům a zvýšený latenci. Naopak GraphQL Subscription ti umožňuje dostávat aktualizace v reálném čase bez neustálého pingování serveru. To je prostě lepší z pohledu výkonu a uživatelské zkušenosti, protože uživatelé vidí změny okamžitě a nemusí čekat na další reload. Plus to šetří šířku pásma, když se posílají jen změny místo celých datových sad. Měl jsem s tím zkušenosti při přechodu z REST na GraphQL a musím říct, že to byla výzva co se týče nastavení a pochopení nového paradigmatického přístupu, ale výsledný výkon stál za to. Takže pokud plánuješ víc interaktivní aplikaci, tak určitě doporučuji přejít na GraphQL Subscription.

143 slov
1.4 minut čtení
29. 7. 2021
Zdeněk Koudelka

REST Polling má fakt dost nevýhod, hlavně co se týče efektivity. Jak říkáš, furt posílat dotazy na server, abys zjistil, jestli se něco změnilo, je prostě neefektivní. To může zatěžovat server, když máš hodně uživatelů a všichni to dělají. Navíc to může vést k zbytečnému načítání dat, i když žádná změna nenastala. To má vliv na výkon aplikace a zbytečně to zatěžuje síť.

GraphQL Subscription na druhou stranu umožňuje serveru posílat data klientovi jenom když se něco změní. Takže místo toho, abys pořád posílal dotazy, tak jednoduše čekáš na notifikaci od serveru. To šetří šířku pásma a server nemá tolik práce s obsluhou zbytečných požadavků.

Z pohledu uživatelské zkušenosti je to taky lepší. S GraphQL Subscription můžeš mít real-time aktualizace a uživatelé dostanou data okamžitě, což vylepšuje interakci s aplikací. Když jsme přecházeli na GraphQL Subscription v našem projektu, tak jsme měli pár problémů s implementací a laděním, ale celkově to stálo za to. Byla to většina ohledně nastavení WebSocketů a správy stavu klienta, ale nakonec jsme byli spokojení s výsledkem.

171 slov
1.7 minut čtení
29. 4. 2021
Elena Vávrová

REST polling má fakt dost nevýhod, když to porovnáš s GraphQL Subscription. Hlavně ta neefektivita - musíš pořád posílat dotazy na server, jestli jsou nová data, což je časově náročný a zbytečný. To zatěžuje server víc než by mělo, obzvlášť pokud máš hodně uživatelů, kteří neustále pingují. Navíc můžeš dostat starý data, což je u real-time aplikací dost na nic.

GraphQL Subscription tohle všechno řeší tím, že ti umožňuje dostávat data v reálném čase. Když dojde k nějaký změně, server ti pošle notifikaci, takže máš vždycky aktuální info. To výrazně zlepšuje výkon a uživatelský zážitek, protože se vyhneš zbytečnému zatěžování serveru a máš rychlejší reakce.

Osobně jsem zažil přechod z REST polling na GraphQL Subscription a bylo to fakt lepší. První výzvy byly hlavně s nastavením websocketů a správou spojení, ale jakmile jsme to rozchodili, tak už to jelo jako po másle. Uživatelé byli spokojenější, protože měli aktuální data bez zpoždění. Takže jo, určitě doporučuji zvážit ten přechod.

156 slov
1.6 minut čtení
4. 4. 2021
Zdeněk Štefan
GraphQL.cz/Články/GraphQL vs. REST
GraphQL Subscription vs. REST Polling: Jak zvolit správnou strategii?Zkoumání rozdílů mezi GraphQL Subscription a tradičním pollingem v REST API s praktickými příklady a tipy pro výběr vhodné metody.
1000 slov
10 minut čtení
11. 6. 2020
Lucie Kovářová
Přečíst článek
Podobné otázky