25 самых популярных вопросов на собеседовании по JMS (Java Message Service) & Ответы

Anonim

Скачать PDF

1) Что такое JMS?

JMS означает Службу обмена сообщениями Java. Это новый стандарт общения между клиентами. Он позволяет компоненту приложения J2EE создавать, отправлять, читать и получать сообщения.

2) Какой тип обмена сообщениями предоставляет JMS?

JMS предоставляет оба типа обмена сообщениями,

  • синхронный
  • Асинхронный

3) Что вы подразумеваете под синхронным и асинхронным типом обмена сообщениями?

Синхронный: в этом типе обмена сообщениями клиент ожидает ответа сервера на сообщение. Пример: телефонный звонок, двусторонняя радиосвязь.

Асинхронный: в этом типе обмена сообщениями клиент не ждет сообщения от сервера, но автоматически создается событие для запуска сообщения от сервера. Пример: электронная почта, текстовые сообщения, сообщения в блогах.

4) Сколько типов моделей обмена сообщениями предоставляет JMS и что они из себя представляют?

JMS предоставляет два типа моделей обмена сообщениями:

  • Организация очереди точка-точка
  • Второй - опубликовать и подписаться

5) Объясните разницу между темой и очередью?

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

6) Какова роль поставщика JMS?

Провайдер JMS обрабатывает преобразование данных, безопасность сообщений и запуск клиента. Он определяет уровень шифрования, уровень безопасности сообщения и лучший тип данных для клиента, отличного от JMS.

7) Что входит в состав JMS?

  • JMS-провайдер
  • Клиент JMS
  • Сообщения
  • Администрируемые объекты
  • Родные клиенты

8) Приведите пример использования точечной модели в JMS?

Примером для модели точка-точка может быть распечатка. Когда вы выбираете вариант распечатки, ваша система отправляет сообщение на сервер, и после того, как распечатка будет снята, этот сервер снова отправит вам сообщение. Точечная модель используется, когда информация относится к одному клиенту.

9) Какие основные объекты, связанные с JMS, требуются для приложения с поддержкой JMS?

  • Основные требуемые объекты, связанные с JMS:
  • Объект подключения
  • Один или несколько сеансов в соединении, которые обеспечивают контекст для отправки и получения сообщений.
  • Объект темы или очереди в сеансе, представляющий место назначения в брокере сообщений.
  • Соответствующий отправитель, издатель или получатель в рамках сеанса.

10) Что такое администрируемый объект JMS?

Администрируемый объект JMS - это предварительно настроенный объект JMS, который создается администратором для использования клиентами JMS и помещается в пространство имен JNDI.

11) Что является важной частью JMS-приложений?

  • Сессия
  • Связь
  • Сообщение
  • Продюсер сообщения
  • Потребитель сообщений
  • Завод подключения и место назначения

12) Что такое сеанс JMS?

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

13) Укажите разницу между длительной и недлительной подпиской?

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

14) Что такое байтовое сообщение?

Байтовое сообщение - это непрерывный поток байтов. Он содержит массив примитивных байтов в своей полезной нагрузке. Для передачи данных между двумя приложениями в их собственном формате используется байтовое сообщение, что может быть невозможно с другими типами сообщений.

15) Упоминаете о различных типах сообщений, доступных в JMS API?

В JMS API доступны различные типы сообщений: Message, TextMessage, BytesMessage, ObjectMessage и MapMessage.

16) В чем разница между моделью P2P (Peer to Peer) и моделью подписки?

Модель P2P очень надежна и используется в ситуации «один-к-одному», а модель подписки - в ситуации «один-ко-многим». Это очень быстро, но менее надежно.

17) Что такое клиент JMS?

Клиент JMS - это языковая программа, которая отправляет или получает сообщения.

18) Можно ли отправлять сообщения электронной почты с помощью JMS?

JMS не имеет встроенной поддержки операций с электронной почтой.

19) Объясните, как сервер приложений обрабатывает JMS-соединение?

  • С помощью сервера приложений создается сеанс сервера, который сохраняет их в пуле.
  • Чтобы поместить сообщения в сеанс JMS, потребитель соединения использует сеанс сервера.
  • Сеанс сервера - это тот, который создает сеанс JMS
  • Приложение, написанное программистами приложений, создает прослушиватель сообщений.

20) В чем разница между JMS и RPC (удаленный вызов процедур)?

Основное различие между JMS и RPC заключается в способе отправки сообщений. JMS использует асинхронный тип обмена сообщениями, в то время как RPC создает синхронный тип обмена сообщениями. Вызывающий метод в RPC ожидает, пока метод завершит выполнение, и вернет элемент управления вызывающему. В JMS отправитель сообщения просто отправляет сообщение адресату и продолжает свою обработку.

21) Объясните, как JMS работает с J2EE?

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

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

22) Какие типы сообщений поддерживает JMS?

JMS поддерживает следующие типы сообщений:

  • Потоковые сообщения
  • Текстовые сообщения
  • Сообщения на карте
  • Сообщения в байтах
  • Сообщения объекта

23) Что такое MOM применительно к JMS?

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

24) Как вы можете доставить java-сообщение не-java-клиенту?

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

25) Какие есть варианты шифрования для отправки сообщений через JMS?

Шифрование и дешифрование сообщений выполняется поставщиком JMS, а не спецификациями JMS. Sonic MQ от Progress Software - ведущий поставщик JMS, который выполняет шифрование с помощью механизмов шифрования, называемых качеством защиты.