Mitte kaua aega tagasi mainisime seda nüüd DesdeLinux (kõik selle teenused) töötavad GNUTransfer.com serverid. Blogi on kiiruse, sujuvuse osas palju paremaks muutunud isegi siis, kui meil on (pärast UsemosLinuxi ühinemist) rohkem kui 30.000 200 külastust päevas (peaaegu XNUMX kasutajat ühendas samaaegselt). Kuidas saavutada serveris head jõudlust ka selle liiklusmahu korral?
Praegu on Justice'il (VPS, kus ajaveeb ja mõni muu teenus on) 3 GB RAM-i, kuid tarbitakse vähem kui 500 MB, see on võimalik kasutatava tarkvara õige valiku ja nende piisava konfiguratsiooniga. Näiteks on Apache maailmas kahtlemata suurepärane, hostimise osas nr 1, kuid just seetõttu pole Apache alati parim valik. Kui liiklus on suur ja serveri riistvara pole tegelikult suur (nt 8 või 16 GB RAM-i), võib Apache tarbida liiga palju RAM-i, mistõttu serveril võtab teatud aegadel reageerimine liiga kaua aega või veelgi hullem, et meie sait pole võrgus ebapiisavad ressursid. Seetõttu valivad paljud meist Apginile Nginxi.
nginx:
Nginxist rääkisime teile juba artiklis varem Nginx: huvitav alternatiiv Apache'ile, seal rääkisime teile, et tegemist on veebiserveriga nagu Apache, LightHttpd või Cherokee, kuid võrreldes Apache'iga paistab see silma oma jõudluse ja vähese riistvarakulu poolest, mistõttu paljud suured saidid nagu Facebook, MyOpera.com, DropBox või isegi WordPress .com kasutab Apache asemel Nginxi. Linuxi maailmas DesdeLinux See pole ainus, kes Nginxi kasutab, minu teada kasutavad seda ka emsLinux ja MuyLinux :)
Minu isiklik kogemus Nginxiga pärineb mitu aastat tagasi, kui hakkasin vajaduse korral Apache'ile kergeid alternatiive otsima. Sel ajal oli Nginx versioonil 0.6 ja selle ühilduvus PHP-s tehtud suure nõudlusega saitidega polnud kõige optimaalsem, kuid tänapäeval alates versioonist 0.9 (v1.2.1 on saadaval Debiani stabiilses versioonis, v1.4.2 on saadaval ArchLinuxis) on palju paremaks muutunud, nii et Nginx + PHP korraliku seadistamise ja ühendamise korral töötab kõik nagu võlu.
Selles õpetussarjas Kasutan Nginxi versiooni 1.2.1-2.2, saadaval Debiani talli repos (Wheezy).
PHP5:
PHP, see programmeerimiskeel, millega paljud saidid (ja CMS) täna töötavad, on minu arvates perekonna must lammas. Teisisõnu, minu isiklik kogemus on see, et suured saidid, kus on palju külastusi ja millel on palju võimalusi, funktsioone jne., Kui selline sait tehakse PHP-s, kulutab see rohkem ressursse kui sarnane sait, näiteks RoR-is. Minu kogemus on selline, et inimesed, PHP on tohutu ressursside draakon, PHP + Apache on piisav, et neelata sadu ja sadu MB RAM-i ilma reaalse vajaduseta.
Põhjus, miks mitte kasutada RoR-i, Djangot või midagi muud, on lihtsalt see DesdeLinux (ajaveebi, meie lipulaev) töötab WordPressiga, PHP-ga arendatud CMS-iga, mis pakub meile nii palju mugavusi, et me lihtsalt ei plaani seda lühikeses või keskmises perspektiivis muuta, ausalt, WordPressiga, isegi kui see pole täiuslik, teenib meid seda, mida vajame ja võib-olla rohkemgi.
Seoses PHP-ga kasutan nendes õpetustes PHP versioon 5.4.4-14 saadaval Debiani Wheezy (stabiilne)
Spawn_FastCGI:
Võib öelda, et see ühendab Nginxit PHP-ga, st isegi kui neil on installitud PHP5 pakett, kui neil pole PHP-s saidi avamisel installitud ja käivitatud Spawn_FastCGI, siis brauser laadib faili alla, seda ei näidata neile kõike, mis .php on programmeeritud, kuna server ei tea, kuidas .php-faile töödelda, mistõttu on hädavajalik installida ja seadistada Spawn_FastCGI.
Kui me kasutaksime Apache'i, oleks see midagi nii lihtsat kui libapache2-mod-php5 paketi installimine, kuid kuna me kasutame Nginxi, peame selle asemel installima paketi spawn-fcgi. Samuti selgitan õpetuses, kuidas luua sellele algne skript kataloogis /etc/init.d/, et saaksite seda mugavamalt juhtida.
MySQL:
See võib olla suur küsimärk või võib-olla mõne jaoks ebakõlaline märkus. Paljud, keda ma tean, küsivad minult küsimuse: miks kasutada MySQL-i ja mitte MariaDB-d?
Probleem on lihtsalt selles, et mul ei ole praegu piisavalt aega pühenduda migratsioonile MySQL-ist MariaDB-sse. See migratsioon peaks teoreetiliselt olema kõigile läbipaistev, kõigega 100% ühilduv, kuid see on... nagu Ma ütlesin, et teoreetiliselt. Sel ajal alustasin kolimisteenustega DesdeLinux ühest VPS-ist teise pidin Apache'i maha jätma ja kasutama Nginxit, see hõlmas erinevaid konfiguratsioonifaile, erinevaid VHostide deklareerimise viise, serveri ja selle teenuste installimist ja seadistamist nullist, sel ajal ei saanud ma ühtegi ülesannet lisada ka ja ausalt öeldes vahetasin Apache'i Nginxi vastu, kuna Apache ei rahuldanud minu vajadusi, kuid MySQL vastab siiani minu vajadustele 100%, ma ei näe põhjust, miks ma peaksin oma töökoormust suurendama, muutes midagi, mis see juba töötas minu jaoks tehniliselt hästi.
Kui selgitasite, miks ma MariaDB-d ei installinud, selgitage ka seda, et kuna valdav osa veebilehtedest vajab toimimiseks andmebaasi, sest just seal hoitakse palju teavet (või peaaegu kogu). On mõned, kellele meeldib Postgre või keegi teine, selles õpetuste sarjas selgitan, kuidas installige MySQL ja konfigureerige iga saidi jaoks eraldi kasutajad.
La Minu kasutatav MySQL-i versioon on v5.5.31
APC-d:
APC on PHP optimeerija (selgitatakse väga lihtsalt). Kui see on õigesti konfigureeritud, võimaldab see meil PHP töötlemist paremini ja serverilt saadavaid vastuseid kiiremini.
On ka selliseid alternatiive nagu memcache, aga ma olen alati APC-d kasutanud ja mul on olnud väga soodsad tulemused. Soovitan lugeda seda artiklit inglise keeles: APC ja Memcache võrdlemine kohaliku sisuvahemäluna
Kasutan õpetuses selle versiooni php-apc v3.1.13-1 saadaval ka Debiani talli repos.
Kokkuvõte:
See konfigureerimise veebiserveri installimise viis ei ole kõige optimaalsem ega palju vähem, näiteks paljud soovitavad lakki, mis minu loetu põhjal teeb tõelisi imesid, sest kõik või peaaegu kõik on vahemällu salvestatud, kuid meie puhul pole seda 100% saidist on alati vahemällu salvestatud, kuna me ei soovi või peame sellesse äärmusesse minema. Kuid ma täpsustan, nagu ma eespool ütlesin: «nii palju kui ma olen lugenud», pole ma isiklikult lakki kasutanud kuni tänaseni, seega ei saa ma teile 100% objektiivset arvamust anda.
See on õpetuste seeria, milles näitan teile, kuidas installida veebiserverit, nagu see, mida praegu hostitakse. DesdeLinux (blogi, foorum, kleepimine jne). Blogil on iga päev 30.000 200 külastust, korraga ligi 500 kasutajat ja ometi ei ületa RAM tarbitud 3 MB, mõne jaoks võib see olla liigne tarbimine, aga... hei, meil on 500 GB muutmälu, alla XNUMX MB (mis sisaldab ka FTP-teenus, SSH jne) on tõesti hea, eks? 🙂
Kogu maagiat ei tee ainult Nginx + Spawn_FastCGI + APC, meie ajaveebi vahemälusüsteem on tõesti hästi seadistatud ja Nginxi reeglid on täpsed, see muudab ajaveebi isegi siis, kui see saabub palju liiklusprotsesse, palju vähem PHP kui see, mida tavaline, kuna sellel on juba palju vahemällu salvestatud. Kui teil on suure nõudlusega sait ja teil on ressursiprobleeme, soovitan teil tungivalt uurida, milline vahemälusüsteem sobib teie jaoks kõige paremini, milline neist sobib kõige paremini teie vajadustele.
Loodan, et leiate need õpetused huvitavaks. Püüan kõigis neist kõike põhjalikult, üksikasjalikult ja võimalikult lihtsalt lahti seletada.
seoses
Väga hea ja selge! Ma õnnitlen sind!
Aitäh
Väga hea õpetus.
Mind täidab kahtlusega see, kuidas nad e-posti serveri seadistasid.
MailServer on midagi eraldi, st sellel pole midagi pistmist veebiserveriga, nagu teate you
Kuid juba ammu otsustasin end MailServeriga mitte komplitseerida, otsustasin kasutada iRedMaili (MySQL, LDAP ja Postgre tugi) ning koos seadistustefailidesse lisatavate õigete sätete ja üksikasjadega töötab kõik hästi.
Mulle artikkel meeldib, ootan artikliseeriat
Aitäh, loodan järgmise tuua esmaspäeval või teisipäeval, see tegeleb Nginxi installimise ja seadistamisega.
Väga hea, õige konfiguratsioon, seda on raske leida, tegurite vaheline kompromiss on mõnikord peaaegu lahendamatu, käisin ka mõni aeg tagasi nginxis ja hiljem mariadbis (hiljuti arvan, et aasta tagasi).
// nagu ma mainisin, oleks tore, kui tõstaksite chroot võimaluse ja kasutaksite ka proxy_cache_path, mis on samuti kasulik. Samuti pistikupesa (kui see on võimalik) võrdlus pordiga. ja määratleda hästi laste / jäärade arv.
seoses
Tänan teid kommentaari eest 🙂
Jah, muidugi, oleks väga tore Nginxi puuris hoida, et see sellisena muust süsteemist eraldi oleks, ma polnud nendes õpetustes seda võimalust kaalunud, vaatan, mida saan teha. Proxy_cache_pathi kohta pole ma seda kunagi kasutanud, loen sellest natuke, et näha, kuidas see läheb.
Niitide arvu (min & max) osas on Nginxi konfiguratsioonis see ilmselgelt määratletud, Nginxi postituses räägin palju .conf-failist 😉
Veelkord, tänan teid kommentaari eest.
Seda tüüpi HowTod muudavad veebi arvutiteadlaste jaoks tõeliselt võimsaks, kuna see säästab meid tundide kaupa uurimis- ja testimistoiminguid, kuni me lõpuks sobiva variandi üle otsustame, suur tänu!
Üks küsimus, kas see töötab Debiani peal? Milline operatsioonisüsteemi ja pakettide versioon?
Tervitused!
Gracias.
Tõepoolest, teavitavaid saite, mis kordavad ja kordavad sealseid uudiseid, on juba liiga palju ... vaja on saite, mis panevad õpetusi, just seda veeb vajab!
Jah, Debian Wheezy (praegune stabiilne), pakettide versioonid on seal postituses 😉
Suurepärane kommentaar. Vaatame, kas ma teen ZPanel X-ga mingisugust viga, ja muide, installin Debian Wheezys käsitsi.
Minge edasi KZKG ^ Gaara !!!, et tõe parim kriteerium on praktika ja teil on kogemusi selle kohta, mida kirjutate. Professionaalne ja töötav veebisait. Major League pesapall, kutt.
See on tõsi. Samuti, kui ma hakkasin Windowsi installitud veebiserveritega mängima, on tõde see, et kui WordPressi kasutate, kulub Apache ressursitarbimise osas üles (Drupalis kulutas see poole ressurssidest).
Ma arvan, et Nginxi osas tuleb see õpetus kasuks. Nüüd tahan installida serveri, kus on Nginx, php, Varnish ja MariaDB. Kuid loomulikult peame alustama ja laiskus võib serveritega võitlemisel minu jaoks palju ära teha ja hetkel olen rahul tüüpilise lambi ja mälumäluga, mis mul xDD on.
Tervitus.
Suurepärane, lihtsalt üks neist oleks kasulik 🙂 Teine ootab seda põnevusega.
Me järgime teid. Alustame praegu veebiserverite maailmast. Ostsime kaks Hostingerist ja üks sõber aitas meil seda nullist konfigureerida (PHP, MySQL, Apache). See on ainus kombinatsioon, mida kasutatakse Linuxis - platvormil, kus olen olnud jaanuarist saadik.
Kuid mind huvitas see teema väga. Terviseks!
Ma pole kunagi veebiserverit installinud, kuid kui ma tahan seda teha, siis küsige, kas õpetuste mõistmiseks ja installimiseks vajalik tase on vajalik või võiksin seda proovida? Ette tänades.
Tõsi on see, et andmebaasiserveriga ümber käimiseks pole vaja palju teadmisi. See, kes on seda kogemust juba proovinud, ütleb teile.
Tere, see, mida te selle postitusseeriaga ette võtate, on väga hea.
Installisin hiljuti Nginx + Php Fastcgi + Mariadb. Nginx.
Seda kõike tegin ma Archlinuxis, sest see levitamine on minu vaatepunktist ainus, mis ei too nii palju head kui teised. Ma panin selle puurikeskkonda ja see andis mulle palju ebamugavusi, kui see täiuslikult toimis.
Nüüd töötab see suurepäraselt. Kuigi mind huvitab teie arvamuste teadmine laste ja isa protsesside kohta, mida rohkem näpunäiteid nad mulle annavad, seda parem.
Kõik see on ainult harjutamiseks.
Varustusel on 4 GB DDR2-mälu ja 2 GHz Core 2.4duo protsessor.
Tervitused ja ootan huviga selle sarja eelseisvaid postitusi.
200 kasutajat ühendatud korraga?
Ainult kindlatel kellaaegadel, eks? Sest muidu ületaks see 30.000 XNUMX igapäevast külastust.
Jah, loomulikult pole võrgus alati 200 inimest, praegusel hetkel on neid peaaegu 40, sest on veel vara, mõne tunni pärast ületavad nad 100 piiri.
Nalja pärast vahetasin lihtsalt oma tööjaamas (praegu Symfony2) kergelt nginx-ile, võtsin siit konffi [1], väga lihtne.
[1] http://ihaveabackup.net/2012/11/17/nginx-configuration-for-symfony2
Ootan selle jätkamist 😀
Sel nädalal pean selle avaldama, aitäh, et lugesite nos
ja? palju on puudu?
Hea postitus ...
TERE ÕHTUST.
KOOLIPROJEKTI SPETSIFIKATSIOONIDE JÄRGI LASIVAD NAD MINU PAIGALDADA NGINX ORACLE MV VIRTUALBOX-i AVENBSD 5.4-s, et saaksin kasutada PHP-d, MySQL-i, teiste seas ka NADAMASID, MIDA EI OLE VÕIMALIK LÄBIVÕTUD TEAVE LEIDA ON ÜLES MINU PROBLEEM.