Kategorie WWW


Websocket, PHP a real-time komunikace

Po delší době jsem se rozhodl publikovat krátký článek, který se bude možná hodit těm, kdo vyvíjíte weby v PHP a chtěli byste na nich využít obousměrnou komunikaci přes websocket, což na běžných hostingových programech pro PHP projekty není úplně jednoduché.

Pokud programujete dlouhé roky v PHP, asi se vám nechce přecházet na jiné populární jazyky jen pro to, abyste nasadili do projektu novou funkcionalitu, jakou je real-time komunikace přes websocket. A ani to není potřeba, protože jsou řešení, která dokáží nedostatky PHP vyřešit.

Websocket jako služba (IaaS)

Řešením, jak nasadit websocket komunikaci na web v PHP, aniž byste se učili nové programovací jazyky nebo si instalovali vlastní virtuální server s podporou websocketů, je využití infrastruktury jako služby (insfrastructure as a service).

IaaS vám poskytne vše potřebné pro navázání a udržování otevřených websocket spojení s klienty, kteří mají aktuálně zobrazený váš web, nebo spuštěnou aplikaci. Můžete s nimi tedy komunikovat v reálném čase a odesílat klientům data do jejich zařízení, aniž by si o ně požádali, na rozdíl od klasického HTTP nebo AJAX požadavku.

Dost řečí, více činů, jdeme na to

Nemá smysl popisovat věci, které už někdo popsal. Pokud chcete víc informací, je dobré se podívat přímo na služby, a to hned od několika poskytovatelů. Hlavní parametry pro porovnání služeb jsou počet konkurenčních spojení (aktuálně připojených klientů) a počet i velikost zpráv odesílaných před websocket.

Služby pro real-time komunikaci přes websocket

  • WebSocket.cz - český projekt mého kamaráda, doporučuju zkusit
  • Mercure.rocks - Mercure real-time API and websocket communication
  • - Powering realtime experiences for mobile and web
  • - AWS WebSocket APIs in API Gateway
  • - Pie Socket WebSocket Servers

Poskytovatelů websocket IaaS je samozřejmě víc, včetně cloudů jako Google, Azure a další. Stačí pohledat na google výrazy jako "websocket IaaS", "rest API to websocket" a pod. Snad vám podobné služby usnadní integraci websocketů do projektů v PHP, které se vám nechce přepisovat, protože jinak fungují pěkně.

Wed, 20. April 2022 - před 100 týdnyAnonymní­ uživatel

Nový layout

Vím, němělo by se to zakřiknout. Nicméně se musím pochlubit s tím, že se již brzy plánuje úplně nový layout pro můj log.
A tento miničlánek má poukazovat ne něco jiného, interního. Jasně, je to alegorie jak vyšitá :)

Takže zatím děkuji Aničce a Zdenkovy a těšme se :)

Sat, 4. February 2012 - před 631 týdnyArteal

Zastaven vývoj kwick.sysu

Včerejším dnem jsem zastavil vývoj mého CMS - kwick.sys

Stalo se tak, protože jsem se dostal k práci v jiném, leč ne příliš vzdáleném oboru.

Stop vývoje neznamená, že jsem smazal repositář, všechnu dokumentaci a spálil všechny mosty. Pouze jsem potřeboval tento projekt "vyjmout z mé hlavy a odložit na později". Projekt si tedy bude hledat čas, kdy se rozhodnu jak jej nejlépe využít. PHP pro mě není zatím úplně uzavřená kapitola, tudíž kwick možná časem využiji opět k tomu, k čemu sloužil nejlépe - k výuce PHP světa, možná také ne.

Thu, 27. October 2011 - před 645 týdnyArteal

Řešení tree file conflictu v SVN

Jeden příklad, mluvící sám za sebe :) svn: Commit failed (details follow): svn: Item '/branches/kwick/inc/img/icons' is out of date [arteal@shavo kwick]$ svn update inc/img/icons/ C inc/img/icons At revision 54. Summary of conflicts: Tree conflicts: 1 [arteal@shavo kwick]$ svn resolve --accept working inc/img/icons/ Resolved conflicted state of 'inc/img/icons'

