Category Archives: web-дев

Итог баттла и заметка о mysqld

Сначала заметка, вот она, чтобы сервак не вылетал с 11 ошибкой (cant unlock file)

max_connections = 10000
open_files_limit = 100000
thread_cache_size = 256M

А теперь итог баттла: 1 задание +, остальное вернули, т.к. не написал условий xD

(C) ZonD80

Оптимизм на новом уровне

Да, это так!

Впервые после перерыва почти в полгода я чувствую себя реально оптимистично настроенным, ибо только что я заработал ~600 рублей. Но на самом деле дело не в этом.

  • Просто у меня закрыта сессия
  • Сделана половина домашних работ
  • Я недавно сходил в кино на фильм 2012 и был просто счастлив, ибо фильм весьма зачетен
  • Я начал разработку нового приложения на php, которое, боюсь или нет, затянет меня на долго

Омрачает лишь то, что кое-кто решил смыться на киношный фест и выпить там без меня, какое, сука, принебрежение.

Также запостил новости об окончании разработки Kinokpk.com releaser 3.00 в области TBDEV и еще зарегал первые 2 моих русскоязычных домена. Правда хз, как их настраивать, но это не проблема, и, когда разберусь, обязательно напишу об этом.

PS: Больше я не буду, или не хочу, или у меня просто слишком оптимистичное настроение, чтобы выделять жирным важные слова. Но…. если конечно, действительно важно я еще и в <h1> засуну!

PSS: Be happy, dont be fucked!

(C) ZonD80

DNS (aka bind) и CENTOS

Так, значит была проблема. Ну никак не хотели резолвится ns-сервера… Бинд работает, а NS – не отдает, сука.

В итоге решилось

сисадмин, проверь конфиги named/bind на разрешенные IP для запроса Name-серверов! И удали всякую фигню оттуда, и да прибудет с тобой сила джедая!

PS: юзабельный сайт: DNS Quick Check – Online DNS Report Tool – Enter the domain to test realtime, Test your DNS delegation, DNS Servers, Mail and Web Servers, Network Admins, Webmasters, Hosting

(C) ZonD80

MySQL HiLoad + PHP-FPM brainfucking

Тупо решил проблему зависания php-fpm и nginx (как следствие), запросом:

set global max_connections = 500;

И все стало айс! (достаточно побольше одновременных тредов для мускуля)

===Добавлено 13.10.2009, 18.21 МСК ====

Еще! Аттернун!:::

[NOTICE] fpm_unix_init_main(), line 284: getrlimit(nofile): max:1024, cur:1024
[ERROR] fpm_unix_init_child(), line 168: setrlimit(RLIMIT_NOFILE) failed: Invalid argument (22)

яя??!! (это типа лог php-fpm)

/etc/security/limits.conf

я? (это типа настройка лимитов системы)

nginx   hard    nofile  10240

, при условии что юзверь nginx – это nginx, а nofile – количество открываемых файлов.

Интересный и может быть юзабельный тип:

Increasing the file descriptor limit

The file descriptor limit can be increased using the following procedure:

  1. Edit /etc/security/limits.conf and add the lines:
    *       soft    nofile  1024
    * hard nofile 65535

  2. Edit /etc/pam.d/login, adding the line:
    session required /lib/security/pam_limits.so

  3. The system file descriptor limit is set in /proc/sys/fs/file-max. The following command will increase the limit to 65535:
    echo 65535 > /proc/sys/fs/file-max

  4. You should then be able to increase the file descriptor limits using:
    ulimit -n unlimited

    The above command will set the limits to the hard limit specified in /etc/security/limits.conf.

Note that you may need to log out and back in again before the changes take effect.

ИТОГ = PHP-FPM(PHP-CGI) не мог открыть нужного колва пулов и зависал. Проблема решена. Спасибо силе джедая.

(C) ZonD80

Бигфангруп и выводы о веб-серверах

Заебался настраивать сервера, конкретно бигфангруп.орг.

100к клиентов резко начинают ломиться на сервер сразу же после его запуска, а, естественно следовательно, никакие apache+php+mysql не выдерживают такой нагрузки.

Что было решено?

  1. nginx+apache+php+mysql (естесно апач как прокся, а пыха как модуль)
  2. nginx+php-fpm+mysql
  3. nginx+php-cgi+mysql+spawn-fcgi

Жирным я выделил то, что работает сейчас.  Красным – то, что работало на fedora 11, но в федоре почему-то не сохранялись настройки ifconfig и + она почему-то не лучшем образом юзала сетевые интерфейсы (курение логов и манов не помогло, как и присутствие сотоварища-админа из ДЦ), наверно еще сыренький дистриб.

В итоге – старый добрый Debian Lenny, и 3ий пункт моего списка (fpm патчить было в лом, при том, что я пересобирал php без сухосина (а по дефолту с dotdeb.org он там есть, причем сука режет URL-запросы торрент-клиентов, что неприемлемо). Пока работает и выполняется отлично, единственное, я день проебал потратил на то, чтобы вспомнить, что каждому скрипту выдается 1 cgi-процесс, поэтому нельзя не забыть указать -C параметр для spawn-cgi, который отвечает за количество чайлдов. [For example -C 4096]

Кеши я юзать не стал, т.к. основная нагрузка приходится на мускул. Сначала надо оптимизировать (заменить на Kinokpk.com releaser) тамошний TBDev и всякую хрень.

Вот так. День разработки) Точнее настройки.

(C) ZonD80