问题标签 [xadisk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - XADisk - 试图将字节数组保存到文件中
每当我尝试使用XADisk将 byte[] 保存到文件时,我都会收到 XASystemNoMoreAvailableException:
org.xdisk.filesystem.exceptions.XASystemNoMoreAvailableException:XADisk 实例遇到严重问题,不再可用。这种情况非常罕见。如果您认为您已经为 XADisk 工作设置了正确的设置,请考虑在 XADisk 论坛中讨论,或提出带有详细信息的错误
根据示例,我的代码是最基本的......
xadisk - XADisk 读写操作的性能开销是多少?
除了从底层文件读取/写入之外,XADisk 还能做什么?这如何转化为读/写吞吐量的百分比(大约)?
jboss - 如何在 JBoss EAP6.1 中设置 XADisk(XA 企业事务)
我想设置 JBoss EAP6.1 在 XA 企业事务中使用 XADisk。XADisk 允许文件系统事务。
我应该怎么做才能将此设置为 XA 企业事务。XADisk 还有RAR
- 在创建者主页上下载的资源存档。
后来我想在 EJB (JavaEE 6) 的一个事务中使用 XADisk 和数据库。
到目前为止,我已经找到了许多配置 JDBC XA-Datasources 的示例,但 XADisk 不是一个。
编辑:感谢@Gimby 的提示。
maven - 依赖打包为rar但需要jar
部署在 Maven Central 上的 XADisk 库打包为“rar”而不是“jar”。但我只需要我正在从事的项目的 jar(可能还有源代码)。我想知道处理这种依赖关系的最佳(maven 风格)方法是什么。
jar 文件在 Central 上可用,但未在 pom 中指定,因此 type="jar" 不起作用
pom在这里:https ://repo1.maven.org/maven2/net/java/xadisk/xadisk/1.2.2/xadisk-1.2.2.pom
罐子可以在这里找到:https ://repo1.maven.org/maven2/net/java/xadisk/xadisk/1.2.2/xadisk-1.2.2.pom
websphere - 将 XADisk 配置为 Websphere 上的 JCA 资源适配器
我已经在我的 Websphere JCA 资源适配器列表中部署了 XADisk.rar (1.2.2)。
现在我正在尝试使用“自定义属性”选项卡对其进行配置。有些属性很容易编辑(例如 instanceId),但有些则不是(例如 xaDiskHome - 这是一个非常重要的属性)。
为什么以及如何使这些属性可编辑?
database - Web应用程序在文件系统中存储上传的文件时如何处理问题?
我正在构建一个 Web 应用程序,用户可以在其中创建报告,然后为创建的报告上传一些图像。当用户单击报告页面上的按钮时,这些图像将在浏览器中呈现。这些图像是机密的,只有授权用户才能访问它们。
我知道将图像存储在数据库、文件系统或亚马逊 S3 等服务中的优缺点。对于我的应用程序,我倾向于将图像保留在文件系统中,并将图像的路径保留在数据库中。这意味着我必须处理围绕分布式事务管理出现的问题。我需要一些关于如何处理这些问题的建议。
1- 我相信正确的解决方案之一是使用 JTA 和 XADisk 等技术。我对这些技术不是很了解,但我相信 2 阶段提交是如何实现自动性的。我使用 MySQL 作为数据库,似乎 MySQL 支持 2 阶段提交。这种方法的问题是 XADisk 似乎不是一个活跃的项目,并且没有太多关于它的文档,而且事实上我对这种方法的来龙去脉不是很了解。我不确定我是否应该投资这种方法。
2-我相信我可以解决由于我的应用程序违反 ACID 属性而引起的一些问题。上传图片时,我可以先将文件写入磁盘,如果此操作成功,我可以更新数据库中的路径。如果数据库事务失败,我可以从磁盘中删除文件。我知道这仍然不是防弹的;在数据库事务之后可能会发生电力短缺,或者磁盘可能暂时没有响应等......我知道还有并发问题,例如,如果一个用户试图修改上传的图像而另一个用户试图在同时,也会出现一些问题。我的应用程序中并发更新的机会仍然相对较低。
如果发生这种异常情况,我相信我可以忍受磁盘上的孤立文件或数据库上的孤立图像路径。如果文件路径存在于 db 而不是文件系统中,我可以在报告页面上向用户显示通知,他可能会尝试重新上传图像。文件系统中的孤立文件不会有太大问题,我可能会不时运行一个进程来检测这些文件。不过,我对这种方法不是很满意。
3-最后一个选项可能是根本不在数据库中存储文件路径。我可以构建文件系统,以便可以在代码中推断文件路径并一次加载所有图像。例如,我可以为每个报告创建一个名为报告 ID 的文件夹。当请求加载报告的图像时,我可以立即加载图像,因为我知道报告 ID。这最终可能会导致文件系统中有大量文件夹,我不确定这样的设计是否可以接受。该方案仍将存在并发问题。
对于我应该遵循哪种方法,我将不胜感激。