От доста години се говори за “новия уеб”, било то 2.0 или 3.0. Основното за което се споменава е ключовата дума Realtime. Доста мотивирано от twitter и едновременно, объркащо, защото на практика, уеба в момента е доста далеч от realtime. Използват се разни хакове, като Comet или дори Flash и FMS.
Преди известно време се видя светлината в тунела – WebSockets (HTML5). И някак си, съвпадение с това, че ми се наложи да пиша курсова по курс в NBU, реших да си поиграя с тях. Ето и впечатленията ми…
1. В момента се поддържа само от Google Chrome (latest version).
2. Спецификацията не е завършена, т.е. ако напишете нещо и работи днес… не значи, че ще работи утре.
3. Нещо не се знае как ще се връзва към WebSocket сървъра, при положение, че потребителя си е сложил Proxy. Самият аз не успях да го накарам да мине през такова и за това се наложи да debugвам с network sniffer (big shit).
4. Уж идеята е да работи максимално “транспарентно”, но не се лъжете по това което четете в buzz сайтовете – НЕ работи транспарентно. Има си протокол, съобщенията започват с 0×00 и завършват с 0xff. Всичко между тях трябва да е в UTF-8. Докато писах сървъра (базиран на nanoserv) имах доста голям проблем с превключването на протоколите…handshake-a става през HTTP, после изведнъж започвате някакъв нов формат, ужас е.
5. За да е още по-весело… още не е ясно как ще се обменят данни различни от текст (пр. binary).
6. Работи много бързо, но зависи от вас колко ще е realtime, защото трябва да си напишете собствен сървър и тук нещата се усложняват (от гледна точка на performance/speed).
7. Едва дали ще работи на shared hosting-и. Въпреки, че вече има прототипи с apache modules изисква background процес, така че предполагам ще ви трябва VPS/dedicated.
8. Както споменах по-горе, ако искате да debug-вате… помислете за network sniffer, няма друга опция (поне не в google chrome).
Това са няколкото неща, с които се сблъсках последната седмица. Надявам се по-скоро, да ги интегрират и в другите браузъри, защото определено ще открият нови хоризонти за нас, уеб разработчиците.
В случай, че искате да тествате приложението: http://phpchat.demos.mylo.bg/ (да се има предвид, че все някога ще спра сървъра…ако някой проявява интерес от кода, може да му го пратя).
Също ще ми е интересно, ако някой ги е ползвал, да си каже и неговото мнение/проблеми и т.н.