проброс unix сокета
scion 5 сентября, 2009 - 16:44
сабж.
кто нибудь расскажите как это сделать, и как это работает... ничего в нете найти немогу...
есть в локалке 2 сервака нужно пробросить сокет БД на другой сервак...
»
- Для комментирования войдите или зарегистрируйтесь
Используй TCP сокет.
Используй TCP сокет. Насколько я знаю, Unix сокет пробросить невозможно.
Вообще, сокет не есть файл,
Вообще, сокет не есть файл, разве что только особо его обрабатывают сетевые фс... Скоре всего можно через ssh туннель и, соответственно, sshfs. Но вообще это разврат - все базы данных умеют работать и по сети.
ок... тогда я понимаю при
ок... тогда я понимаю при команде netstat видеть несколько тысяч соед. это нормально?
Несколько тысяч соединений к
Несколько тысяч соединений к базе данных? Нет, это не нормально =)
очень много соединений с
очень много соединений с флагом TIME_WAIT
как к бд. так и к apache (который бэкенд)
может стои таймаут поменьше поставить для TIME_WAIT или что порекомендуете?
Непонятно это. Если у вас
Непонятно это. Если у вас апач бэкэндом к нгинксу, то почему так много ожидающих соединений. У нгинкс статику раздает? Или у вас просто очень много клиентов? Если апач у вас находится на том же хосте, что и база данных, то, предположительно, динамика должна использовать сокет, а не порт. Надо проверить равняется ли количество соединений к базе данных примерному количеству одновременных задач апача. Если равняется - то видимо все нормально. Если оно много больше - то видимо динамика, которую вы используйте, написана какими-то быдлокодерами и они делают два десятка соединений с базой данных и не закрывают их.
да. апач бэкенд. да nginx
да. апач бэкенд. да nginx Отдаёт статику. да клиентов много. но не очень... будет много больше вот и начинаю волноваться...
апач и бд на разных серверах.
если я сейчас зайду на сайт и начну много раз обновлять страницу... (сейчас активного народу почти нету... висят ~15 коннектов... но они ничего не делаю. похоже у них просто открыта страница) то в
netstat -n | grep 5432 | grep TIME_WA | wc -l
будет около 300.
боюсь что если кто-то начнёт ddos'ить на это тему (быстро загружать страничку с динамикой и бд), у меня будет их около 2^16 и не смогут устанавливаться новые соединения я прав?
а netstat -n | grep 5432 | grep -i estab | wc -l
порядка 16
это нормально?
и как можно посмотреть "примерному количеству одновременных задач апача" апачей то много но они спят... какой командой можно посмотреть какие из них пашут? top потом i, висит 1-3 процесса апача...
У нгинкса есть модуль
У нгинкса есть модуль статистики. У апача наверняка что-нить похожее есть. Попробуйте написать простенький скрипт на python/perl/php/чем-то-еще, который будет соединятся с базой, делать пару селектов и т.п., потом отсоединятся и посмотреть как на это будет реагировать апач/количество соединений. Думаю, что проблема в коде, который у вас крутится. По идее при завершении обработки запроса соединение с бд должно сбрасыватся (но проверьте настройки mysql), а keep-alive должен держать нгинкс, а не апач. Ну и еще можно сделать кэш на динамику, которая не так уж и часто обновляется (практически на все, кроме разнообразных "real-time" аjax-интерфейсов).
runtime statistics
Обижаешь :) Его зовут "статус".
:wq
--
Live free or die