Scripturi rulate automat la interval de milisecunde

PEAR, Smarty, ADOdb, OOP, PHP 5, XML, UML, Şabloane de proiectare, PHP-GTK.

Moderatori: coditza, Emil, Moderatori

Eclipse888
New Member
Mesaje: 4
Membru din: Mie Noi 21, 2012 11:35 am

Scripturi rulate automat la interval de milisecunde

Mesajde Eclipse888 » Mie Noi 21, 2012 12:00 pm

cum as putea sa fac doua update-uri intr-un tabel din baza de date in aceeasi secunda automat din 5 in 5 minute?

-am incercat sa fac 2 scripturi php si sa le rulez cu cron job dar nu-mi ofera precizie prea mare(nu pot seta la ce secunda/milisecunda sa ruleze scripturile);
-am incercat sa fac 2 event-uri in mysql le setez sa faca update-ul in aceeasi secunda dar scriptul care trebuie sa ruleze primul de multe ori ruleaza al doilea;

As avea nevoie de o precizie mai mare ori de o prioritizare pt aceste 2 procese cine are vreo idee as fi fericit sa o impartaseasca, va multumesc!

P.S.
Scuze in caz ca s-a mai discutat despre subiectul asta, eu unul nu am gasit pe forum.



CoBrA90
Average Member
Mesaje: 151
Membru din: Vin Mar 28, 2008 8:16 pm

Re: Scripturi rulate automat la interval de milisecunde

Mesajde CoBrA90 » Mie Noi 21, 2012 12:44 pm

Detaliaza putin si da-ne mai multe detalii despre ceea ce vrei sa faci !

Eclipse888
New Member
Mesaje: 4
Membru din: Mie Noi 21, 2012 11:35 am

Re: Scripturi rulate automat la interval de milisecunde

Mesajde Eclipse888 » Mie Noi 21, 2012 3:35 pm

am un tabel cu :id,army_size,income,money

army_size = 5
income = army_size*50
money = 0

o data la 5 minute trebuie sa incrementez money(money=money+income)
o data la 10 minute trebuie sa incrementez army_size(army_size = army_size+10)

cele 2 scripturi la 10 minute ruleaza amandoua in aceeasi secunda, problema e ca ordinea ar trebui sa fie asa:
primul script: 1)update army_syze

al doilea script: 2)update income(dupa army_syze curent)
3) update money(dupa income curent)

cand fac doua eventuri cu mysql si le pun sa ruleze in aceeasi secunda se intampla sa ruleze cand unul primul cand celalalt iar cu cron job nu pot sa le setez nici macar la secunda sa ruleze...

si ar trebui in momentul cand un user se inregistreaza sa se creeze o noua linie in tabel, id-ul corespunzand cu id-ul userului din tabelul cu useri, si ar trebui ori updatate cele 2 eventuri ori create altele...nu am idee cum ar trebui facut..

ma gandesc k s-ar putea ca logica mea sa nu fie buna si astept alte variante si idei de la mai multa lume,Multumesc

CoBrA90
Average Member
Mesaje: 151
Membru din: Vin Mar 28, 2008 8:16 pm

Re: Scripturi rulate automat la interval de milisecunde

Mesajde CoBrA90 » Mie Noi 21, 2012 4:45 pm

Treaba sta in felul urmator:
- faci un fisier cron job si verifici minuntul:
Daca minutul % 10 == 0 ( inseamna ca intram in categoria la 10 minute ) si faci update la money apoi la army
Daca minutul % 10 == 5 (inseamna ca intram in categoria la 5 minute ) si faci update doar la money

- fisierul il poti rula la 5 minute

Nu cred ca am prezentat exact pe exemplul dat de tine, dar ideea conteaza ! sper ca ai inteles daca nu zi-mi si iti mai explic o data !

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Re: Scripturi rulate automat la interval de milisecunde

Mesajde Birkoff » Mie Noi 21, 2012 5:40 pm

ce vrei tu se poate face dar trebuie sa ai serverul (interpretorul php) setat pe safe mode = off ca sa poti da set_time_limit() pe 0 (sa ruleze scriptul la infinit pana tipa hostul la tine ca le papi resursele)

1) faci un script php in care incluzi ce ai nevoie (setezi la inceput time limit pe infinit)
2) dupa fiecare includere de script setezi sleep() sa stea scriptul cate secunde ai nevoie (sau usleep pentru milisecunde)
3) dupa terminarea rularii fiecarui script inclus sari cu goto() la inceputul scriptului sa repete procedurile
4) rulezi scriptul asta in cron o singura data si in rest va rula in bucla la infinit pana tipa hostul la tine sau pana se restarteaza serverul

atentie la memoria ocupata, atentie sa golesti resursele ocupate dupa fiecare rulare, atentie sa nu ai limita de interogari pe server, atentie sa nu ai alte limitari pe server altfel scriptul nu va functiona corect.
1) )
2)
3) (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Eclipse888
New Member
Mesaje: 4
Membru din: Mie Noi 21, 2012 11:35 am

Re: Scripturi rulate automat la interval de milisecunde

Mesajde Eclipse888 » Mie Noi 21, 2012 6:06 pm


Eclipse888
New Member
Mesaje: 4
Membru din: Mie Noi 21, 2012 11:35 am

Re: Scripturi rulate automat la interval de milisecunde

Mesajde Eclipse888 » Mie Noi 21, 2012 6:21 pm


C0zy
PHPRomania Supporter
Mesaje: 21
Membru din: Dum Iul 08, 2012 9:38 pm
Contact:

Re: Scripturi rulate automat la interval de milisecunde

Mesajde C0zy » Mie Noi 21, 2012 10:04 pm


CoBrA90
Average Member
Mesaje: 151
Membru din: Vin Mar 28, 2008 8:16 pm

Re: Scripturi rulate automat la interval de milisecunde

Mesajde CoBrA90 » Mie Noi 21, 2012 10:27 pm


ViezuREX
Senior Member
Mesaje: 502
Membru din: Joi Dec 13, 2012 1:35 pm

Re: Scripturi rulate automat la interval de milisecunde

Mesajde ViezuREX » Lun Dec 17, 2012 9:30 pm

Am avut o problema de genul asta acum cativa ani ... cu un script care trebuia sa ruleze cate o data in fiecare secunda, problema era ca rularea dura cateva zeci de milisecunde iar cu un sleep odata la 10 secunde pierdeam o secunda.

Intrebarea este cat dureaza rularea scripturilor tale?


Înapoi la “PHP Avansat”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 6 vizitatori