• Что не правильно в запросе PostgreSQL?

    @hell
    очень странно.
    а если опять "по русски" попробовать:
    AND (pc2.selected_option_id=2001570 OR  pc2.selected_option_id=2001571)

    и что говорит explain analyze?
  • PostgreSQL не работает автоинкремент id?

    @hell
    1) Если у вас референсы на внешние таблицы, то с чего вдруг они стали serial? Поставьте integer
    2) Если все случилось после обновления БД проверьте (проще всего сделать дамп схемы) существует ли соответствующий сериалу id sequence и присоединен ли он к таблице (смотреть строчки дампа типа ALTER SEQUENCE user_artist_id_seq OWNED BY user_artist.id;)
    3) Зачем вам вообще в такой таблице id? Это типичная таблица связи айдишник на первый взгляд выглядит совсем избыточным
  • Почему так дико нагружается диск на Windows 10(home)?

    @hell
    И, да - конфигурация компьютера тут ни при чем. Я переносил свап на гибрид, переносил его на ССД - результат вобщем-то одинаковый. То есть тормоза когда свап на ССД не такие жуткие, но все равно ОЗУ работает побыстрее. НУ и ССД жалко.
  • Nginx + php5-fpm VS Nginx + Apache; Что выбрать?

    @hell
    Ну, это примерно похоже на то, на чем я тестировал (проц получше, памяти поменьше, с другой стороны у меня большая часть памяти отдавалась под postgresql, так что в вашем случае потенциально будет примерно то же самое.).

    Я бы на вашем месте попробовал следующее:

    1) Сделал бы две отдельные виртуалки для тестов - одну под нгинкс, одну под апач. Поставил бы на них самый тормозной, ресурсоемкий и неоптимизированный сайт.
    2) Натравливал бы на него siege с разными параметрами, следил бы за вылетом и подстраивал параметры OS и, соответственно, виртуалок.
    Копать в сторону ulimit -n, ulimit -s, kernel.shmmax, kernel.shmall, kernel.sem, net.core.somaxconn,
    net.core.wmem_max, net.core.rmem_max, net.core.wmem_default, net.core.rmem_default, kernel.pid_max,
    fs.file-max, vm.swappiness, kernel.msgmax
    3) После настройки оптимальных параметры ОС, еще раз натравил бы siege на предмет анализа поведения при экстремальной нагрузке (я бомбил свой сервер 2000 пользователями с 500 обращениями каждый, в случае виртуалок можно задавать менее жестокие значения). Если используются сессии - следите за состоянием директории, где они хранятся и зачищайте ее после тестов.
    4) Сравнил бы результаты и действовал бы уже в зависимости от этого сравнения
  • Помогите с php mail() headers кодировкой, пожалуйста

    @hell
    А сами хидеры потом, соответственно, разделять "\n"
  • Помогите с php mail() headers кодировкой, пожалуйста

    @hell
    Рад за вас. Сам в свое время просидел с почтой долго-долго — в результате переписал под себя PEAR.Mail, так чтобы оно не глючило.
    Проблем может быть две:

    1) Директивами постфикса можно замутить ограничение длины заголовков. Причем, если я правильно помню — индивидуально для каждого. И, если конфиг брался из инета из наиболее популярных подробных мануалов, такая ситуация весьма вероятна.
    2) Не вполне корректно конвертированная комбинация русского языка, UTF-8 и base64 может давать незапланированные появления переносов строк или еще какой-нибудь бяки, соответственно, портится заголовок и возникают проблемы с отправкой.

    Имеет смысл:

    Попробовать английские фамилии. Убедиться, что режется все после 10 знака.
    Если с длинными английскими фамилиями все отправляется — копать в сторону кодировок. Если нет — в сторону конфигов постфикса
    На всякий случай — перед отправкой (когда хидеры сформированы) их стоит пропустить через функцию (в данном случае — ассоциативный массив, но можно и напрямую:)
    function sanitizeHeaders($headers)
        {
            foreach ($headers as $key => $value) {
                $headers[$key] =
                    preg_replace('=((<CR>|<LF>|0x0A/%0A|0x0D/%0D|\\n|\\r)\S).*=i',
                                 null, $value);
            }
        return $headers;
    	}
    	
    
    
  • Комплект первого зеркального фотоаппарата (Canon 600D)

    @hell
    НА объективе есть специальные крышечки, так что не поцарапаете. Но лучше брать не кит с двумя объективами, а отдельно кит с 18-55 (обращаем внимание на буковки IS в названии кита и обязательно спрашиваем продавца — со стабилизацией ли объектив) и отдельно — 55-250 (опять же со стабилизацией)

    Сейчас по маркету минимальная цена кита 18-55 IS II — 17100р, минимальная цена кита 18-55 + 55-250 — 27800р, сам по себе объектив 55-250 — 4999 р.

    И я бы очень серьезно подумал на предмет 650. У него есть пара-тройка полезных улучшений по сравнению с 600D (спец режим ночной съемки — когда вот делает 4 снимка и совмещает из них одно изображение и автоматическая коррекция хроматических аббераций), с текущая стоимость (по тому же маркету) — 19800 минимум — отличается незначительно
  • Отказ от apache в связке nginx + httpd + php?

    @hell
    чего-йто вы недоразобрались, как работает reverse-proxy.
    Всю статику (картинки файлы и т.д.) отдает внешний нгинкс, у которого, разумеется, кипэлайв не нулевой. запросы к движку этот внешний нигнкс проксирует внутрь (а в идеале некоторые еще и кеширует — но в данном случае мне было интересно «чистое» его поведение), он же отвечает за всевозможные рерайты урлов и переадресации. Посему ничего «по очереди» не получается.
    Проект — это в данном случае около 100 сайтов с разной степенью нагрузки (от 10 до 10000 пользователей в сутки), с разной степенью функицонала (от почти статических страниц до полноценных web-приложений с кучей аякса)

    «Ппц глупо» оно бы выглядело без nginx+php-fpm, если бы nginx+php-fpm не шел бы самым первым пунктом. То есть (это уже вспоминая далекий 2005 год, когда мы начали реверс-прокси использовать) — nginx+php-fpm, разумеется, быстрее apache+mod_php, особенно если апач со всеми приблудами, и nginx+php-fpm по крайне мере не особо проигрывает в скорости связке nginx+apache c приблудами + mod_php, но со свзяками nginx+nginx+php и nginx+apache (очищеный от безобразий с поиском .htaccess в каждой директории) +php оно никакого сравнения по производительности не выдерживает. О чем я, собственно и написал.
    И, да — API в самом деле нету.
  • Что делать, если твой сайт украли?

    @hell
    Уточнение. И новые ребята за него могут ухватиться.
    В их портфолио на создание сайтов, сайт вроде как не фигурирует. Ввиду двусмысленности авторской подписи, ее можно объявить не подтверждением авторства, а, например, рекламным объявлением.

    В этом случае, вас ждет суровая юридическая рубка с видимо оптимизаторами (чей копирайт стоит сейчас) и владельцами сайта (которые отвечают за контент и вроде как декларируют, что «Все права защищены») в качестве соответчиков.