Обмен сообщениями и многопоточность
Обмен сообщениями и многопоточность
При том, что модель «клиент/сервер» проста для понимания и очень широко используется, существуют две вариации на данную тему. Первая — многопоточная реализация (об этом речь в данной главе), вторая — так называемая модель «сервер/субсервер», иногда полезная и в обычных разработках, но в полной мере раскрывающая свои преимущества при проектировании распределенных систем. Сочетание этих двух концепций предоставляет колоссальную мощь, особенно в сетях симметричных мультипроцессорных систем!
Как мы уже обсуждали в главе «Процессы и потоки», QNX/Neutrino позволяет реализовать множество потоков в одном и том же процессе. Какие преимущества это нам даст в сочетании с механизмом обмена сообщениями?
Ответ здесь довольно прост. Мы можем стартовать пул потоков (используя функции семейства thread_pool_*(), о которых мы говорили в разделе «Процессы и потоки»), каждый из которых сможет обрабатывать сообщения от клиентов:
Обслуживание клиентов различными потоками сервера
С этой точки зрения нам абсолютно все равно, которому именно потоку достанется на обработку отправленное клиентом сообщение — главное, чтобы работа была выполнена. Это имеет ряд преимуществ. Способность обслуживать нескольких клиентов отдельными потоками обработки является очень мощной концепцией по сравнению с применением лишь одного потока. Главное преимущество состоит в том, что задача распараллеливания обработки перелагается на ядро, избавляя сам сервер от необходимости реализовывать параллельную обработку самостоятельно.
Когда несколько потоков работают на машине с единственным процессором, это значит, что все эти потоки будут конкурировать друг с другом за процессорное время.
Однако, в SMP-блоке мы можем сделать так, чтобы потоки конкурировали не за один, а за несколько процессоров, используя при этом одну и ту же общую область данных. Это означает, что здесь мы будем ограничены исключительно числом доступных процессоров.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Обмен сообщениями
Обмен сообщениями В данной главе вы ознакомитесь с наиболее яркой и фундаментальной особенностью QNX/Neutrino — принципом обмена сообщениями. Вы изучите, что такое обмен сообщениями, как его применять для общения потоков между собой, и как обмениваться сообщениями по сети.
Глава 2 Обмен сообщениями
Глава 2 Обмен сообщениями Введение в обмен сообщениями В данной главе мы рассмотрим наиболее характерную отличительную особенность QNX/Neutrino — механизм обмена сообщениями. Обмен сообщениями в QNX/Neutrino — ключевой механизм, глубоко интегрированный с микроядерной
Введение в обмен сообщениями
Введение в обмен сообщениями В данной главе мы рассмотрим наиболее характерную отличительную особенность QNX/Neutrino — механизм обмена сообщениями. Обмен сообщениями в QNX/Neutrino — ключевой механизм, глубоко интегрированный с микроядерной архитектурой этой операционной
Микроядро и обмен сообщениями
Микроядро и обмен сообщениями Одним из основных преимуществ QNX/Neutrino является то, что данная операционная система является масштабируемой. Под «масштабируемостью» здесь подразумевается, что данная система может быть адаптирована к работе как в крошечных встраиваемых
Обмен сообщениями и модель «клиент/сервер»
Обмен сообщениями и модель «клиент/сервер» Представьте, что приложение читает данные из файловой системы. На языке QNX это значит, что данное приложение — это клиент, запрашивающий данные у сервера.Модель «клиент/сервер» позволяет говорить о нескольких рабочих
Распределенный обмен сообщениями
Распределенный обмен сообщениями Предположим, что мы пожелали изменить приведенный выше пример, чтобы можно было «поговорить» с другим узлом сети. Вы, наверное, думаете, что для этого придется вызывать специальные функции, чтобы «попасть в сеть». Вот сетевой вариант
Обмен сообщениями в сети
Обмен сообщениями в сети Прозрачный обмен сообщениями в сети не поддерживается в версии QNX/Neutrino 2.00, но это намечено к реализации в более поздних версиях данной ОС. (Поддержка этого механизма реализована в QNX/Neutrino, начиная с версии 2.11, и присутствует в QNX Realtime Platform, начиная
Обмен сообщениями микроядра
Обмен сообщениями микроядра Модель обмена сообщениями — это тот фундамент, на котором стоит архитектура любой микроядерной ОС, как на трех китах: SEND — RECEIVE — REPLY. Обмен сообщениями микроядра построен на трех группах вызовов native API QNX (рис. 5.1):1. Принять сообщение. Процесс[38],
16.5 Идентификация получателя и обмен сообщениями
16.5 Идентификация получателя и обмен сообщениями В Интернете получатель почтового сообщения идентифицируется по имени с использованием следующего общего формата:локальная_часть@имя_доменаЭтот формат очень гибок. Многие годы в Интернете предпочитали формат с
16.18 Обмен сообщениями через X.400
16.18 Обмен сообщениями через X.400 Всемирный телекоммуникационный союз (ITU) несет ответственность за поддержку международных коммуникаций и выпуск рекомендаций для обеспечения телеграфной, телефонной и факсимильной связи между странами.Сектор стандартов этой организации
Обмен мгновенными сообщениями
Обмен мгновенными сообщениями Со временем, когда ваш журнал обрастет могучей кучкой друзей, читателей и почитателей, у вас наверняка возникнет желание хотя бы изредка переброситься с ними парой слов не через посредство самого блога, а как-то более конфиденциально.В
Обмен быстрыми сообщениями в сети MSN
Обмен быстрыми сообщениями в сети MSN Протокол MSNP (от англ. Mobile Status Notification Protocol – протокол для мобильного оповещения) используется в программах MSN Messenger, Windows Messenger, которые уже несколько устарели, но продолжают эксплуатироваться, а также в программе Windows Live Messenger (рис. 5.7),
9.4. ICQ: мгновенный обмен сообщениями
9.4. ICQ: мгновенный обмен сообщениями ICQ — самый популярный сервис мгновенного обмена сообщениями на наших просторах. Это не отечественный сервис, но у нас он прижился лучше, чем все остальные сервисы подобного рода. Практически у каждого интернет-пользователя есть свой
Обмен мгновенными сообщениями
Обмен мгновенными сообщениями Теперь перейдем к краткому обзору других служб Интернета. Среди них одной из наиболее популярных сегодня является обмен мгновенными сообщениями.Эта служба позволяет людям общаться между собой с помощью коротких сообщений еще более