JMeter и Oracle AQ

У кого-нибудь есть опыт использования JMeter и Oracle AQ? Я пытаюсь публиковать сообщения в очереди Oracle AQ с помощью JMS Publisher, но единственная информация, которая у меня есть, — это файл привязок.


person automationguy    schedule 27.03.2013    source источник


Ответы (1)


Сначала прочтите эту документацию (Oracle® Fusion Middleware Configuring and Management JMS for Oracle WebLogic Server, Chapter 8: Interoperating with Oracle AQ JMS), он содержит всю необходимую информацию о предоставлении разрешений пользователям AQ, именах фабрик подключений AQ JMS и AQ Remote JNDI JMS. Названия пунктов назначения. Там написано WebLogic, но они используют ту же конфигурацию, что и мы.

  1. Поместите JAR-файл Oracle JDBC (ojdbc6.jar) и JAR-файл Oracle AQ (aqapi.jar, найденный в Weblogic $WL_HOME/server/lib) в каталог lib JMeter.

  2. Создайте файл jndi.properties со следующими записями:

    java.naming.factory.initial=oracle.jms.AQjmsInitialContextFactory
    db_url=Your Oracle DB instance JDBC URL
    java.naming.security.principal=username_with_aq_permission_grants
    java.naming.security.credentials=password
    
  3. Поместите jndi.properties в банку с

    jar cf my-jndi-properties.jar jndi.properties
    

    и поместите его в тот же каталог JMeter lib.

  4. Создайте JMS Publisher в JMeter и заполните их:

    1. Check "Use jndi.properties file"
    2. Фабрика соединений: см. таблицу 8-1 и введите значение префикса AQ JMS. Не используйте общие фабрики.
    3. Назначение: Очереди/Имя_вашей_очереди или Темы/Имя_вашей_темы
    4. Снимите флажок «Использовать авторизацию?»

    Заполните, что еще вам нужно.

  5. Повеселись.

Спасибо Дэвиду Л за jndi. информация о свойствах.

person Bruno Laturner    schedule 03.10.2013
comment
Спасибо за исчерпывающую инструкцию. Я продолжаю получать ClassNotFoundException вместо oracle.jms.AQjmsInitialContextFactory и, просматривая JAR-файлы, не могу его найти. Однако я использую aqapi13.jar и не имею доступа к серверу Weblogic. - person Kariem; 03.11.2016