- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Я считаю что во всем нужна мера, и процессы которые действительно параллельны надо выполнять параллельно, если это не приводит к непомерным расходом на их диспетчеризацию, именно для этого создаются многопроцессорные ЭВМ и многоядерные процессоры ;)
В разумных пределах параллельное программирование действительно необходимость, такова природа вещей, как бы Вам не хотелось обратного ;)
параллельное программирование придумали для того, чтобы иметь возможность нагрузить процессор на 100% (ОС пока не умеют это делать самостоятельно), иметь возможность масштабировать задачу на десятки, сотни и тысячи компьютеров, чтобы либо обрабатывать больше данных либо обрабатывать одни и те же данные за разное (меньшее время).
если задача изначально распараллелена (тысячи запросов к веб-серверу), то нужны просто эффективные механизмы обработки. nginx пока с этим справляется эффективно без классических потоков.
iHead добавил 29.10.2011 в 21:33
Тут не надо пытаться распараллелить, чтобы нагрузить второй процессор - он и так нагружен другими клиентами.
почти одно и тоже написали :)
параллельное программирование придумали для того, чтобы иметь возможность нагрузить процессор на 100%
Его придумали для параллельного выполнения параллельных процессов :) а не для того, чтобы загружать процессор... :D
netwind, iHead, Вы что мне оба доказываете? :D Что у nginx сейчас все хорошо и не надо ничего менять, ну дык я согласен :) не будем ничего менять в nginx (тем более ни Вы, ни я, не являемся авторами данного продукта).
Тут не надо пытаться распараллелить, чтобы нагрузить второй процессор - он и так нагружен другими клиентами.
К сожалению nginx ничего не знает о том, чем занимается второй процессор, по процессорам потоки распределяет ОС, вполне возможно что второй процессор курит бамбук, а текущий процессор загрузился на 100% и перестал адекватно отвечать ;) особенно если кто-то указал worker_processes=1 ;)
Из того, что число клиентов ЗНАЧИТЕЛЬНО превосходит количество процессоров НИКАК не следует что расходы на обмен и диспетчеризацию тоже будут значительными, я Вам это уже объяснял, все зависит от выбранной архитектуры и принципа разбиения на нити.
Я не спорю и никогда не спорил с тем, что излишние нагрузки на диспетчеризацию потоков это плохо.
Давайте кончать этот спор ни о чем :)
Я понял. В конфиге nginx "аффинити-чего-то-там в конфиге" не нашел :)
worker_cpu_affinity
CPU affinity is represented as a bitmask (given in hexadecimal), with the lowest order bit corresponding to the first logical CPU and the highest order bit corresponding to the last logical CPU.
Examples:
CPU #0: 0x00000001
CPU #1: 0x00000002
CPU #2: 0x00000004
CPU #3: 0x00000008
CPU #0 and CPU #1: 0×00000003
CPU #2 and CPU #3: 0x0000000C
All CPUs: 0xFFFFFFFF
т.е. запустить nginx на CPU0 и CPU2
worker_cpu_affinity 0001 0100
проверить на каких ядрах работает можно так:
taskset -p PID
если в конце стоит mask: f - значит данный процесс может использовать любое ядро.
iopiop добавил 30.10.2011 в 00:26
начать с числа ядер, которые видит ОС с на процессорах с гипертредингом. если полноценных ядер 4, а с гипетредингом 8, то ставить worker_processes 8 смысла нет. я об этом.
не догоняю я этого :-(
разжуйте пожалуйста для идиота, почему 4, а не 8? в чем плюс четырех, а не восьми? для упрощения понимания предлагаю использовать систему где стоит только ngnix и отдает только статику.
спасибо.
не догоняю я этого :-(
разжуйте пожалуйста для идиота, почему 4, а не 8? в чем плюс четырех, а не восьми? для упрощения понимания предлагаю использовать систему где стоит только ngnix и отдает только статику.
спасибо.
гипертрединг не умножает реальную производительность на 2. нет у вас 8 ядер физически при гипертрединге на 4 ядерном проце. поставить можно 8, но будет ли от этого лучше неизвестно. скорее, узким местом окажется не процессор, а диск или сеть.
это все ИМХО.
iHead добавил 30.10.2011 в 01:34
Давайте кончать этот спор ни о чем :)
давайте.
доказывать ничего не хотел, да и не имею для этого глубоких знаний.
гипертрединг не умножает реальную производительность на 2. нет у вас 8 ядер физически при гипертрединге на 4 ядерном проце. поставить можно 8, но будет ли от этого лучше неизвестно. скорее, узким местом окажется не процессор, а диск или сеть.
это все ИМХО.
но вы же сами указывали коэффициент 1.6? Т.е. если поставить 8, хуже точно не будет, а лучше скорее всего будет, не так ли?
Как бы вопрос важный, если мы начнем добавлять БД и будем привязывать к ядрам, нужно же понимать сколько ядер у нас, 4 или 8.
но вы же сами указывали коэффициент 1.6? Т.е. если поставить 8, хуже точно не будет, а лучше скорее всего будет, не так ли?
Это он про вычисление PI говорил ;) Если поставить 8, то имхо хуже не будет, за исключением того, что память сожрется.
Вопрос в другом - нужно-ли Вам там 8? Может и с 2 все прекрасно работает, зачем жрать лишнюю память, когда она так нужна для БД?
А у меня вот такой еще вопрос про nginx. Вчера добавлял на сайт новость, там картинок штук 10. В общем новость открылась, хотел глянуть, не тут то было.
При открытии главной страницы получил Bad Gataway от nginx. При этом админка работала и любый другие страницы открывались. Попробовал открыть главную в другом браузере - открылась. Что это такое и как с этим бороться?
Bad Gateway случается при недоступном бэкенде, например. Проверьте логи. Ошибка не повторяется?
Bad Gateway случается при недоступном бэкенде, например. Проверьте логи. Ошибка не повторяется?
Так яж говорю, внутренняя открывается при этом, и главная в другом браузере тоже.
Lord Maverik добавил 31.10.2011 в 07:50
А еще в логах всегда такая фигня есть:
куча строчек, где USER разные пользователи.
А еще в логах всегда такая фигня есть:
дак что тут не понятного? нет прав на /var/www/nginx-logs/USER. Дайте ему их или логи переложите/отключите