![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| VoAnt |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 9.4.2004 Где: Украина г. Киев Репутация: нет Всего: 2 |
Постановка задачи
Существует FreeBSD сервер, подключеный к интернет. Задача заключается в написании приложения, к-е постонно висит в памяти сервера и принимает-отправляет данные от одного клиента - другому. Как пример - ICQ Впрос Как быстро нацарапать такой минисервер с админкомандой "die", к-я выгружает программу из памяти. #---------------- Поэтапно: Этап 1 какие функции исспользуються для открытия портов и прослушивания их на предмет приёма. Этап 2 как определить IP клиента Этап 3 как держать такую программу всегда в памяти? Спасибо за помощь! |
|||
|
||||
| Chuck |
|
||||||
![]() Сушня ![]() ![]() Профиль Группа: Эксперт Сообщений: 442 Регистрация: 12.12.2003 Где: Узбекистан, Ташке нт Репутация: нет Всего: 9 |
А не легче юзать уже готовое?
http://doc.diesel.elcat.kg/Perl/lib/site/LWP/Socket.html http://www.getinfo.ru/article135.html
Юзать функции работы с сетью, протоколами, сокетами!
chuck@mon chuck $ ./server & И будет она у тебя висеть, пока сам не kill-нешь, либо пока она не завершится! Это сообщение отредактировал(а) Chuck - 12.5.2005, 15:51 |
||||||
|
|||||||
| chaos |
|
||||||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
вот тебе пища для размышление 1)
2)
3) для этого есть fork() Это сообщение отредактировал(а) chaos - 13.5.2005, 10:55 |
||||||
|
|||||||
| korob2001 |
|
||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
chaos - на это вопрос ответил. Можно заюзать ещё модуль Socket, но IO::Socket всё же лучше.
До тех пор, пока приложение "сервер" ждёт, оно и так висит в памяти. Это сообщение отредактировал(а) korob2001 - 13.5.2005, 17:31 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||||||
|
|||||||||
| wladk |
|
||||
|
Unregistered |
"быстро" или "правильно"? Если "быстро" - не знаю, наверное искать что то готовое, если "правильно" то начать с "Эффективного програмирования TCP/IP" Йона Шнайдера(автора могу переврать), и продолжить "Разработка сетевых программ на PERL" Линкольн Д. Штайн. В обоих книках есть достаточно примеров, какой-то их них вполне можно будет взять за основу...
А стоит ли? Посмотри на механиз работы с сендмейлом, к примеру. Он все время в памяти не висит, а "поднимается" системой при обращении к определнному порту... |
||||
|
|||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |