rtyug

rtyug
Рейтинг
263
Регистрация
13.05.2009
Должность
perl,php,sql,javascript(jquery),freebsd/linux
Интересы
perl,php,sql,javascript(jquery),freebsd/linux
https://minfin.com.ua/blogs/94589307/115366/

Serg406, может ТС хочет порнушку закачать :)

я хотел сделать большой интерфейс с помощью которого на сайте пользователь сможет сделать свою социальную сеть такую же как vkontakte.ru со всеми формочками и анкетками, с различным расширением....! и еще поиск по этим анкеткам...

исходники: http://x0.org.ua/groups.pm

(только нету времени дописывать)

Онтарио:
проблема точно локализована.: используется скрипт (много инстансов одного и того же скрипта), который фетчит данные с другого сервера. В первый раз за пол года тот самый сервер сложился в 504 timeout. Собственно вот. Переписывать код, который пользуется сокетами слишком накладно, поэтому хочется решить максимально "дешево", то есть административными методами - ограничением, о котором спрашивалось в первом посте.

скорее всего вы используете многопоточность, где сокет пихается в каждый поток и из-за этого ОС тратит много ресурсов?

что использует скрипт?

можно попробовать переделать, проанализировать скрипт, многопоточность - тема большая, в книгах очень многое написанного

можно переписать скрипт и использовать:

  • на событиях ядра FreeBSD (kqueue/kevent), linux (epoll/poll)
  • библиотеки Event loop, Any Event

Событийно ориентированное программирование (событийно-асинхронное программирование)

Применение в серверных приложениях

Событийно-ориентированное программирование применяется в серверных приложениях для решения проблемы масштабирования на 10000 одновременных соединений и более.

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

Философской предпосылкой для отказа от потоковой модели серверов может служить высказывание Алана Кокса: «Компьютер — это конечный автомат. Потоковое программирование нужно тем, кто не умеет программировать конечные автоматы»[1].

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

на клиенте в браузере, например, если это чат:

  • push server, long-pull, aka Comet (есть решение)
  • websockets (фреймворк Mojo Mojolicious)

http://cpansearch.perl.org/src/MSERGEANT/IO-KQueue-0.34/examples/chat.pl (kqueue/kevent)

http://cpansearch.perl.org/src/AWWAIID/Continuity-1.1.1/eg/chat-ajax-push.pl (Jquery push server + EventLoop )

http://cpansearch.perl.org/src/AWWAIID/Continuity-1.1.1/README

...есть готовые решение...

в PostregSQL можно файлики поставить и аудио/видео смотреть :)

эмулирует носитель инфомрция с репликацией

двушка + девушка = скидка 30% :D

я пишу в свободное время, нету времени его писать, сложно сказать точное время сколько прошло

я пишу мультимедиа движок, социальную сеть ... (пока не полностью законченно!)

http://www.x0.org.ua (верстка и дизайн НЕ сделанная)

только нету времени, уже 5-6 месяцев не делаю

если одни и те же страницы (или один и тоже сайт) полностью поставить на разные домены, то гугл может автоматически забанить или временно не выдавать в поиск

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

я убрал эти поддомены и через 1-2 месяца начал выдвать сайт пользователям которые ищут...

уже проиндексировал и выдает! :)

не знаю что было, то ли забанили, то ли автоматически забанил

но сейчас работает и выдает где-то 30-50 страниц из 500

кстати, чтобы посмотреть то, что он выдает реально в общедоступный вывод, нужно написать в поиск так:

www.site.com/&
Elb:
Спасибо. Это для меня посложнее будет - придется кому-то заказывать...

посмотри, тут вродебы есть какое-то готовое решение:

http://www.stopforumspam.com/contributions

StopForumSpam.com Automated Banning for phpBB3

добавить blacklist айпи которые спамят

http://www.stopforumspam.com/downloads/bannedips.zip

http://sblam.com/blacklist.txt

http://upnweb.eu/spammers-ips/

можно:

1) когда пользователь заходит на форум или когда регистрирутеся, то проверить его айпи в blacklist, если айпи там есть, то написать что он забанен... (и указать контакты, чтобы разбанить, если пользователь не бот и не спамер)

2) если у Вас сервер: можно закрыть доступ с этих айпи которые в blacklist через фаервол, лучше всего этот айпи отредиректить куда нибудь, может на другой порт, и там показать через nginx на статической странице, что айпи забанен... (и указать контакты, чтобы разбанить, если пользователь не бот и не спамер)

и того: списки blacklist забанят много спамеров...

http://www.x0.org.ua/blog/user/1/view/20

http://unixforum.org.ua/index.php?topic=21271

http://www.lissyara.su/articles/freebsd/www/spam_blosking_with_using_ipfw_table/

Всего: 2055