Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [long polling] Krótkie pytanie
markonix
post
Post #1





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Powoli zaczynam zapoznawać się z tą technologią bo dużymi krokami zbliża się do mnie konieczność zbudowania komunikatora/czatu o dużej przepustowości.

Zastanawia mnie jednak jedno.
Jak już dobrze zrozumiałem to ta technologia polega na tym, że przeglądarka wysyła żądanie pod podaną stronę (php) i oczekuje na odpowiedź.
Wszystko jest tu dla mnie jasne, zamiast co 3 sekund wysyłać Request HTTP to wysyła go raz i czeka na odpowiedź.

Ale zastanawia mnie co ma się dziać w tym momencie w skrypcie PHP, który np. odpytuje o nowe wiadomości?
Czy tutaj będzie pętla, która co sekundę (sleep) odpytuje bazę o nowe wiadomości?
Jeśli tak to gdzie tu korzyść oprócz zmniejszonej liczby Requestów, które chyba nie są takim obciążaniem jak odpytywanie bazy danych co X sekund?

Ten post edytował markonix 8.10.2012, 20:13:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Po pierwsze, jeśli używasz serwera Apache, to na każdy request HTTP odpala on oddzielny proces - jest to dosyć kosztowna operacja. Po drugie, każdy request składa się z nagłówków zapytania i odpowiedzi - zużywasz niepotrzebnie przepustowość.

Cytat
@sowiq: Apache przy nowym żądaniu tworzy nowy wątek do jego obsługi, nie cały proces.

Zależy, w jakim trybie jest skonfigurowany. Jest też opcja wątkowania.

Cytat
PS. I fb i nk działał/działa na bazie protokołu XMPP (FB na zmodyfikowanym ejabberd). Jednak sprawdzane to było grubo ponad 1,5 roku temu.

Na NK też jest oparte o ejabberd. Rok szukali programistów do erlanga. (IMG:style_emoticons/default/tongue.gif)

Cytat
Niestety nigdy nie myślałem o tym, co powinno się dziać gdy otwarte są dwie czy więcej zakładek bo teraz dźwięk pojawi się X razy z różnym opóźnieniem i zastanawiam się czy właśnie nie wykorzystać tu localStorage? Bo ten ficzer miałeś na myśli?

Prędzej sessionStorage.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 13:29