Pull to refresh
  • by relevance
  • by date
  • by rating

RoadRunner здесь и сейчас

PHP *Go *Laravel *

Для Laravel вышел пакет Laravel Octane который призван подружить Laravel c Swoole и RoadRunner. Мы уже какое-то время используем RoadRunner вместо php-fpm и поделимся своим опытом использования, какие у этого есть плюсы.

RoadRunner – это высокопроизводительный сервер приложения для PHP с открытым исходным кодом написанный на Go. Основное отличие от php-fpm состоит в том, что RoadRunner взаимодействует с долгоживущими php процессами, в отличии от php-fpm, который создает и убивает новый php процесс при каждом запросе. 

Плюсы долгоживущего процесса:

Читать далее
Total votes 9: ↑8 and ↓1 +7
Views 2.7K
Comments 7

Установка nginx + php-fpm + memcache + eaccelerator на FreeBSD

Server optimization *
Зачем всё это? — спросите вы. Да просто захотелось поделиться с общественностью некоторым опытом, полученным в процессе оптимизации vds под нужды одного общеизвестного блого-социального движка, который на обычном хостинге чувствует себя, мягко скажем, некомфортно.

Началось всё с того, что я ушёл от firstvds, где уже ничто не спасёт от тормозов. Ушел на ганди.нет, взял одну шару (1 share), которую дали на месяц бесплатно. Кстати, акция эта (This summer, your server is free!) вроде еще не закончилась. ;) И начал на этой шаре проводить зверские эксперименты с установкой разного ПО. Тестировал результаты с помощью siege.

В итоге конфигурация из сабжа оказалась самая быстрая. Опытом её установки и настройки я и хотел бы с вами поделиться.

Поехали!
Total votes 90: ↑74 and ↓16 +58
Views 48K
Comments 48

PHPConf 2009 — программа окончательно сформирована

Website development *
image Осень — отличное время пообщатся с единомышлениками и профи в WEB-разработке. Уже зарегистрировалось более 150 чел, спешите — нелегко в наше время собрать такое количество экспертов WEB в одно время в одном месте.

Программа окончательно сформирована
www.phpconf.ru/programm


Читать дальше →
Total votes 21: ↑18 and ↓3 +15
Views 514
Comments 10

Nginx + php-fpm на CentOS 5.3

Nginx *
В этой статье я поделюсь собственным опытом построения веб-сервера, работающего на CentOS 5.3.

Что требовалось:
  • Полностью избавиться от Apache. Сервер должен был выдерживать хорошую нагрузку, распределяя статику и динамику.
  • Нужна была поддержка последней версии libxml, малейшее различие в версиях делало сайт абсолютно нерабочим.
  • Нужен был gzip
  • И еще некоторые особенности, о которых я расскажу в самой статье
Читать дальше →
Total votes 11: ↑6 and ↓5 +1
Views 23K
Comments 22

Установка PHP-FPM на Debian из пакетов

TrueVDS corporate blog High performance *
PHP-FPM — патч к PHP, предоставляющие альтернативный интерфейс FastCGI. Обычно используется с nginx в проектах с высокими нагрузками или дефицитом ресурсов. Для удобной и упрощенной инсталляции мы собрали PHP-FPM в пакет для Debian 5 Lenny. Последнюю пару недель тестировали и тюнили, сейчас выложили в публичный доступ. Над пакетами в поте лица трудился viliar, которому дружно направляем за это благодарности и карму. Багрепорты и замечания приветствуются, лучше комментами к посту.

Инструкция по установке


Читать дальше →
Total votes 42: ↑32 and ↓10 +22
Views 12K
Comments 59

Nginx + PHP-FPM против Apache2 Prefork + mod_php

Configuring Linux *
Все началось с этой темы на форуме, когда многие на полном серьезе стали рассуждать, мол, nginx совсем не быстрее Apache, и даже перевод документации с официального сайта был неубедителен. Как известно, нет ничего более приятного, чем провести тестирование и показать график для привлечения внимания. Вот например график по обще нагрузке на сервер, попробуйте угадать где тут этап тестирования Nginx, а где — Apache.
image
Ну а перед тем как узнать правильный ответ — немного про сервер и механизм тестирования.
Дабы исключить всякие подозрения на «подкручивание» своих VDS, тест проводился на стороннем сервере, любезно предоставленным мне для теста одним из участников форума вот в такой кнофигурации:
AMD Athlon X2 5600+ 4 GB DDR2 2×400 GB HDD с Linux Debian в минимальной установке. Весь софт устанавливался стандартным образом — через apt-get. И PHP и Apache ставились в минимальном режиме.
Для объекта тестирования я поставил очень легкий блог Moscquito, который работает без MySQL, написав туда пару постов и камменты.
Дальше самое интересное
Total votes 85: ↑74 and ↓11 +63
Views 27K
Comments 95

