找回密码
 立即注册

QQ登录

只需一步,快速开始

Andy.C

注册会员

16

主题

62

帖子

186

积分

注册会员

积分
186
Andy.C
注册会员   /  发表于:2024-7-22 11:20  /   查看:2110  /  回复:18
1金币
本帖最后由 Joestar.Xu 于 2024-7-25 16:46 编辑


调研编号:DOCXLS-10903

咨询一下gc内部序列化用的组件是什么?
如果高并发下,因为序列化导致的高cpu占用有什么优化手段?

最佳答案

查看完整内容

您好,GcExcel目前使用的序列化库为:org.glassfish/javax.json和java.io.OutputStreamWriter 。 我们使用 javax.json 的 JSON-P Streaming API 调用来读取 JSON。使用java.io.OutputStreamWriter来编写JSON。 目前,我们已经在7.2.1中针对该问题进行了优化,经过初步测试,toJSON的速度快了至少2倍以上,您可以升级到7.2.1后测试看看。

18 个回复

倒序浏览
最佳答案
最佳答案
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-22 11:20:20
来自 15#
您好,GcExcel目前使用的序列化库为:org.glassfish/javax.json和java.io.OutputStreamWriter 。

我们使用 javax.json 的 JSON-P Streaming API 调用来读取 JSON。使用java.io.OutputStreamWriter来编写JSON。

目前,我们已经在7.2.1中针对该问题进行了优化,经过初步测试,toJSON的速度快了至少2倍以上,您可以升级到7.2.1后测试看看。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-22 18:03:57
2#
您好,GcExcel会尽可能使用所有的资源,用空间换时间以换取最短运行时间,您这边是遇到严重的性能问题了吗?为什么需要高并发序列化呢?
回复 使用道具 举报
Andy.C
注册会员   /  发表于:2024-7-22 19:24:04
3#
本帖最后由 Andy.C 于 2024-7-22 19:26 编辑
Joestar.Xu 发表于 2024-7-22 18:03
您好,GcExcel会尽可能使用所有的资源,用空间换时间以换取最短运行时间,您这边是遇到严重的性能问题了吗 ...

是的,我们这边在一台64核的服务器上,200个并发读取不同wk对象中的sheet.tojson,每个请求1-2个sheet.tojson;
cpu拉满了,其中也没有改数据计算,怀疑卡点就在tojson序列化上
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-23 09:43:11
4#
了解了,为什么需要针对Sheet执行toJSON接口呢?是为了实现什么样的需求?这边看看有没有其他的解决方案。
回复 使用道具 举报
Andy.C
注册会员   /  发表于:2024-7-23 16:16:52
5#
Joestar.Xu 发表于 2024-7-23 09:43
了解了,为什么需要针对Sheet执行toJSON接口呢?是为了实现什么样的需求?这边看看有没有其他的解决方案。

从一个大的excel中按需读取一部分sheet到前端展示
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-23 17:38:43
6#
了解了,这边调研一下,看看是否有更好的解决方案。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-24 14:11:43
7#
您好,这边初步排查了一下,无法确认为什么会出现这样的问题。

能否请您提供一个可以复现此问题的Demo,这边结合实际情况调研看看。
回复 使用道具 举报
Andy.C
注册会员   /  发表于:2024-7-24 15:07:51
8#
Joestar.Xu 发表于 2024-7-24 14:11
您好,这边初步排查了一下,无法确认为什么会出现这样的问题。

能否请您提供一个可以复现此问题的Demo, ...

demo很简单,new100个wk对象,加载一个略大一点的excel,然后不停的去读取其中的sheet即可。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-24 17:36:54
9#
好的,这边尝试复现一下~
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部