Jagatud veebimajutuses, näiteks Virtuaal.com-i keskkondades, kuvatakse „Select PHP Version” ekraanil sageli vaikimisi PHP memory_limit väärtus, mis on madalam kui maksimaalselt võimalik. Käesolev artikkel selgitab, miks on vaikimisi määratud madalam memory_limit ning millised on selle tõstmise võimalikud tagajärjed.
PHP memory_limit piirab maksimaalse mälukoguse, mida üks PHP-skript võib oma täitmise ajal kasutada. See toimib kaitsemehhanismina, et üksik skript ei kasutaks ära kõiki serveri ressursse ja ei põhjustaks sellega terve serveri ebastabiilsust.
Vaikimisi seadistab Virtuaal.com konservatiivse memory_limit’i, et kõigil jagatud serveris olevatel kasutajatel oleks piisavalt ressursse ja serveri üldine tervis püsiks hea. Enamiku kodulehekülgede ja veebirakenduste tüüpiliste koormuste korral on see piirang täiesti piisav.
PHP memory_limit’i soovitatakse tõsta ainult vajadusel – näiteks siis, kui kodulehekülg regulaarselt jõuab oma mälulimiidini. Seda võivad näidata logide veateated või kodulehekülje aeglane töö. Limiidi järk-järguline suurendamine annab võimaluse jälgida serveriressursside kasutust ja ennetada võimalikke probleeme.
Näiteks võib WordPressi kodulehekülg, mille vaikimisi mälu limiidiks on 128M, tavapärase külastatavuse korral edukalt toimida. Kui aga külastatavus järsult kasvab või kasutatakse ressursimahukaid pluginaid, võib vajalik olla limiidi tõstmine 256M-ni, et tagada sujuv toimimine ja vältida veateateid.
PHP lõimed (threads) on veebiserveri protsessi sees toimuvad üksikud täitmisüksused. Iga PHP skript käivitub ühe lõimena, mis tähendab, et jagatud veebimajutuses võib korraga töötada mitu lõime, teenindades erinevaid kasutajapäringuid.
Näiteks kui kasutaja LVE RAM limiidiks on 2 GB, peavad kõik tema protsessid – sealhulgas mitu PHP lõime, andmebaasid ja ajastatud tööd – kokku mahtuma 2 GB sisse. Samal ajal jääb iga üksik PHP skript eraldi ka PHP memory_limit’i (nt 128 MB) piirangute alla, et täiendavalt kontrollida mälukasutust skripti tasandil.
Mõlema limiidi koostoime tagab Virtuaal.com keskkonnas tasakaalustatud ressursijaotuse, mis aitab säilitada nii stabiilsust kui ka jõudlust kõigi hostitud kontode jaoks. Kasutaja saab küll oma cPanelist PHP memory_limit’i vajadusel muuta, kuid LVE RAM limiidid tulenevad paketipõhistest seadistustest ning nende suurendamiseks võib olla vajalik kõrgem teenuspakett.
Vaikimisi madal PHP memory_limit on seadistatud selleks, et tagada ressursikasutuse tasakaalustatud jaotus jagatud veebimajutuses. Kuigi Virtuaal.com võimaldab kasutajatel memory_limit’i kõrgemale seada, tuleks seda teha läbimõeldult ja ainult siis, kui kodulehekülje spetsiifilised vajadused seda nõuavad.
PHP memory_limit ja LVE RAM limiit toimivad ühiselt, et hoida mälukasutus kontrolli all nii skripti- kui ka kasutajakonto tasandil, kindlustades sellega kogu serveri stabiilsuse ja hea jõudluse.
Vaikimisi PHP versiooni puhul on PHP memory_limit määratletud 1024MB.