在我处理Message-Queue时,我遇到了静态队列和动态队列这个词。
任何人都可以告诉我差异吗?
答案 0 :(得分:5)
静态队列是提前定义的队列,队列定义在环境中持续存在。
根据需要创建动态队列。其中IBM MQ有两种变体。根据需要创建临时动态队列,并在创建它的程序断开连接时删除。永久动态队列是按需创建的,但在创建它的程序断开连接后会在环境中持续存在。
例如,临时动态队列对于捕获请求/回复方案中的回复非常有用。只要连接的应用程序发出请求,队列就会存在。当程序断开连接时,队列就会消失,因此管理员无需手动清理它。
永久动态队列对持久订阅等用途很有用。创建订阅时,队列必须是唯一的,并且必须提前定义它的开销过大。因此,我们让应用程序动态创建它,但在程序脱机时让队列挂起以收集出版物。通常,应用程序会在不再需要时删除队列,以便管理员不需要。