Log4Net 是面向消息的中间件吗?

Is Log4Net a message oriented middleware?

我找不到 log4net 是否是 MOM 的信息。如果不是那么为什么?我试图从他们的网站上弄清楚。

log4net 不是 面向消息的中间件。

A MOM 支持在分布式应用程序环境中交换通用消息。数据通过消息传递进行交换 and/or 消息队列支持分布式计算进程之间的同步和异步交互。

MOM 通常是为这些目标而设计的:

  • 异步性
  • 可扩展性
  • 负载平衡

为什么 log4net 不是面向消息的中间件?

因为 log4net 的设计考虑了这些目标:

  • 记录速度(或不记录,禁用记录时)
  • 日志的灵活性(可以输出到多个日志目标,并在运行时轻松修改写入策略)

能够输出到多个目标(包括通过 UDP 远程)是 MOM 的一个重要特征。然而 log4net 并没有在应用程序之间创建通信层,它只允许将日志写入多个目标。它还不支持开箱即用的异步登录。所以它并没有提供 MOM 所期望的一切。