Centos5.5 Nginx 0.8.33 + PHP5.3.1(fpm) + MySQL5.5.0(phpmyadmin) — полная настройка для начинающих — 1 часть

Lumber room
Centos5.5 Nginx 0.8.33 + PHP5.3.1(fpm) + MySQL5.5.0(phpmyadmin)

Недавно мой знакомый купил ВПС, и конечно же ему захотелось развернуть полноценный сервер, плюс учитывая начальные ресурсы: 768Мб памяти и 2 ядра выделеных на его контейнер, сервер должен быть не прожорливым и быстрым, на нем будет крутиться blog. Решил поставить nginx, и php+php-fpm. Думаю nginx описывать не буду, как и php+php-fpm обзоры можно найти на хабре. Вот только вся соль проблемы в том, что он хотел поставить все правильно, как в учебнике. Заглянул по форумам, перегуглил весь интернет, но так и не нашел правильного пацанского мануала. Везде только основные моменты настроек и установки сервера. Так не пойдет, сказал он и пришел ко мне. Одна голова хорошо, но пиво в двоем пить лучше!
Стали составлять план, что нам нужно для работы.

! Данный пост предназначен только для начинающих, для тех кто не имеет опыта в установке и настройке сервера. Вам будет понятно на примере что и где и как установить, и потом углубившись в мануалы и вооружившись напильником, сделать все конкретно под ваши задачи.
Как минимум для начала работы нужно:
Putty — the.earth.li/~sgtatham/putty/latest/x86/putty.exe — SSH client

Centos 5.5 — последяя будет уже стоять на серваке.
Nginx 0.8.33 — можно выбрать и старший релиз или стабильный.
PHP 5.3.1 — думаю проблем с ней не будет.
MySQL 5.5.0 — база!
php-fpm патч
suhosin-patch
libevent-1.4.13-stable

и далее все остальные пакеты которые понадобятся для компиляции и работы сервера:
gcc gcc-c++ libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libmcrypt libmcrypt-devel pcre-devel

Поехали...
Total votes 40: ↑25 and ↓15 +10
Views 2.5K
Comments 28

nginx magento ssl postfix — сервер и магазин своими руками

Lumber room
Прошлая заметка была о сборке сервера из исходников.
многие сказали, что нынче такое не катит, пакеты им подавай.

Но в основном было нытье, типа — я умнее тебя ты работаешь не правильно, конфиг не пацанский… никто так и не сказал как и что поправить, где сделать правильнее и по другому, какие еще есть возможности конфигурации, и тд. да и heck с ним, у всех свои взгляды, я это принимаю.
Все же кто то взял себе на заметку, ну а кто-то прошёл мимо.
Почему я пишу об этом? Есть сайты, форумы со списками рассылок, есть много мануалов, но, люди продолжают сходить с ума в поисках нормального пояснения установок и настроек. Платят другим горе специалистам, а те ставят все криво и не полные конфиги, без оптимизации. А если нет разницы — зачем платить больше (с)??? Любой человек хотел бы настроить свой сервер и поставить магазин, и для начала ему нужен старт, показать, что это очень просто, что можно сэкономить на начале, потом, когда все заработает, уже задуматься — а всели так сложно? а могу ли я дальше все делать сам? сделать еще лучше поднабравшись опыта? Да все можно сделать самому. Не даром старая мудрость гласит — хочешь чтобы было хорошо, сделай все сам!

Чтобы не писать порожняком, будем конкретно делать установку и запуск сервера для магазина, под управлением — МАГЕНТО 1.4.0.1

подробности
Total votes 22: ↑12 and ↓10 +2
Views 2.6K
Comments 7

История развития и оптимизаций одного высоконагруженного ресурса

Website development *
Sandbox


Введение

Все началось с того, что я стал системным администратором у одного провинциального Интернет-провайдера. Помимо администрирования различного рода ресурсов, мне в присмотр достался один молодой, но бурно развивающийся ресурс. Ресурс представлял из себя классический LAMP проект. Сайт, на котором генераторами контента являлись обычные пользователи.
* К слову, в то время я ничего не понимал в *nix системах, хоть и все сервера которые мне достались, были именно на нем, разбирался я во всем этом достаточно быстро.

