- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的 weblogic 服务器(4 个节点)中,我定义了一个带有 (Oracle) 数据库存储的可迁移 JMS 服务器。这里我每秒收到 1000 条消息。每条消息都是大约 1kB 的 XML 消息。
我可能需要停止 java MDB 1 天并存储几 GB 的数据(由于维护)。
如何(以很少的开销)保存这些压缩消息以减少空间?
最佳答案
有两种可能性,但一般来说主要思想是压缩数据:
那么让我建议第一个解决方案;然后,您可以在生产者和消费者上启用 weblogic 压缩或自定义压缩。
Navigate to JMS Connection Factory -> Click the Configuration > Default Delivery tab. On the Default Delivery page -> Default Compression Threshold
例如,如果生产者是否压缩消息,我在 MDB 上使用以下代码来提取文本;
protected String getText(Message message) throws JMSException, IOException {
if (message instanceof TextMessage) {
return ((TextMessage) message).getText();
} else if (message instanceof BytesMessage) {
byte zipped[] = new byte[(int) ((BytesMessage) message)
.getBodyLength()];
((BytesMessage) message).readBytes(zipped);
ByteArrayInputStream bais = new ByteArrayInputStream(zipped);
StringBuilder sb = null;
GZIPInputStream in = null;
try {
in = new GZIPInputStream(bais);
BufferedReader reader = new BufferedReader(
new InputStreamReader(in));
sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line);
}
} finally {
try {
if (in != null)
in.close();
} catch (IOException e) {
log.error("getText: ", e);
}
try {
if (bais != null)
bais.close();
} catch (IOException e) {
log.error("getText: ", e);
}
}
return sb.toString();
} else {
throw new JMSException("Unrecognized message type "
+ message.getClass());
}
}
最近我评估了Efficient XML Interchange (EXI) Format 1.0 。这里的指标:
但唯一的java开源实现是exi proxessor西门子提出
关于java - Weblogic JMS 服务器的巨大存储空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21490522/
这个问题已经有答案了: Add a property to a JavaScript object using a variable as the name? (14 个回答) 已关闭 6 年前。 目
每个 Azure 存储帐户的卷限制为 200 TB(200 TB)。这听起来确实很大,但如果您将文件存储在每个 25 MB 的 Blob 存储中,则可以存储大约 400 万个文件,这很好,但并非不可能
我在 Applestore 中发布了我的应用程序以供审核,但遭到拒绝,上面写着: ”在启动和内容下载时,您的应用程序会在用户的 iCloud 上存储 1.4 GB,这不符合 iOS 数据存储指南。"
我对 laravel 的 remember me 功能有点问题。通常,laravel 添加一个 session cookie、一个xsrf token 和具有随机哈希值的第三个 cookie。 (下图
我需要在 SQL 中存储十亿个直方图。这些直方图具有相同的桶,但它们的计数可能有很大的差异,但是,大多数桶在很多时候都是 0。 我最初的尝试是让每个直方图有一行,其中每一列代表一个桶。 我对我的数据类
我正在处理 70GB 的数据集 较早使用 df -BG命令 我被展示了 Filesystem 1G-blocks Used Available Use% Mounted on overlay
有些文件每天都会上传到 FTP 服务器,我需要将这些文件放在 Google Cloud Storage 下。我不想让上传文件的用户安装任何额外的软件,只是让他们继续使用他们的 FTP 客户端。有没有办
如何上传内容类型为 mutlipart/formdata ---boundaryString 的文件使用 signed url谷歌存储? 我面临的问题是,当我们使用浏览器上传文件时,浏览器将内容类型设
版本: 11.2.0.2.0 我想验证我在手册中再次阅读的以下断言: The PLS_INTEGER data type has these advantages over the NUMBER da
我只是在寻找澄清,因为文档指出一个空的、刚刚创建的 SQL 实例应该只占用大约 250Mb。 从文档中引用我可以在存储空间上找到的任何内容: MySQL Second Generation insta
我是一名优秀的程序员,十分优秀!