我们有一个网络应用程序,允许用户上传照片,上传后将显示在指定页面上。上传模块将图像放在分解的war目录中,例如webapp root/uploads/
,这样一旦上传图像,就可以立即查看,如http://mydomain.com/uploads/123.png
。
这是一个应用服务器,但事实证明,我们要把这个应用部署到两个负载平衡的服务器上。因此,我编写了一个快速文件同步模块,每当用户上传图像时,它都会使用FTP在服务器之间同步文件。基本上,当用户在server1/uploads/
上上传图像时,我会立即通过FTP将其复制到server2/uploads/
。
编辑(添加上传过程):上传过程如下:
server1/uploads/
在这一点上,我遇到了问题。
urlhttp://mydomain.com
使用硬件负载均衡器指向server1或server2。如果用户将图像test-image.png
上传到server1(然后同步到server2),我假设我可以通过http://mydomain.com/uploads/test-image.png
访问图像,而不管负载均衡器将我定向到server1还是server2。
但事实并非如此。继续这个例子,当域指向server1时上传的图像只有在http://mydomain.com/uploads/test-image.png
被重定向到server1,如果第二个用户访问同一url,但负载平衡器将其定向到server2,则该链接将显示为断开的链接。
所以,每当我FTP复制war目录中的图像时,JBoss似乎不会刷新第二台服务器。这有点奇怪,因为如果我将图像上传到server1,该服务器上的JBoss实例会毫无问题地提供图像文件。
有没有办法手动告诉JBoss“嘿,我们这里有一个新的图像文件”?
我已经将问题缩小到接收服务器上损坏的文件。似乎特定驱动器上的文件权限/加密阻止了我的FTP服务器成功复制图像,这就是为什么我所有同步的图像都无法在任何图像查看器中查看的原因。
我必须尝试解决这些用户权限问题。同时,我将继续回答这个问题,以防有人能进一步阐明其他可能的原因。
是否可以将另一个源主题添加到正在运行的kafka streams java应用程序的现有拓扑中。基于javadoc(https://kafka.apache.org/23/javadoc/org/apache/kafka/streams/kafkastreams.html),我猜答案是否定的。 我的用例:REST api调用触发一个新的源主题应该由一个现有的处理器处理。源主题存储在数据库中并用于生
我有一个java应用程序,需要部署在weblogic服务器中。我目前正在为该应用程序制作ear文件。我的ear文件中有一个ejb jar。我想将log4j2 jar添加到此应用程序中。所以我的文件夹结构是 目前,我已经将JAR放在APP-INF文件夹/lib和META-INF/application中。xml我把JAR放在了模块中。这是我的申请表。xml 但它不接受log4j罐子。有什么解决方案吗
我已经将 firebase-core 添加到我的项目中进行分析,但从那时起我的应用程序就没有响应了。 这是我正在使用的gms的类路径: 这是我用于Firebase的依赖项: 此外,我还添加了到我的构建gradle文件的底部。 在我的应用程序类中,我只是初始化FirebaseAnalytics: 这是我从日志中得到的错误: 错误指向我的应用程序类的第84行,即Firebase Analytics初始
这与我的问题相反,在OpenDayLight中安装自定义功能或模块?。我希望使用Hello World应用程序并添加以下功能的: ODL-RestConf ODL-MDSal-APIDOCS ODL-openflowplugin-flow-services ODL-openflowplugin-app-table-miss-enforcer ODL-OpenFlowPlugin-NXM-Exten
我想知道是否可以将spring的其他参数(如)添加到spring boot app中,以便将其作为服务运行。 我检查了由自动生成的脚本: 所以也许它可以通过maven插件的选项来完成,但是除了JVM参数之外找不到其他的,这不是那么有用...
我想为我的cordova android应用程序启用应用程序索引,如下所述:https://developers.google.com/app-indexing/webmasters/app 不幸的是,我找不到留档如何做一个科尔多瓦的应用程序。有一个插件收听和广播意向,但我不认为这将帮助我在这种情况下:https://github.com/Initsogar/cordova-webintent 我