Как обычно бывает с ресурсами, набирающими популярность, железки на которых все крутится, перестают справляться. Ресурс стоял на стареньком двухпроцессорном сервере, на котором крутились практически все сервисы для пользователей. В то время начальство не воспринимало ресурс как нечто стоящее вложений, поэтому, к моему сожалению (а позже – счастью), денег под новую железку мне не выделяли.
Читать дальше →
Total votes 208: ↑198 and ↓10 +188
Views 13K
Comments 56

Повышение производительности за счет блочного кеширования

High performance *
Тема блочного кеширования и ssi не раз проскакивала на Хабре. Ниже я представлю еще одну реализацию, использующего блочное кеширование, а также исходники фреймворка, использующего эти принципы, которые можно найти тут. А как это работает — прочитать ниже.
схема кеширования блоками
Читать дальше →
Total votes 56: ↑49 and ↓7 +42
Views 5.3K
Comments 60

Установка и настройка rtorrent+rutorrent+nginx+php-fpm в Arch Linux

Configuring Linux *

Предыстория


Для работы с торрентами я достаточно долго использовал ktorrent. Сей клиент мои потребности в удобном управлении закачками удовлетворял полностью, пока я не заметил, что на популярных торрентах загрузка процессора доходила до 50% (а с uTP — ещё больше), а потребление памяти в и без того жирном KDE стало неприятно бросаться в глаза.

Было решено сменить KDE на xfce (это отдельная история), а программу для торрентов подобрать с хорошим функционалом и удобным управлением. Перепробовав transmission, deluge и rtorrent, я остановлися на последнем.

О том, как настроить rtorrent+rutorrent+nginx+php-fpm, и будет под катом.
Читать дальше →
Total votes 62: ↑50 and ↓12 +38
Views 16K
Comments 50

Debian: Apt-Pinning на примере php5-fpm и nginx 1.0.4 (Debian way)

Configuring Linux *
Всем Debian'щикам известно, что Debian настолько же стабилен, насколько тормознут на «новинки». В частности, пакета php5-fpm, так многими любимого, в стабильном репозитории до сих пор нет. Решив чуток поискать, как делают люди, понял, что многие собирают его из «сорцов». Мне это как-то стало не по душе. Поэтому сегодня я поставил его в стиле Debian-way, с помощью Apt-Pinning.

Apt-Pinning, вкратце, это технология, которая показывает, из какого репозитория предпочтительнее ставить пакет.
Читать дальше →
Total votes 37: ↑32 and ↓5 +27
Views 5.5K
Comments 18

rtorrent+rutorrent+nginx+php-fpm. Подводные камни

Configuring Linux *
Предыдущая статья про связку rtorrent+rutorrent+nginx+php-fpm была написана сразу после успешной установки и начальной настройки этой связки. В процессе эксплуатации выявились некоторые подводные камни, о которых я и хочу рассказать.
Читать дальше →
Total votes 28: ↑25 and ↓3 +22
Views 11K
Comments 31

Amazon EC2 + PHP-fpm + Nginx

Server Administration *
Sandbox
Tutorial
Наступил момент когда я решил перевести свой проект FastCGI, мне не нужна была производительность, не нужна была стабильность или еще какие-то преимущества, которые предоставляет FastCGI. В первую очередь это было желание узнать что то новое, понять как оно работает, и посмотреть все преимущества в деле.
Читать дальше →
Total votes 22: ↑8 and ↓14 -6
Views 5.4K
Comments 6

Я медленно удаляю apache с сервера

Server optimization *
image
Есть у меня серверок (да, да, именно серверок, сервером его назвать сложно). Железо старенькое (2 гига оперативы, AMD Athlon(tm) 64 Processor 3500+, програмный RAID). Админю я его сам, без особых навыков и познаний. Когда-то давным давно (больше года назад) поставил на него Debian 5.0 Lenny (это была вторая в жизни установка linux-системы, до этого ставил только Ubuntu на рабочий ноутбук) и панель управления ISPConfig3 по мануалу. Держу на нем несколько (штук 40) сайтов друзей и клиентов, Redmine, SVN и еще немного по мелочам.
Периодически все это безобразие падает (load average > 20), и приходится на сервере раз в пару часов перегружать apache или высасывать из пальца очередную попытку оптимизации. В общем полный раздрай и разруха. И вот в одну прекрасную субботу я подумал — а почему бы не решить вопрос раз и… И вот в общем.
Под катом — история убитых выходных + предыстория. Интересна в первую очередь мне, чтобы потом легко вспомнить что именно и зачем я ставил. Может быть интересна новичкам в интересном и нелегком (ох, ...) деле серверной оптимизации постепенным(!) переводом сайтов из-под Apache c его ModRewrite под Nginx (кстати, правильно это слово читается «энжинкс»меня поправили, Сысоев на конференциях не раз говорил, что название сервера стоит читать, как «энжин-икс», спасибо bayandin и DorBer ). Возможно, будет интересна более-менее опытным товарищам, оказавшимся в тех же условиях (Debian Lenny, ISPConfig3, слабое железо, несколько хороших, не сильно хороших и разных сайтов). И более опытным может быть интересно зайти, оставить пару комментариев.
Если интересно - нажмите сюда, если нет - нажмите звездочку ниже
Total votes 167: ↑137 and ↓30 +107
Views 53K
Comments 184

