Hoi,
Ik heb geen beschikking over cronjobs,
en elk uur voert mijn site een groot aantal scripts uit waarbij hij langs alle gebruikers gaat.

hierdoor komt het wel eens voor dat de pagina dan niet laadt, omdat hij er te lang over doet om de scripts uit te voeren denk ik.
is er een manier om de pagina te laten laden terwijl de scripts nog bezig zijn?

Grtz,

Alex
@Blance:

Dat werkt dus NIET, je kan niet pas updaten als iemand inlogd en/of de pagina aanroept, sinds je ook te maken hebt met de andere spelers die geupdate gegevens nodig hebben.

Ik weet ook niet zo goed wat een mogelijke oplossing is. Omdat je geen cronjobs kan gebruiken zal je iets moeten proberen met een 'tijd' script op een database. Dat je dus zeg maar elke keer controleerd wanneer er is geupdate mocht dat langer dan een uur zijn, dan roept de server jouw update script aan.
Als iemand een actie uitvoert of een werker naar de goudmijn stuurt IS dit toch al geupdate of niet? en als iemand weer zijn werker weghaalt IS dit toch al veranderd in de database?en dat het kan klopt..

maar die server waar jij het over hebt zal wel cronjobs kunnen gebruiken..


en op de andere..


en als jij in 1 script de complete database wilt updaten ja dat gaat wel even duren.. is het niet verstandiger om dit op te splitsen in onderdelen die elkaar aanroepen als ze zelf zijn gefinished..

kzet het maar veel simpeler dan het is hoor maar ik bedoel het volgende principe:

eerst ga je updaten ja noem maar wat..

de health van de spelers.. als die klaar is het goud.. dan blablabla
dan krijg je een ketting van scripts die het zooitje updaten

snapje?

dan heb je kortere en waarschijnlijk gaat het dan ook veel sneller.. dingen die de gebruikers niet direct zien of nodig hebben.. bewaar je voor het laatst.. maar uiteindelijk is alles geupdate zonder dat alles hangt of dat iedereen moet wachten..
Ik kan mij voorstellen dat jij de queries / tabbelen niet helemaal optimaal gemaakt hebt.
Kijk daar eerst eens naar, dat scheelt je namelijk altijd weer
daar doet de server er gewoon wat langer over om te updaten (ranks update duurt 5 minuten) maar de ranks van alle 50,000 spelers worden wel geupdate,

1) Een query van 5 minuten voor 50.000 records, dat is niet overdreven snel. 'Erg langzaam' is een beter begrip.
2) Wie heeft deze 50.000 gegevens op dat moment nodig? Het lijkt mij sterk dat er iemand is die alle 50.000 records langs gaat lopen.
3) Ik zou in PostgreSQL triggers inbouwen om de de benodigde records, en dat zijn er geen 50.000, bij te werken.
4) Voor dit soort zaken heb je nooit cron-jobs nodig. punt.
@klaasjan
ja dat ook zeker weten
daarom snapte ik dit ook niet helemaal

Reageren