Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Socket.IO is een veelgebruikte opensource-bibliotheek voor realtime berichten tussen clients en een server. Het beheren van stateful en permanente verbindingen tussen clients en een server is vaak een bron van frustratie voor Socket.IO gebruikers. Het probleem is acuuter wanneer meerdere Socket.IO exemplaren zijn verspreid over servers.
Azure biedt een volledig beheerde cloudoplossing voor Socket.IO. Deze ondersteuning verwijdert de last van het implementeren, hosten en coördineren van Socket.IO instanties voor ontwikkelaars. Ontwikkelteams kunnen zich vervolgens richten op het bouwen van realtime ervaringen met behulp van vertrouwde API's uit de Socket.IO-bibliotheek.
Vereenvoudigde architectuur
Deze functie verwijdert de noodzaak van een 'adapter'-serveronderdeel bij het uitschalen van een Socket.IO-app, zodat het ontwikkelteam de voordelen van een vereenvoudigde architectuur kan profiteren.
Voordelen van het hosten van een Socket.IO-app zelf
In de volgende tabel ziet u de voordelen van het gebruik van de volledig beheerde oplossing van Azure.
Artikel | Zelf een Socket.IO-app hosten | Socket.IO gebruiken in Azure |
---|---|---|
Implementatie | Door de klant beheerd | Door Azure beheerd |
Hosting | De klant moet voldoende serverbronnen inrichten om permanente verbindingen te onderhouden en te onderhouden | Door Azure beheerd |
Verbindingen schalen | Klant die wordt beheerd met behulp van een onderdeel aan de serverzijde, een adapter genoemd | Azure beheerd met meer dan 100.000 clientverbindingen |
Uptime-garantie | Door de klant beheerd | Azure beheerd met meer dan 99,9 procent uptime |
Beveiliging van bedrijfskwaliteit | Door de klant beheerd | Door Azure beheerd |
Ticketondersteuningssysteem | Niet van toepassing | Door Azure beheerd |
Wanneer u zelf een Socket.IO-app host, maken clients websocket- of long polling-verbindingen rechtstreeks met uw server tot stand. Het onderhouden van dergelijke stateful verbindingen zorgt voor een zware last van uw Socket.IO-server. Deze last beperkt het aantal gelijktijdige verbindingen en verhoogt de berichtlatentie.
Een veelvoorkomende benadering voor het voldoen aan de gelijktijdigheids- en latentievraag is om uit te schalen naar meerdere Socket.IO servers. Voor uitschalen is een onderdeel aan de serverzijde vereist dat een adapter wordt genoemd, zoals de Redis-adapter die de Socket.IO bibliotheek biedt. Een dergelijke adapter introduceert echter een extra onderdeel dat u moet implementeren en beheren. Het vereist ook dat u extra codelogica schrijft om dingen goed te laten werken.
Met Socket.IO in Azure kunt u geen schaalproblemen afhandelen en codelogica implementeren die betrekking hebben op het gebruik van een adapter.
Hetzelfde programmeermodel
Als u een zelf-hostende Socket.IO-app wilt migreren naar Azure, voegt u slechts enkele regels code toe. U hoeft de rest van de toepassingscode niet te wijzigen. Met andere woorden, het programmeermodel blijft hetzelfde en de complexiteit van het beheren van een realtime-app wordt verminderd.