java 利用tk.mybatis的通用mapper实现异步导出(一)

17 篇文章 0 订阅

        由于某些系统导出频率很高,而且数据量很大,要是同步导出不仅占用当前系统的cpu、内存等硬件的资源,同时也会占用网络等资源,所以我们可以把导出的功能做为异步的方式,异步操作并起把文件放到文件服务器中,下载的文件直接从文件系统中导出。异步导出的方法方案很多,我主要说两种:

一、针对不同的导出功能提供不同的接口

       开发一个通用的job动态调用对应的接口,提供的接口我们可以使用restful、dubbo、springcloud、webservice等,只要定义一个规则即可,请求的参数当然需要事先保存到非关系数据库或者关系数据库中,也可以放到MQ中,看具体的情况具体的选择,具体的可以参考下图,把给前台的后台和提供导出数据的后台分离开,达到硬件资源、网络资源互不影响。

  •        优点
    • 功能细化,方便维护,功能清晰
    • 部署到不同的机器,资源互不影响
  • 缺点
    • 需要定义一个规则,所有的接口按照这个规则开发
    • 新建一个项目提供查询接口,增加开发工作量

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

比嗨皮兔

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值