*   >> lukeminen koulutus Artikkelit >> tech >> web development

Yksi MySQL Suorituskyky Vihje You Must See

Juoksen parikymmentä sivustoja, aiemmin levinnyt yli kaksi jaettua hosting tilejä. Viime kuussa minun isännät, sekä itsenäisesti sulje minua alas yli hyödyntäen CPU. Oikeudenmukainen tarpeeksi, en usko, että olin väärin tilejä, mutta en tee sääntöjä. Aloin heti etsiä vaihtoehtoja ja päätti Go Daddy omistettu hosting. Hinta oli oikea ja hieman yli $ 100 kuukaudessa sain mukavan palvelimen 2 Gt muistia, 500 Gt kuukausittain kaistanleveyttä, nopea CPU kaikki minun itse, väärin mielestäni fit.Fast innolla UFC 77. Näet Juoksen verkkosivuilla, jotka tekee UFC ennustukset ja UFC tuloksia.

On Fight Night, sivusto voi saada melko kiireinen, minun edellinen korkea oli 18000 kävijää 3 tai niin tuntia, että taistelee tapahtuu. Oma jaettua hosting huomioon koskaan ollut ongelma tässä kuormitus, ainakaan siltä osin kuin olen voinut kertoa. Kuitenkin UFC 77 minun uusi omistettu hosting huomioon minun tarjoilija osui seinään. CPU oli 100% ja oli 200 Apache prosesseja kaikki vying käytettävissä prosessorin ja muistin. Heti aloin etsiä syitä ja ennen kaikkea ratkaisuja. Kolme päivää myöhemmin olen mielestäni useimmat minun answers.

It tärkeää tietää, että Go Daddy ei ollut syyllinen, pyysin laatikko tietty silmälasit ja juuri mitä he antoivat minulle, jossa on kaikki ohjelmistoja he sanoivat. MySQL, PhoP 4.3.9 ja Apache 2.0.52. Joten aloin etsiä (kun palvelin rauhoittunut), mitä oli tapahtumassa, kun käyttäjä pyysi sivu. Ensimmäinen asia, että huomasin, että nykyinen Apache prosessi veisi noin 5% CPU, en kiinnitä huomiota siihen, miten kauan se juoksi. Seuraava asia Huomasin oli, että MySQL olisi myös merkittävä CPU, jos vain lyhyen aikaa. On tärkeää tietää, että aikana UFC 77 MySQL otti noin 50% CPU koko kiireistä aikaa.

Aika etsiä joitakin optimizations.For oma sivusto, jossa on 20000 kävijää 3 tuntia ja ehkä 10 päivityksiä tuona aikana, välimuistia olisi tietenkin hyödyllistä. Huomasin hakee web että Apache on joitakin välimuistin ja jopa paremmin joidenkin min välimuistin, mutta sitä ei pidetä tuotanto valmiiksi 2.0.52 rakentaa että minulla on, niin minä hävittää, että ajatus melko nopeasti. En kuitenkaan huomannut joitakin asioita kun katsoin MySQL optimizations.The tärkein MySQL optimointi että löysin on query_cache_size vaihtoehto.

Näet, MySQL on tämä käsite kyselyn välimuistin, tässä on yksinkertainen selitys. Jos en yksinkertainen kysely, saySELECT CUSTOMER_NAME asiakas- jossa CUSTOMER_ID> 10 (tiedän, typerä kysely) Yleensä tietokanta menee läpi kaikki sen taikuutta ja palauttaa takaisin tulosjoukon kaikkien asiakkaiden nimiä, jotka tunnus: t ovat suurempia kuin 10. Tämän kyselyn se ei kestä kauan, mutta monimutkaisempi kyselyn enää kestäisi.

Kuitenkin MySQL kyselyn välimuistin, tulos että kysely olisi pidettävä muistissa, sekä kyselyn itse, mikä tarkoittaa, että seuraavan kerran saman kyselyn ajettiin tietokanta olisi vain tarkistaa, ettei taulukoita kyselyn on muutettu ja sitten etsiä tuloksen muistiin ja antaa sen takaisin. Tämä on paljon nopeampi. MySQL on kyselyn välimuistiin oletusarvoisesti käytössä, mutta query_cache_size muuttuja on asetettu 0, lähinnä poistamalla ominaisuus. Käynnistä se sinun täytyy tehdä: query_cache_size = 64M in my.

cnfNote: Olen myös kasvanut minun query_cache_limit 4M ja minun thread_cache_size sen 384. On monia muita MySQL vaihtoehtoja, joita voit asettaa parantaa suorituskykyä, etsiä hyvä MySQL kirja tai ehkä minä lähettää joitakin heistä minun avoimen lähdekoodin varikko blogi osoitteessa www.open-source-depot.com/blog.After jossa kyseiset vaihtoehtoja my.cnf sinun täytyy käynnistää MySQL, on se, että olen sellainen kärsimätön ja en pidä uudelleenkäynnistyksen prosesseja menin MySQL komentoriviltä ja asettaa maailmanlaajuinen vaihtoehtoja.

Jostain syystä 64M ei toimi minulle siellä, joten käytin laajennettu (bytes) versioni.e mysql> asettaa yleiset query_cache_size = 60000000, mitä on asetettu, tehdä: mysql>

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 lukeminen koulutus Artikkelit,https://koulutus.nmjjxx.com All rights reserved.