ПредишенСледващото

WEB начинаещ майстор

Със сигурност всеки начинаещ строител WEB е настроена по такъв въпрос - как да се изгради своя собствена база данни, така че, когато натоварването се увеличава WEB сайт, за да работи ефективно и не започне да се забавя. Всъщност, всичко е много проста: забавяне на работата си сайтове, които не се дължат на зареждане на скрипт на процесора, но тъй като на сървъра, MySQL, че не работи добре. И сега ние ще се опитаме да решим този проблем.

Метод MySQL операция ускорение чрез разделяне на данните в таблиците

Да започнем с това ние определяме връзката с MySQL таблици и става ясно, че към момента на влизане в таблицата, например, INSERT, таблицата е блокиран, тъй като скоростта на запис става твърде ниска и състоянието на таблици не им позволява да се чете от данните преди края на процеса на запис. Може да се окаже, че по време на това писание сървъра MySQL, ще бъдат блокирани за дълго време, тъй като една маса, а на останалите скриптове.

Например, по-долу е таблица на новините от този тип:

Всеки път, когато ще бъдат третирани с новината, скрипт показва самата новина и увеличава поле ИЗГЛЕДИ заявка UPDATE маса «НОВИНИ» настроен ИЗГЛЕДИ = ИЗГЛЕДИ + 1, където o =. Съответно броят на актуализации е достатъчно висок, както и всяка актуализация ще блокира маса, както и всички други операции ще се изпълняват, за да се изчака приключването на операцията. Възниква въпросът: ако масата е много голяма и всички процеси започват да се провали поради претоварване, как да се намери изход от тази ситуация? Отговорът е, че вие ​​трябва да направите, вместо една маса и няколко ги класифицират по вид на приложение. Една маса - само за изход, а вторият - за актуализации, например.

Що се отнася до новините, по-добре е да ги държи по съвсем различен маса, която не разполага с поле гледка. По този начин, с новината, на масата се кешира и се показва много бързо, и броенето актуализира таблицата ще се проведе много бързо, тъй като тя ще бъде доста лесно. Това тук е разделението на работни маси помага рационализиране на сървъра MySQL, защото тя е много по-бързо отговори на много малки искания от един дълъг и обемист.

операция ускорение MySQL от ЗАБАВЕНА

Друг полезен съвет относно таблицата се посочва, че за да не се блокира масата е по-добре да се използва ЗАКЪСНЯЛА операция, която помага на сървъра да бъде разклонена целия поток на информация в режим на готовност. Този метод е подходящ за всички видове кумулативни маси, тъй като в този случай тя не е от значение, когато промяната ще действа - веднага или в рамките на няколко секунди.

За всички по-горе, следва да се добави, че операцията на актуализация включва три фази: за търсене, което ще се промени, актуализиране на индекси, както и запис на данни. И ако има индекси, операцията се кешира и изисква малко време за неговото прилагане. И става ясно, че по-голямата част на таблицата ще се забави, когато UPDATE, INSERT се извършва много бързо и се оказва, че работата на главната таблица е възможно само в режим на производство.

Ако го направите SELECT * FROM заявка подкани всички таблици с данни, но това е по-ефективно да се използват точните имена на полета са задължителни скрипт. Възможно е също така да се ускори оттеглянето на използване директива LIMIT.

Освен това, използването на индекс значително ускорява процеса на изходните данни от таблиците. Има определен тип полета за различни записи: тип TINYINT е 1 байт, който е най-бързият, маси MEDIUMINT - бързи таблици с INT, VARCHAR оказва по-бавно CHAR.

Резултатите от MySQL за ускоряване

По този начин, можем да кажем, че за по-голямата част от сайтовете са подходящи за всички гореизброени съвети за използването на MySQL. Човек трябва да се опитаме да се разделят на заден план и интерактивни операции един от друг, както в съдържанието на фона може да се получи ефективно.

Като цяло, най-важното, за да отнеме от този съвет - е, че независимо дали това е операция или маса, всичко, което трябва да се раздели на части, на малките неща, не можете да хвърлят всичко в една таблица, а след това заявки ще бъдат спрени. По-добър начин да се опрости всичко до най-малкия детайл.

Допълнителна информация за

Инструкции с примери за това как необходимостта от правилно с помощта на променливи в PHP

Подкрепете проекта - споделете линка, благодаря!