Еуропада Laravel үшін бұлттық сервер
Laravel - веб-қолданбаларға арналған ең танымал PHP фреймворкі. Аудиторияңыз Еуропада болса, Laravel қолданбасын ЕО ішінде орналастыру GDPR талабы да, беттердің жылдам жүктелуін қамтамасыз етудің тиімді жолы да. Бұл материал сервер сипаттамаларын, қысқа реттеу сценарийін және DCXV бұлты Laravel жүктемелерін қалай қолдайтынын талдайды.
ЕО-дағы хостинг Laravel үшін неге маңызды
Laravel қолданбалары нысандармен, аутентификациямен, интернет-дүкен транзакцияларымен және сақталған қолданушы профильдерімен жұмыс істейді. Мұның бәрі GDPR бойынша дербес деректерге жатады. ЕО құқығы шекара арқылы беруге құжатталған құқықтық негізіңіз болмаса, мұндай деректердің Еуропалық экономикалық аймақ шегіндегі инфрақұрылымда өңделуін талап етеді.
Сәйкестіктен бөлек, кешігу қабылдауға шынымен әсер етеді. Прагадан келген Laravel қолданбасы Германиядағы, Австриядағы, Польшадағы немесе Словакиядағы қолданушыларға екі жаққа 20 мс-тен аз уақытта жетеді. АҚШ-тың шығыс жағалауындағы хостинг PHP орындала бастамай тұрып сұрауға 90-110 мс қосады. Дерекқорға 10 сұрау және Redis-ке бірнеше жүгінуі бар бет үшін бұл айырма әр басқанда байқалады.
Серверге қойылатын ең аз талаптар
PHP 8.2, Composer, MySQL немесе PostgreSQL және кезек драйверімен Laravel базалық VPS-тен көбірек талап етеді:
- RAM - сол серверде MySQL-мен қарапайым веб-қолданба үшін кемінде 2 ГБ. Сессияларға Redis қолданатын, кезек воркерлері қатар жұмыс істейтін қолданбаларға 4 ГБ ұсынылады.
- CPU - продакшен міндеттерінің көбі үшін 2 vCPU. Horizon-ды немесе бірнеше кезек воркерін веб-трафикпен бірге іске қоссаңыз 4 vCPU.
- Диск - 20-40 ГБ SSD. Laravel журналдары, storage-қа жүктемелер және дерекқор файлдары белсенді қолданбаларда жылдам өседі.
- PHP - 8.2 немесе 8.3 нұсқасы. Ескілеу нұсқаларда продакшен үшін маңызды өнімділік жақсартулары және қауіпсіздік патчтары жоқ.
DCXV-тің ұсынылатын конфигурациясы
DCXV Чехия мен Португалиядағы Tier III деңгейлі дата-орталықтарда жұмыс істейді, екеуі де ЕО ішінде. Бұлттық VPS тарифтері айына EUR 15-тен басталады және қосымша ақысыз тәулік бойғы инженер қолдауын қамтиды - Nginx конфигурациясымен немесе PHP-FPM пулының параметрлерімен көмектесетін нақты инженерлер.
Трафигі қалыпты әдеттегі Laravel қолданбасы үшін 2 vCPU / 4 ГБ RAM - қолайлы бастау нүктесі. Laravel Horizon қолдансаңыз, бірнеше кезек воркерін іске қоссаңыз немесе сессияларды кешпен бірге Redis-те сақтасаңыз, 8 ГБ-қа есептеңіз. Ортақ жабдық келмегенде bare-metal бөлінген серверлері айына EUR 49-дан қолжетімді.
Осы жерден бастаңыз: https://dcxv.com/data-center#cloud
Байланыс: sales@dcxv.com
Реттеу нұсқаулығы
DCXV бұлттық серверін (Ubuntu 22.04) жасағаннан кейін мына пәрмендерді орындаңыз:
apt update && apt install -y nginx mysql-server redis-server php8.2-fpm php8.2-mysql php8.2-redis php8.2-mbstring php8.2-xml php8.2-curl unzip
curl -sS https://getcomposer.org/installer | php && mv composer.phar /usr/local/bin/composer
composer create-project laravel/laravel /srv/myapp
chown -R www-data:www-data /srv/myapp/storage /srv/myapp/bootstrap/cache
php /srv/myapp/artisan migrate --force
Содан кейін Nginx-ті Laravel-дің public каталогын таратуға реттеңіз және кезектерді қолдансаңыз php artisan queue:work үшін systemd қызметін жасаңыз.
Күтілетін өнімділік
Прагадағы 2 vCPU / 4 ГБ бұлттық инстансында MySQL-мен әдеттегі Laravel қолданбасы кешке сақталған маршруттарда секундына 300-600 сұрауға қызмет көрсетеді. Дерекқорға сұраулары бар, кешсіз контроллер жауаптары сұраулардың санына және күрделілігіне қарай 50-150 мс-те орындалады. Redis-тегі сессияға жүгіну 1 мс-тен аз қосады. Laravel Horizon бір воркерде міндет күрделілігіне қарай минутына 500-1000 тапсырма өңдейді. Франкфурттан немесе Веннадан серверге дейінгі екі жақты кешігу әдетте 8-15 мс.
Бұл өз зертханамыздағы өлшеу емес, осы сыныптағы жабдыққа арналған күтілім. Оларды өлшемді есептеудің бастау нүктесі деп санаңыз және өз жүктемеңізді өлшеңіз: нақты сандар провайдерден гөрі сіздің деректеріңізге, сұрауларыңызға және баптауыңызға әлдеқайда қатты байланысты.
