Pagina 1 din 1

Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 12:00 pm
de Eclipse888
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.

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 12:44 pm
de CoBrA90
Detaliaza putin si da-ne mai multe detalii despre ceea ce vrei sa faci !

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 3:35 pm
de Eclipse888
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

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 4:45 pm
de CoBrA90
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 !

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 5:40 pm
de Birkoff
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.

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 6:06 pm
de Eclipse888

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 6:21 pm
de Eclipse888

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 10:04 pm
de C0zy

Re: Scripturi rulate automat la interval de milisecunde

Scris: Mie Noi 21, 2012 10:27 pm
de CoBrA90

Re: Scripturi rulate automat la interval de milisecunde

Scris: Lun Dec 17, 2012 9:30 pm
de ViezuREX
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?