|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Den Kushel 2:5020/400 06 May 2002 14:02:45 To : All Subject : Re: Программерский во прос -------------------------------------------------------------------------------- tmaxgor@blueyonder.co.uk wrote: > Привет народ. > > Вот какая задача: > > будет на хосте крутиться несколько тысяч(если получиться) процессов, > которые должны обмениваться короткими текстовыми сообщениями c одним > выбранным процессом(то есть сервером). > Давай разберемся что будет делать сервер с сообщением от клиента: 1. Передавать другому или всем клиентам? 2. Куда либо складировать? В первом случае IPC не нужен, скорее нужно хранить список доступных клиентов и желательно в памяти (чтобы быстрее находить нужного), после этого если клиент активный то и пихай ему мессягу в сеть или посписку активных раздавай сообщение. Если клиент не активен, то складируй куда-то сообщения для него. Как видишь тут подходят скорее сокеты нежели очереди сообщений. Во втором варианте просто принимаешь сообщение из сети и пишешь куда-нибудь. И опять очереди сообщений IPC не нужны, а нужны сокеты и в самом простом случае файлы, в более сложном ODBC, чтобы не зависеть от конкретной базы данных. > Вопрос: > что будет эффективнее: > 1. Одна очередь сообщения и все слушают ее. > 2. Много очередей сообщений(для каждого клиентского процесса) > 3. Обыкновенные пайпы - на каждый клиентский процесс пара пайпов. > --- ifmail v.2.15dev5 * Origin: InterPhone Ltd. (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/6300dede67d0.html, оценка из 5, голосов 10
|