问题标签 [tibco-ems]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tibco-ems - HermesJMS 和 TIBCO
我正在尝试使用 hermes JMS v1.4 与 TIBCO 8.0 EMS 连接并查看队列详细信息。
可以这样做吗?
请让我知道所需的 TIBCO EMS 8.0 JMS jar 和相同的顺序。
我添加了 8 个 TIBCO EMS JMS jar 文件并在 Preferences 选项卡中选择了 TIBCO EMS。
我无法找到插件错误。请让我知道解决方案。
java - tibco ems 是否通过更多连接进行扩展
我有一个 java 服务器(jdk 1.6),它通过一个连接从 tibco ems 主题中提取数据。我开始看到关于能够从 tibco 提取消息的积压日志。如果我将数据分解为多个主题并且每个主题都有一个单独的连接(相同的 JMS 服务器)到我的服务器,那么 tibco 的扩展性如何。
我也不能将服务器分成多个服务器。
wso2 - 与 Tibco EMS 8.0 集成的 WSO2 ESB 问题
我尝试使用 Tibco EMS 在 WSO2 ESB 上启用 JMS 传输。
使用 Tibco BW 6.3.0 - 将以下客户端 jar 复制到{wso2esb-4.8.0}\repository\components\lib
tibjms.jar, jms.jar
- 工作没有任何问题。
使用 Tibco EMS 8.0 - 将以下客户端 jar 复制到{wso2esb-4.8.0}\repository\components\lib
tibjms.jar, jms-2.0.jar
- 结果异常为 ClassNotFound。
根据 WSO2 ESB 文档,它仅支持 JMS 1.1 和 1.0.2b 规范。所以尝试了组合罐子。
https://docs.wso2.org/display/ESB481/JMS+Transport#JMSTransport-JMSConnectionFactoryParameters
即来自 Tibco-6.3.0 的 Jms.jar 和来自 Tibco 8.0 的 tibjms.jar - 结果与 ClassNotFound 相同的异常。下面是异常堆栈跟踪。
java.lang.NoClassDefFoundError: javax/jms/JMSContext at com.tibco.tibjms.naming.TibjmsContext$Messenger.(TibjmsContext.java:316) at com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:651)在 com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:491) 在 javax.naming.InitialContext.lookup(InitialContext.java:411) 在 org.apache.axis2.transport.jms.JMSUtils.lookup(JMSUtils .java:583) org.apache.axis2.transport.jms.JMSConnectionFactory.(JMSConnectionFactory.java:93) org.apache.axis2.transport.jms.JMSConnectionFactoryManager.loadConnectionFactoryDefinitions(JMSConnectionFactoryManager.java:58) org.apache .axis2.transport.jms.JMSConnectionFactoryManager.(JMSConnectionFactoryManager.java:45) 在 org.apache.axis2.transport.jms.JMSSender。init(JMSSender.java:67) 在 org.apache.axis2.context.ConfigurationContextFactory.initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache .axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) 在 org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) 在 org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager .java:398) 在 org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)java:67) 在 org.apache.axis2.context.ConfigurationContextFactory.initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache.axis2.context .ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) at org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398 ) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77) 的 org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219)java:67) 在 org.apache.axis2.context.ConfigurationContextFactory.initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache.axis2.context .ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) at org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398 ) 在 org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)axis2.context.ConfigurationContextFactory.initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java: 93) 在 org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) 在 org.wso2.carbon.core 的 org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) .init.CarbonServerManager.start(CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)axis2.context.ConfigurationContextFactory.initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java: 93) 在 org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) 在 org.wso2.carbon.core 的 org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) .init.CarbonServerManager.start(CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) 在 org.wso2 .carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) at org.wso2.carbon.core.init.CarbonServerManager.start (CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)initTransportSenders(ConfigurationContextFactory.java:300) 在 org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231) 在 org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) 在 org.wso2 .carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) at org.wso2.carbon.core.init.CarbonServerManager.start (CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)init(ConfigurationContextFactory.java:231) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) at org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2 .carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) 在 org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent .activate(CarbonCoreServiceComponent.java:77)init(ConfigurationContextFactory.java:231) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93) at org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2 .carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) 在 org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219) 在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent .activate(CarbonCoreServiceComponent.java:77)CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) at org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java: 219)在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) at org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java: 219)在 org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)
axis2.xml 中的运输配置
由于 Tibco 8.0 支持向后兼容。我们有兴趣将 esb 与 tibco 8.0 版本集成。请让我知道解决此问题的方法。
.net - 配置:WCF 的 TIBCO EMS 传输通道
有人用过 EMS WCF 插件(Net.Tems Listener Adapter)吗?
如何在我的 WCF 服务中配置队列或主题的侦听器数量、线程/最大作业/流控制和保持活动状态.. 设置?
我有一个工作的 WCF 服务,通过 JMS 绑定侦听 XML SOAP,该绑定由 IIS 中的 WAS(Net.Tems 侦听器适配器)托管。
java - 使用 JAVA 在 JMS 队列中发布消息
我是 JMS 的新手,经过长时间的搜索后,我用谷歌搜索了一个连接到 JMS 并发布消息的代码。
问题是我需要将消息发布到远程队列中,但我不确定如何建立与它的连接并发布消息。
服务器类型:TIBCO EMS
服务器主机:**.***** .net
端口 :* **用户名 :用户
密码 :user123
队列 :*。* . .. 。订单管理。.1
我想建立连接,发布一个简单的消息并取回它。请帮忙!提前致谢
我从互联网上获得的代码
tibco-ems - 在 tibco ems 脚本中注释一行的语法是什么
在如下所示的脚本中
如何评论一行?
create queue one
create queue two
create topic three
java - JMS 连接开销
每次将消息发送到队列时创建以下对象的开销是多少?对象:javax.jms.Connection
, javax.jms.Session
,javax.jms.MessageProducer
在我的代码中,每当我想发送消息时,我都会创建以上 3 个对象。
我知道只创建一次对象并使用它是件好事,但连接/会话在服务器故障转移后进入IllegalState 。我connectionFactory
能够重新连接,但无法刷新连接/会话对象。
有人可以解释一下开销吗?
multithreading - 具有多个生产会话的单个 JMS 连接何时开始成为瓶颈?
我最近阅读了很多关于 JMS、Spring(和 TIBCO EMS)关于连接、会话、消费者和生产者的最佳实践
在 Spring 世界中工作时,流行的智慧似乎是
- 用于消费/传入流-
AbstractMessageListenerContainer
与多个消费者/线程一起使用。 - 用于生产/发布流- 在 a
CachingConnectionFactory
下面使用 aJmsTemplate
来维护与代理的单个连接,然后缓存会话和生产者。
对于生产/发布,这就是我的(较大的)服务器应用程序现在正在做的事情,以前它正在为它发布的每条消息(坏!)创建一个新的连接/会话/生产者,因为使用了原始连接工厂下JmsTemplate
. 旧的行为有时会导致在高峰期的短时间内在代理上创建和关闭 1,000 个连接,甚至因此达到套接字/文件句柄限制。
但是,当切换到此模型时,我无法理解使用单个 TCP 连接到代理的性能限制/注意事项是什么。我了解 JMS 提供程序应确保它可以以多线程方式等方式使用 - 但从实际角度来看
- 它只是一个 TCP 连接
- JMS 提供者在某种程度上需要协调写下管道,这样它们就不会最终出现交错的混乱,即使它在其内部协议中有一些分块
- 这肯定涉及使用单个连接的线程/会话之间的一些争用
- 具有一定的网络语义(代理的高延迟?不稳定的吞吐量?)单个连接肯定不是理想的吗?
假设我在正确的轨道上
- 我是否在这里偏离了基础并误解了底层连接如何工作以及由 JMS 提供程序共享?
- 任何争用是通过拥有更多连接来缓解的问题,还是只是将争用转移到代理?
- 有没有人有任何达到他们可以分享的极限的实际经验?具有特定的消息或网络吞吐量,甚至是由并行共享连接的线程/会话数引起的
- 在单连接场景中是否应该担心写入非常大消息的会话会阻塞其他写入小消息的会话?
将不胜感激任何想法或指针,以了解更多关于该主题的阅读或与其他经纪人的经验。
java - JMS 1.1: Load sharing client side for Point-to-Point mode
The legacy system with JMS 1.1 (TibcoJms 4.4.1) I am working on has a JMS queue (not topic) established on the server side, which is meant for PTP mode of communication. Message item will be constantly put onto the queue by the server.
What I want to achieve on the is to poll these data by multiple threads on the client side. Each thread should deal with Messages with a particular attribute value.
One way I could do this I guess is to implement a MessageListener listening on that queue which acts as a 'switch' to distribute (PUSH) the message received to each thread on the client side to process. OR I can implement a MessageListener listening on that queue on the server and put received msg on a new queue on the client and each thread will POLL against the client side queue.
Either way, I think I will need to use an extra set of data structure on the client side shared among the threads.
My question is about whether there is a more direct approach involving direct communication between the client side processor thread and that queue on the server, kind of similar to multiple subscribers to a topic (although each subscriber does not actually 'share the load' but rather gets the same load. it is acceptable for my purpose).
Is there some good common practise anyone can suggest in this situation?
java - JMS 连接 - 启动方法 (IBM MQ impl)
javax.jms.Connection#start()
真正是为了什么。根据javadoc,它说:
开始(或重新启动)连接传递传入消息。
但这究竟意味着什么?我想这取决于实现,那么它在 IBM MQ(最新 8+)中意味着什么?也许在该客户端连接之后会预先缓存服务器消息?我检查了一些生产者的例子,他们正在调用 start 方法,但从未阅读过消息。我在没有调用 start() 的情况下测试了代码,它工作正常(发送,而不是接收)。
我只是想了解 MQ 可能比需要的更多,但我仍然想知道。也许它在其他 JMS 实现中是如何完成的?像 Tibco、Apache MQ?也许有人知道?