.net core 下FastReport打印应用崩溃

本文介绍了在.NET Core环境中,使用FastReport进行打印服务时遇到的应用崩溃问题。分析发现,特定的模板文件导致内存持续增长。通过创建测试工具模拟数据源和打印过程,定位到问题模板并删除引起内存泄漏的字体,成功解决了内存暴涨的问题。建议在.NET Core中引入第三方库时要谨慎,尤其是非开源且收费的库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

.Net core 下提供的打印服务,利用了第三方的收费库FastReport,该类库在.net Framework下一只表现不错,因此我司在微服务迁移后,仍采用该方案。
上线后,某天某人编辑了打印模板,结果几个小时后,悲剧发生,微服务崩溃,打印服务彻底宕机,紧急增加虚机配置,并无什么卵用。

问题分析

最直接的方法:比对模板文件,并未发现不妥,有些字体方面的不同,也是必须的,因此初期并未重视。
线上已经炸锅,怎么办?
那就直接上测试吧,把之前的打印快速移植到一个控制台程序,模板文件加载上。测试一切OK。什么鸟问题?
循环加载试下,oooop,内存竟然在涨,不会自己释放吗?
比对下旧模板,嗯,内存可以释放。那可以确定是模板的问题了!
再次比对FastReport打印模板,决定吧字体删除,这下测试下,并不 增加内存,好了,上线,问题消除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

webmote

如果能帮到你,请支持下博主

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值