File 集成现代Java系统和文件系统的好模式

File 集成现代Java系统和文件系统的好模式,file,filesystems,jms,integration,apache-camel,File,Filesystems,Jms,Integration,Apache Camel,我们有一个系统将向我们的系统发送大量文件传递 我们不希望在文件系统的顶部构建一个轮询并触发该文件的相应进程的层,因为文件系统不提供事务、隔离等好处 我们正在考虑使用ApacheCamel来监视文件,然后向队列发送消息以通知其到达。由于我们正在处理一个消息队列,因此我们将获得由此带来的所有好处,例如消息队列的透明性、成功时发送确认等 这听起来是一件好事,还是有更好的处理文件系统的模式 如果您需要将文件路由并传递到不同的服务器,那么您的方法可能是好的。不过你需要三思 消息事务可以回滚,但文件不能回滚

我们有一个系统将向我们的系统发送大量文件传递

我们不希望在文件系统的顶部构建一个轮询并触发该文件的相应进程的层,因为文件系统不提供事务、隔离等好处

我们正在考虑使用ApacheCamel来监视文件,然后向队列发送消息以通知其到达。由于我们正在处理一个消息队列,因此我们将获得由此带来的所有好处,例如消息队列的透明性、成功时发送确认等


这听起来是一件好事,还是有更好的处理文件系统的模式

如果您需要将文件路由并传递到不同的服务器,那么您的方法可能是好的。不过你需要三思

消息事务可以回滚,但文件不能回滚。此外,您确实需要考虑所有您想要解决的案例——在序列图中绘制所有可能性,以确保您的解决方案不会太复杂,并且所有错误案例都得到了处理

也许,Camel拾取文件并在其上路由的解决方案就足够了?然后您可以实现日志记录等,但它不会是跨国家的

ActiveMQ有一个类似于这种情况的功能,名为,旨在支持带外通道中的大型文件传输,但使用JMS消息作为控制“信号”。根据您的具体要求,它可能适合您的情况,也可能不适合您的情况。

请参阅: