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

Как да оптимизирам съхраняването и извличането от огромен списък в php?

  1. Пагиниране/Мързеливо зареждане

    Никога не зареждайте всички елементи наведнъж. Накарайте ги да се зареждат постепенно. Пример от реалния живот са Facebook и Twitter. Зарежда само определено количество елементи, след което, когато стигнете до дъното или щракнете върху „зареди още“, зарежда следващите N елемента или Google, който показва само N елемента на страница от милиард възможни резултата.

  2. Използвайте JSON

    Тези дни все още виждам хора да връщат форматиран HTML в AJAX заявки - не правете това. Накарайте вашия сървър да зареди началната страница (която има начален HTML), а останалата част в JSON чрез AJAX. Накарайте някой шаблонен скрипт от страна на клиента да създаде HTML вместо вас, когато пристигнат JSON данните. Това ви спестява честотна лента и време за изтегляне.

  3. Използване на компресия

    Доста очевидно е защо трябва да използвате компресия.

  4. Заредете само задължителните полета в SQL

    Често пъти зареждате всички колони, защото "може да са полезни някой ден" - не. Ако искате да заредите набор от прякори, накарайте SQL да зареди само псевдонимите. Разбира се, полето за първичен ключ винаги се изисква за сдвояване, така че в този случай 2 колони.

И виждайки, че това е само връзка 1 към 1 между псевдонима и лицето, запазете го в същата таблица. Няма нужда да е в друга таблица. Това ви спестява от операция JOIN.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel актуализира/редактира с помощта на цикъл foreach

  2. MySql логическа оптимизация

  3. PHP 7.2.2 + mysql 8.0 PDO дава:метод за удостоверяване, неизвестен на клиента [caching_sha2_password]

  4. MySql актуализира две таблици наведнъж

  5. SQLSTATE[23000]:Нарушение на ограничението за целостта:1048 Колона „публикация“ не може да бъде нула