Java 在weblogic应用服务器中使用一致性缓存实现Oracle DCN

Java 在weblogic应用服务器中使用一致性缓存实现Oracle DCN,java,oracle,caching,weblogic-10.x,oracle-coherence,Java,Oracle,Caching,Weblogic 10.x,Oracle Coherence,我试图在oracle上实现一个DCN(数据库更改通知),以通知侦听器DB事件,以便更新一致性缓存 我遵循了教程,使用一个带有main方法的示例程序来执行listener类并保持其运行,效果很好 我的问题是,既然我的本地测试只运行一个main方法来保持侦听器运行,那么这个通知和侦听器将如何在生产环境中实现?使用什么技术使侦听器始终在后台运行并从数据库接收通知) 我们使用Weblogic 10作为我们的应用程序服务器 编辑: 一个监听器可以用于此目的吗?监听器由JDBC驱动程序在一个新线程上为您运行

我试图在oracle上实现一个DCN(数据库更改通知),以通知侦听器DB事件,以便更新一致性缓存

我遵循了教程,使用一个带有main方法的示例程序来执行listener类并保持其运行,效果很好

我的问题是,既然我的本地测试只运行一个main方法来保持侦听器运行,那么这个通知和侦听器将如何在生产环境中实现?使用什么技术使侦听器始终在后台运行并从数据库接收通知)

我们使用Weblogic 10作为我们的应用程序服务器

编辑


一个监听器可以用于此目的吗?

监听器由JDBC驱动程序在一个新线程上为您运行(请参见此处的说明:)。正如上面所说,假设您使用的是纯JDBC方法:

“JDBC驱动程序启动一个新线程,该线程侦听来自服务器的通知(通过专用通道),并将这些通知消息转换为Java事件。然后,驱动程序通知所有注册到此注册的侦听器。”


因此,您可以使用Weblogic启动类或设置了“启动时加载”的servlet中的init()方法来进行注册,然后将其忘掉。您的回调将由另一个线程上的JDBC驱动程序调用。

侦听器由新线程上的JDBC驱动程序为您运行(请参阅此处的说明:)。正如上面所说,假设您使用的是纯JDBC方法:

“JDBC驱动程序启动一个新线程,该线程侦听来自服务器的通知(通过专用通道),并将这些通知消息转换为Java事件。然后,驱动程序通知所有注册到此注册的侦听器。”

因此,您可以使用Weblogic启动类或设置了“启动时加载”的servlet中的init()方法来进行注册,然后将其忘掉。您的回调将由另一个线程上的JDBC驱动程序调用