sql >> Databasteknik >  >> RDS >> Mysql

Livechatt med PHP och jQuery. Var lagrar man information? Mysql eller fil?

Alla har gett ett brett spektrum av åsikter men jag tror inte att någon har slagit huvudet på spiken.

När det kommer till att lagra data avgör mängden data, hur snabbt den ska nås och flera andra faktorer vad som är den bästa lagringsplattformen.

Vissa har föreslagit att man använder memcached. Nu även om detta är ett giltigt svar (du kan använder det), tror jag inte att detta är en bra idé, enbart baserat på det faktum att memcached lagrar data i din servers minne.

Ditt minne är inte för datalagring, det är för användning av de faktiska applikationerna, operativsystemet, delade biblioteken, etc.

Att lagra data i minnet kan orsaka många problem med andra program som körs för närvarande. Om du lagrar för mycket data i ditt RAM-minne skulle dina applikationer inte kunna slutföra operationer som tilldelats dem.

Även om detta är snabbare än en diskbaserad lagringsplattform som MySQL, är det inte lika pålitligt.

Jag skulle personligen använda MySQL som serversidan för din lagringsmotor. Detta skulle minska mängden problem du skulle stöta på och gör också data mycket hanterbar.

För att snabba på svaren till dina kunder skulle jag titta på att köra nod på din server.

Detta beror på att det är händelsedrivet och icke-blockerande.

Vad betyder det?

Tja, när klient A begär data som lagras på hårddisken, kan PHP traditionellt säga till C++, hämta mig den här biten av data lagrad på den här delen av hårddisken. C++ skulle säga "okej inga problem", och medan det går ut för att få informationen skulle PHP sitta och vänta på att data ska läsas och returneras innan den fortsätter sin verksamhet, blockering alla andra kunders under tiden.

Med nod är det lite annorlunda. Node kommer att säga till kärnan, 'hämta mig den här biten av information och när du är klar, ring mig', och sedan fortsätter den att ta förfrågningar från andra klienter som kanske inte behöver diskåtkomst.

Så plötsligt eftersom vi har tilldelat en återuppringning till kärnan behöver vi inte vänta :), glada dagar.

Ta en titt på den här bilden:

Detta kan verkligen vara svaret du letar efter, se följande för mer beskrivande och detaljerad information om hur nod kan vara rätt val för dig:



  1. PHP &MYSQL:använder bcrypt-hash och verifierar lösenord med databas

  2. Hur kan jag ta bort dubbletter av rader?

  3. MySQL automatiskt lagra datumtid för varje rad

  4. En översikt över SQL Join-typer med exempel