Tue, 2. November 2010 - před 696 týdnyArteal

Pánové ze Seznamu mají rozbité klávesnice?

Nejdřív jsem si říkal, že to byl můj překlep, ale když jsem si zpětně přečetl email od firmy.cz(nebo také odkazy.seznam.cz), tak jsem přišel na to, že v seznamu mají asi polámané klávesnice, nebo personál :
Zažádal jsem si o následující odkaz :

URL: http://www.arteal.name
Titulek: Hi, my .name is Arteal!
Popisek: Weblog webdesignového a Arch Linuxového nadšence. Články z prostředí PHP,XHTML,CSS,MySQL

zkopírováno z mailu od Seznamu
Ale v druhém mailu se dozvídáme toto:

odkaz na stránku s URL: http://www.arteal.name
byl přidán do katalogu Seznam.cz v této podobě:
URL: http://www.arteal.name
Titulek: Arteap
Popisek: Weblog pd webdesignového a Arch Linuxového nadšence. Články z prostředí PHP, XHTML, CSS, MySQL.
Kategorie:

Přikládám i odkaz na screenshot
Asi by personál Seznamu měl pít více kávy

Fri, 8. October 2010 - před 700 týdnyArteal

Kdo/co je dweeb?

Pro svůj nový modul do kwick.sysu - sitemap jsem zrovna googloval HTML syntaxi pro seznamy(ul,ol,...) a narazil jsem na krásný příklad, který mě více než svou technickou přínosností pobavil svým obsahem, aneb who is dweeb,hacker and nerd :

Dweeb
young excitable person who may mature into a Nerd or Geek
Hacker
a clever programmer
Nerd
technically bright but socially inept person

Mon, 4. October 2010 - před 700 týdnyArteal

blowfly.eu

Tak dneska jsem spustil testovací verzi webu blowfly.eu - zatím pouze odkazy na hostované projekty, což jsou zatím víceméně jen blogy. Vím, není se čím chlubit... Ale tenhle miničlánek má jiný, skrytý význam ;)
No tak když jsem si všiml, že tento příspěvek z donucení je jubilejní, stý...
Tak se přiznám, že jsem ho musel zplodit protože jsem měl bug v Atom feedu a měl jsem tam staré adresy článku(na domácí doméně work.arteal.name). Proto jsem musel vytvořit článek, aby se feed obnovil :) Ano a jelikož jsem tam měl špatné adresy, ze kterých se dělá uuid, tak se vám teď všechno bude ve čtečce tvářit nejspíš jako nové zprávy :(

Wed, 18. March 2009 - před 780 týdnyArteal

Update blogu a RSS

Tak a mám za sebou další update blogu. Tentokrát se nedotýká jen věcí, které poznám já v administraci, ale jsou tu i uživatelské změny. Jmenovitě :
  • Atom feedy - jak jsem sliboval v minulém článku, vyměnil jsem staré RSS za nový Atom, taky přibyl feed pro komentáře :) Mimo to jsem zavedl "přímý přístup k feedům", takže se už nebudou generovat pokaždé, když si je bude někdo přát, ale jen pokud do nich něco přibude, takže logicky odpadne zbytečná zátěž serveru
  • CAPTCHA - děkuji Vydrusovi a jeho čtenářům za inspiraci, která přišla právě v čas, jelikož spam se nám množil, takže dneska je nasazená jednoduchá CAPTCHA. Snad nikoho neurazí říct "ne", že není bot :)
  • HTML v komentářích - funguje co má, nefunguje co nemá :)Takže užitečné HTML tagy ano, XSS nee.
  • Hlavička v cookie - pokud se nastavíte jiné zvěrstvo v hlavičce než edieho, tka se vám to uloží do CSS a přístě neuvidíte zase jen edieho :D
Taky jsem musel vyhodit některé odkazy(dotčeným se omlouvám), aby to tu nevypadalo jako link farma :)
Takže doufám, že váš přechod z RSS na Atom byl ůspěšný a že využijete HTML v komentářích.

Tue, 17. March 2009 - před 780 týdnyArteal