Mysql
 sql >> база данни >  >> RDS >> Mysql

Чат на живо с PHP и jQuery. Къде да съхраняваме информация? Mysql или файл?

Всеки е дал широк спектър от мнения, но не мисля, че някой наистина е ударил нокътя в главата.

Когато става въпрос за съхранение на данни, количеството данни, скоростта на достъп до тях и няколко други фактора определят коя е най-добрата платформа за съхранение.

Някои хора предложиха да използвате memcached. Сега, въпреки че това е валиден отговор (виможете използвайте го), не мисля, че това е добра идея, единствено въз основа на факта, че memcached съхранява данни в паметта на вашия сървър.

Вашата памет не е за съхранение на данни, тя е за използване на действителните приложения, операционна система, споделени библиотеки и т.н.

Съхраняването на данни в паметта може да причини много проблеми с други работещи в момента приложения. Ако съхранявате твърде много данни във вашата RAM, вашите приложения няма да могат да завършат операциите, които са им възложени.

Въпреки че това е по-бързо от дисково базирана платформа за съхранение, като MySQL, не е толкова надеждно.

Аз лично бих използвал MySQL като вашия двигател за съхранение от страна на сървъра. Това ще намали количеството проблеми, които бихте срещнали, а също така ще направи данните много управляеми.

За да ускоря отговорите на вашите клиенти, бих разгледал стартирането на node на вашия сървър.

Това е така, защото се управлява от събития и не блокира.

Какво означава това?

Е, когато клиент A поиска някои данни, които се съхраняват на твърдия диск, традиционно PHP може да каже на C++, донеси ми тази част от данни, съхранявани в този сектор на твърдия диск. C++ би казал „ок, няма проблем“ и докато върви, за да получи информацията, PHP щеше да седи и да изчака данните да бъдат прочетени и върнати, преди да продължи операциите си, блокиране междувременно всички други клиенти.

С възел е малко по-различно. Node ще каже на ядрото „доведи ми тази част информация и когато приключиш, обади ми се“, и след това продължава да приема заявки от други клиенти, които може да не се нуждаят от достъп до диск.

Така изведнъж, тъй като сме задали обратно извикване на ядрото, не е нужно да чакаме :), щастливи дни.

Разгледайте това изображение:

Това наистина може да е отговорът, който търсите, моля, вижте следното за по-описателна и подробна информация относно това как възелът може да бъде правилният избор за вас:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Обратно на SQL КАТО '%value%'

  2. Съхраняване на кодирани в base64 данни като тип данни BLOB или TEXT

  3. Има ли SQLite еквивалент на DESCRIBE [таблица] на MySQL?

  4. Алтернатива за временна таблица на MySQL в Oracle

  5. MySql избира стойност по подразбиране, ако няма резултати?