Опыт оптимизации окружения VPS за $10 для персональной сети WordPress

WordPress *
Sandbox
Эта небольшая статья посвящена описанию моих действий по приведению VPS за $10/месяц в приемлемое состояния для работы персональной сети сайтов на WordPress в одиночном и сетевом режиме (WordPress Network Mode).

Интро


Итак, дорогие мои хай-тек специалисты и случайные читатели, история эта началась в конце апреля 2012 года, когда мой любимый городской провайдер-монополист наотрез отказал мне в дальнейшем размещении моего трех-ядерного атлона в своей стойке.

Я живу в маленьком курортном городке (3 тыс.мы-местные и 50 тыс.понаехали-тут-летом) и большинство моих персональных проектов посвящено родному и любимому городу. Пара городских вебкамер, погода, справочники и т.д. Кроме того, я ещё чуток борюсь за справедливость и права: организовал небольшой проектик на домене TV — снимаем репортажи про безпредел чиновников и т.д...
Читать дальше →
Total votes 44: ↑30 and ↓14 +16
Views 19K
Comments 79

Nginx+php-fpm+perl под Debian Squeeze

Nginx *
Tutorial

Для чего эта заметка, ведь похожих уже полно? Если кратко, то когда я взялся настроить связку пришлось перечитать огромное количество документации и разных статей, все сразу и в одном месте найти не получилось. Данная статья попытка систематизировать накопленные знания, а также максимально подробная помощь тем, кто только начинает осваивать nginx.

В качестве теста решил перевести все свои сайты на nginx, до этого все работало на Apache из состава ZendServerCE. Интересно было пробовать насколько сложно будет полностью переехать на новый для себя веб-сервер, ведь используется несколько CMS (DLE, Wordpress, самописныеCMS).

Задачи:
  • базовая работа web сервера — обработка html;
  • запуск php скриптов;
  • корректная работа phpmyadmin для всех сайтов на сервере;
  • запуск cgi и pl скриптов;
  • использование кеширования и подбор оптимальных параметров для увеличения производительности.


Имеем свежеустановленный сервер Debian 6 в минимальной установке из netinstall. И так поехали.
Читать дальше →
Total votes 75: ↑50 and ↓25 +25
Views 123K
Comments 66

cPxStack — Nginx/PHP-FPM на сервере cPanel, без Apache!

Nginx *
Плагин позволяет пользователю переключать Cpanel веб-сервер на Nginx и PHP-FPM, полностью выключая Apache.

image

Не только proxy-pass на Apache, a реализует полный стек Nginx + PHP-FPM без Apache!

Читать дальше →
Total votes 7: ↑6 and ↓1 +5
Views 8.8K
Comments 8

Блокировки сессий в веб-проектах — выбираем эффективное оружие

1С-Битрикс corporate blog Website development *
Всем привет!

В последнее время, в связи с бурным ростом и усложнением фронт-эндов, аяксами и т.п. — все чаще проявляется проблема блокировки сессий во время эксплуатации сайтов на PHP. PHP по умолчанию создает для сессии файл и процесс эксклюзивно его блокирует. Остальные процессы, пытающиеся открыть сессию (аяксы, табы в браузере) — выстраиваются в очередь. Не всегда логика приложения, особенно если она сложная, позволяет эффективно ограничить время блокировки конкурирующих за сессию процессов.

Ситуация усугубляется еще тем, что 3-5 подобных клиентов способны быстро забить зависшими и простаивающими в ожидании процессами PHP-воркеры и сайту становится плохо, если не сказать очень.

К сожалению, разработчики/сисадмины не всегда могут сразу понять, что дело в блокировке сессии — и ищут проблемы в других частях проекта, теряя время.

В статье расскажу какие инструменты позволяют быстро диагностировать проблему, приведу работающий код и дам несколько боевых рекомендаций по выживанию :-)

Читать дальше →
Total votes 28: ↑19 and ↓9 +10
Views 18K
Comments 48