chat - metoda optima - tipic sau server?
Scris: Lun Iun 25, 2007 1:21 pm
ma intereseaza in mod special comunicarea intre 2 useri, dar si chat general
comunicarea dintre useri se face:
A. tipic
a. user1 -> ajax -> php -> db(write)
user2 -> ajax -> php -> db(read)
b. user2 -> ajax -> php -> db(write)
user1 -> ajax -> php -> db(read)
dezavantaje:
- un prieten care e admin de server ni-a spus ca as avea destule probleme cu host-ul deoarece la multi nu le convine sa le mananci mysql-ul cu atatea input/select -uri pe minut(~1 input + 1 select la 6-10 s)
avantaje:
- implementare usoara
B. server chat(server socket-uri php)
a. user1 -> ajax -> server(send)
user2 -> ajax -> server(recive)
b. user2 -> ajax -> server(send)
user1 -> ajax -> server(recive)
- cata memorie ar manca un astfel de server? (este un php care ruleaza neatrerupt si tine datele intern, ca variabile)
- este mai bine un server general sau cate un server pt. fiecare dicutie in parte? (un server general ar trebui sa ruleze tot timpul, un server individual ruleaza doar atata timp cat cei 2 comunica - cu un anume timeout dupa care.. do_some(); exit(); )
dezavantaje:
- implementare mai complexa !?
avantaje:
- nu se mai fac atatea input/select -uri in mysql
- mult mai scurt timpul de raspuns user1 -> user2 si viceversa (asa cred)
astept pareri pro si contra, solutii mai bune, mai optime, ... ce ar putea fi de folos
comunicarea dintre useri se face:
A. tipic
a. user1 -> ajax -> php -> db(write)
user2 -> ajax -> php -> db(read)
b. user2 -> ajax -> php -> db(write)
user1 -> ajax -> php -> db(read)
dezavantaje:
- un prieten care e admin de server ni-a spus ca as avea destule probleme cu host-ul deoarece la multi nu le convine sa le mananci mysql-ul cu atatea input/select -uri pe minut(~1 input + 1 select la 6-10 s)
avantaje:
- implementare usoara
B. server chat(server socket-uri php)
a. user1 -> ajax -> server(send)
user2 -> ajax -> server(recive)
b. user2 -> ajax -> server(send)
user1 -> ajax -> server(recive)
- cata memorie ar manca un astfel de server? (este un php care ruleaza neatrerupt si tine datele intern, ca variabile)
- este mai bine un server general sau cate un server pt. fiecare dicutie in parte? (un server general ar trebui sa ruleze tot timpul, un server individual ruleaza doar atata timp cat cei 2 comunica - cu un anume timeout dupa care.. do_some(); exit(); )
dezavantaje:
- implementare mai complexa !?
avantaje:
- nu se mai fac atatea input/select -uri in mysql
- mult mai scurt timpul de raspuns user1 -> user2 si viceversa (asa cred)
astept pareri pro si contra, solutii mai bune, mai optime, ... ce ar putea fi de folos