我正在设计一个网络日志系统。其中一项要求是在不显着影响 Web 应用程序性能的情况下记录页面请求(多个节点)。我有两个实现:
- 将数据插入远程数据库。
- 通过 JMS 将数据作为消息发送。如果节点和 Web 记录器主系统之间的连接暂时中断,则让 JMS 处理重试尝试。
第二种方法是否矫枉过正?
我正在设计一个网络日志系统。其中一项要求是在不显着影响 Web 应用程序性能的情况下记录页面请求(多个节点)。我有两个实现:
第二种方法是否矫枉过正?
JMS 应该是一个很好的方法。
您可以通过简单的 log4j 配置来实现这一点。
http://www.slf4j.org/nlog4j/api/org/apache/log4j/net/JMSAppender.html
如果您想要远程日志记录,我认为第二种方法是正确的。
使用 Log4j JMSAppender 将消息附加到 JMS 队列。将 JMS Appenders 与 ActiveMQ 一起使用的示例位于以下链接,
http://activemq.apache.org/how-do-i-use-log4j-jms-appender-with-activemq.html
如果您不使用 ActiveMQ,只需相应地更改 InitialContextFactoryName 和 ProviderURL 属性。