Archívum - Okt 1, 2013 - Fórum téma
Long-polling terheléscsökkentés
Sziasztok!
Adott egy weboldal, ami long-pollinggal kérdez le információt a szerverről (pl. az új levelek, értesítések számát). Ha a felhasználó sok lapot nyit meg, akkor indokolatlanul sok párhuzamos kérést küld a szerver felé, miközben mindegyik lap ugyanazt a választ kapja meg - tehát elég lenne, ha egyszerre csak egy lapon történne AJAX-hívás.
A lekérések párhuzamosságát wildcard DNS-bejegyzés (*.example.com) biztosítja, így mindegyik egy véletlenszerű aldomainre mutat, tehát a böngésző nem korlátozza a párhuzamos lekéréseket.
Kérdésem, hogy szerintetek mi lenne a legjobb megoldás, hogy ilyen esetekben csökkenthessük a terhelést? A lapok egymás közti kommunikációjához süti, LocalStorage vagy SessionStorage merülhet fel (bár csak az előbbi kompatibilis a régebbi böngészőkkel). Egy lekérés küldésekor a szkript menthetné a böngészőben, hogy mikor indította a lekérést, és egy másik lapon csak akkor indul lekérés, ha ez régebben történt, mint a long-polling maximális hossza (sikernél vagy sikertelenségnél pedig törlődik az időbélyeg). Ha a felhasználó az éppen lekérést indító lapfület zárja be, akkor itt lehet kiesés, de a szkript akár másodpercenként is felülírhatja az időbélyeget, így ez kiküszöbölhető. A szervertől kapott válasz pedig szintén mentésre kerülne sütibe vagy SessionStorage-be, így az inaktív lapok ennek aktuális értékére támaszkodnának.
A felhasználónkénti terhelés csökkentése nélkül, ha mindenki megnyit 10 lapot, akkor néhány tíz látogató egyidejű bejelentkezése esetén már el is érnénk a szerver maximális párhuzamos kiszolgálási kapacitását.
Mit gondoltok?
Válaszotokat előre is köszönöm,
Ádám
■ Adott egy weboldal, ami long-pollinggal kérdez le információt a szerverről (pl. az új levelek, értesítések számát). Ha a felhasználó sok lapot nyit meg, akkor indokolatlanul sok párhuzamos kérést küld a szerver felé, miközben mindegyik lap ugyanazt a választ kapja meg - tehát elég lenne, ha egyszerre csak egy lapon történne AJAX-hívás.
A lekérések párhuzamosságát wildcard DNS-bejegyzés (*.example.com) biztosítja, így mindegyik egy véletlenszerű aldomainre mutat, tehát a böngésző nem korlátozza a párhuzamos lekéréseket.
Kérdésem, hogy szerintetek mi lenne a legjobb megoldás, hogy ilyen esetekben csökkenthessük a terhelést? A lapok egymás közti kommunikációjához süti, LocalStorage vagy SessionStorage merülhet fel (bár csak az előbbi kompatibilis a régebbi böngészőkkel). Egy lekérés küldésekor a szkript menthetné a böngészőben, hogy mikor indította a lekérést, és egy másik lapon csak akkor indul lekérés, ha ez régebben történt, mint a long-polling maximális hossza (sikernél vagy sikertelenségnél pedig törlődik az időbélyeg). Ha a felhasználó az éppen lekérést indító lapfület zárja be, akkor itt lehet kiesés, de a szkript akár másodpercenként is felülírhatja az időbélyeget, így ez kiküszöbölhető. A szervertől kapott válasz pedig szintén mentésre kerülne sütibe vagy SessionStorage-be, így az inaktív lapok ennek aktuális értékére támaszkodnának.
A felhasználónkénti terhelés csökkentése nélkül, ha mindenki megnyit 10 lapot, akkor néhány tíz látogató egyidejű bejelentkezése esetén már el is érnénk a szerver maximális párhuzamos kiszolgálási kapacitását.
Mit gondoltok?
Válaszotokat előre is köszönöm,
Ádám
cron job
Sziasztok,
segitséget szeretnék mert el akadtam, egy hostingon van egy crm portálom és fetch mailt használok amihez szükséges l efuttatni a cron.php scriptet.
Eddig saját szerveren volt a portál és ott crontab -ban simán tudtam ütemezni a feladatot de itt a hostingon web cron van csak amibe ha beirom az elérési utat csak pörög az oldal de semmi nem történik.
Az eddigi parancsom igy nézett ki:
5 * * * * php /webservice/cron.php –auth_user=username –auth_pwd=password! –status_only=1
ezt hogyan tudnám megoldani online?
Elöre is köszönöm!
■ segitséget szeretnék mert el akadtam, egy hostingon van egy crm portálom és fetch mailt használok amihez szükséges l efuttatni a cron.php scriptet.
Eddig saját szerveren volt a portál és ott crontab -ban simán tudtam ütemezni a feladatot de itt a hostingon web cron van csak amibe ha beirom az elérési utat csak pörög az oldal de semmi nem történik.
Az eddigi parancsom igy nézett ki:
5 * * * * php /webservice/cron.php –auth_user=username –auth_pwd=password! –status_only=1
ezt hogyan tudnám megoldani online?
Elöre is köszönöm!
Idő alapú projekt költség kimutatás forráskódban eltöltött fejlesztési idő alapján
Sziasztok!
Régen jártam már nálatok, sok minden megváltozott az életünkben azóta... :)
Ismertek olyan rendszert, alkalmazást, ami a fejlesztés közben adatokat gyűjt a projektről azzal a céllal, hogy idő alapú költség kimutatást lehessen készíteni a projekt (akár legkisebb) egységeire?
Gondolok itt arra, hogy projekt befejeztével meg lehessen nézni, hogy egy controller-re vagy egy view-ra, vagy akár egy controller adott funkciójára összesen mennyi időt fordított a fejlesztő?
Nem volna utolsó szempont az sem, ha tudná a rendszer egységeit task-oknak kezelni. Például ha létrehozok egy új controller osztályt, akkor az egészen addig nyitott task, amíg azt befejezettnek nem jelölöm. Vagy funkció egy controlleren belül (vagy akár egy virew, model).
Remélem nem kérdeztem nagy baromságot.
Egy kicsit tudatosabban kellene foglalkoznunk a tervezéssel és a fejlesztésre szánt idők megbecsülése helyett inkább mérnék meglévő projektekben, amely adatok jelentősen megkönnyítenék az újabb projekt időigényének meghatározását.
Válaszaitokat előre is köszönöm!
■ Régen jártam már nálatok, sok minden megváltozott az életünkben azóta... :)
Ismertek olyan rendszert, alkalmazást, ami a fejlesztés közben adatokat gyűjt a projektről azzal a céllal, hogy idő alapú költség kimutatást lehessen készíteni a projekt (akár legkisebb) egységeire?
Gondolok itt arra, hogy projekt befejeztével meg lehessen nézni, hogy egy controller-re vagy egy view-ra, vagy akár egy controller adott funkciójára összesen mennyi időt fordított a fejlesztő?
Nem volna utolsó szempont az sem, ha tudná a rendszer egységeit task-oknak kezelni. Például ha létrehozok egy új controller osztályt, akkor az egészen addig nyitott task, amíg azt befejezettnek nem jelölöm. Vagy funkció egy controlleren belül (vagy akár egy virew, model).
Remélem nem kérdeztem nagy baromságot.
Egy kicsit tudatosabban kellene foglalkoznunk a tervezéssel és a fejlesztésre szánt idők megbecsülése helyett inkább mérnék meglévő projektekben, amely adatok jelentősen megkönnyítenék az újabb projekt időigényének meghatározását.
Válaszaitokat előre is köszönöm!