当前位置: 首页 > news >正文

网站如何在手机端做适配百度竞价推广

网站如何在手机端做适配,百度竞价推广,个人网站建设多少钱,3d展示网站源码1、在导出Excel时经常会碰到文件过大,导出特别慢 2、微服务限制了请求超时时间,文件过大情况必然超时 优化思路: 1、文件过大时通过文件拆分、打包压缩zip,然后上传到oss,并设置有效期(30天过期) 2、把…

1、在导出Excel时经常会碰到文件过大,导出特别慢

2、微服务限制了请求超时时间,文件过大情况必然超时

优化思路:

1、文件过大时通过文件拆分、打包压缩zip,然后上传到oss,并设置有效期(30天过期)

2、把同步下载改成异步

3、文件生成完成,更新任务状态

4、通过oss的下载链接下载文件

5、多模块复用,只需要实现各自查询Excel业务数据的接口即可

以下是部分参考代码:

public class TxnETExecutor extends AbstractExportTaskExecutor {private final MposScene mposScene;private final OssService ossService;@Overridepublic boolean support(int taskType) {return ExportTaskType.MPOS_TXN_BILL_EXPORT.ordinal() == taskType;}@Overridepublic int getFileSize(String reqBody, String audClientId, Long groupId) {TxnMposBillItemFindReq req = JSON.parseObject(reqBody, TxnMposBillItemFindReq.class);req.setAudClientId(audClientId);req.setLoginGroupId(groupId);req.setPage(1);req.setPageSize(1);req.setDiffStatus(true);Pageable pageable = mposScene.findByChannelBillItem(req);return pageable.getTotalPages().intValue();}public void execute(Long taskId, int fileSize, String reqBody, String audClientId, Long groupId) {TxnMposBillItemFindReq req = JSON.parseObject(reqBody, TxnMposBillItemFindReq.class);req.setAudClientId(audClientId);req.setLoginGroupId(groupId);req.setPage(1);req.setDiffStatus(true);int pageSize = Math.min(fileSize, DEFAULT_PAGE_SIZE);req.setPageSize(pageSize);Pageable pageable = mposScene.findByChannelBillItem(req);Long totalPages = pageable.getTotalPages();List<Map<String, Object>> first = parse(pageable.getItems());ByteArrayOutputStream outputStream = WebFluxUtils.buildExcelOutputStream(first, null);if (totalPages <= 1) {OssPutObjectResp objectResp = upload(audClientId, "xlsx", new ByteArrayInputStream(outputStream.toByteArray()));String fileUrl = objectResp.getFileUrl();update(CashierExportTaskUpdateReq.newBuilder().setId(taskId).setFileStatus(ExportTaskFileStatus.SUCCESS.ordinal()).setFileFormat("xlsx").setFileProgressRate("100%").setFileUrl(fileUrl).build());return;}Map<String, ByteArrayOutputStream> files = new HashMap<>();files.put(String.format("渠道对账单[%s-%s].xlsx", 1, totalPages), outputStream);for (int i = 2; i <= totalPages; i++) {req.setPage(i);Pageable pageableExportMore = mposScene.findByChannelBillItem(req);ByteArrayOutputStream j = WebFluxUtils.buildExcelOutputStream(parse(pageableExportMore.getItems()), null);files.put(String.format("渠道对账单[%s-%s].xlsx", i, totalPages), j);}Path tmp = zip(files);if (tmp == null) {update(CashierExportTaskUpdateReq.newBuilder().setId(taskId).setFileStatus(ExportTaskFileStatus.FAIL.ordinal()).setFileFormat("zip").setFileProgressRate("100%").build());return;}InputStream inputStream;try {inputStream = Files.newInputStream(tmp);} catch (IOException e) {e.printStackTrace();update(CashierExportTaskUpdateReq.newBuilder().setId(taskId).setFileStatus(ExportTaskFileStatus.FAIL.ordinal()).setFileFormat("zip").setFileProgressRate("100%").build());return;}try {OssPutObjectResp objectResp = upload(audClientId, "zip", inputStream);update(CashierExportTaskUpdateReq.newBuilder().setId(taskId).setFileStatus(ExportTaskFileStatus.SUCCESS.ordinal()).setFileFormat("zip").setFileProgressRate("100%").setFileUrl(objectResp.getFileUrl()).build());} catch (Exception e) {e.printStackTrace();update(CashierExportTaskUpdateReq.newBuilder().setId(taskId).setFileStatus(ExportTaskFileStatus.FAIL.ordinal()).setFileFormat("zip").setFileProgressRate("100%").build());} finally {try {Files.delete(tmp);} catch (IOException ignore) {}}}private List<Map<String, Object>> parse(Collection<TxnMposBillItemFindResp> items) {List<Map<String, Object>> result = new ArrayList<>();if (items == null || items.isEmpty()) {throw FibException.ofNotFound("暂无数据");}items.forEach(item -> {Map<String, Object> map = new LinkedHashMap<>();map.put("创建时间", item.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));map.put("批次号", item.getBatchNo());map.put("交易时间", item.getTransTime());map.put("交易月份", item.getTransMonth());map.put("平台订单号", item.getServerOrderId());......result.add(map);});return result;}private OssPutObjectResp upload(String audClientId, String suffix, InputStream inputStream) {return ossService.putObject(OssPutObjectReq.newBuilder().setBucketName(DEFAULT_BUCKET).setAudClientId(audClientId).setDirectoryPath("***").setSuffix(suffix).build(), inputStream);}
}

效果图:


文章转载自:
http://issuer.yrpg.cn
http://honoraria.yrpg.cn
http://skupshtina.yrpg.cn
http://vulcanization.yrpg.cn
http://travelling.yrpg.cn
http://mecism.yrpg.cn
http://vulgarise.yrpg.cn
http://cognac.yrpg.cn
http://syllabogram.yrpg.cn
http://anthelmintic.yrpg.cn
http://brasilia.yrpg.cn
http://nakhodka.yrpg.cn
http://paisley.yrpg.cn
http://patronizing.yrpg.cn
http://lyons.yrpg.cn
http://blastomere.yrpg.cn
http://midriff.yrpg.cn
http://lumber.yrpg.cn
http://glume.yrpg.cn
http://diapir.yrpg.cn
http://pedagoguism.yrpg.cn
http://delphian.yrpg.cn
http://inexplicably.yrpg.cn
http://transspecific.yrpg.cn
http://viewpoint.yrpg.cn
http://anthracosis.yrpg.cn
http://spile.yrpg.cn
http://lentando.yrpg.cn
http://hypanthial.yrpg.cn
http://metastable.yrpg.cn
http://resonator.yrpg.cn
http://bracero.yrpg.cn
http://dicephalous.yrpg.cn
http://four.yrpg.cn
http://eclipse.yrpg.cn
http://detrition.yrpg.cn
http://genesic.yrpg.cn
http://corded.yrpg.cn
http://contrate.yrpg.cn
http://kotabaru.yrpg.cn
http://riffraff.yrpg.cn
http://yuppie.yrpg.cn
http://normality.yrpg.cn
http://benedictory.yrpg.cn
http://overthrow.yrpg.cn
http://multiwindow.yrpg.cn
http://centralization.yrpg.cn
http://tepp.yrpg.cn
http://decolor.yrpg.cn
http://sempiternity.yrpg.cn
http://beehouse.yrpg.cn
http://multirole.yrpg.cn
http://effrontery.yrpg.cn
http://interdependence.yrpg.cn
http://postmillennial.yrpg.cn
http://suppository.yrpg.cn
http://wonderworking.yrpg.cn
http://healthful.yrpg.cn
http://afghanistani.yrpg.cn
http://petroleuse.yrpg.cn
http://mancunian.yrpg.cn
http://countrywide.yrpg.cn
http://necromantic.yrpg.cn
http://alpeen.yrpg.cn
http://machicoulis.yrpg.cn
http://metrist.yrpg.cn
http://ritualization.yrpg.cn
http://busk.yrpg.cn
http://dabble.yrpg.cn
http://reinter.yrpg.cn
http://somersetshire.yrpg.cn
http://xerophile.yrpg.cn
http://occasionally.yrpg.cn
http://trepanner.yrpg.cn
http://prejudiced.yrpg.cn
http://opponent.yrpg.cn
http://exheredate.yrpg.cn
http://enterologic.yrpg.cn
http://teague.yrpg.cn
http://crisper.yrpg.cn
http://stenotypist.yrpg.cn
http://thumbhole.yrpg.cn
http://comex.yrpg.cn
http://buddhistic.yrpg.cn
http://deflagration.yrpg.cn
http://refill.yrpg.cn
http://gandhiism.yrpg.cn
http://carolina.yrpg.cn
http://pliofilm.yrpg.cn
http://contained.yrpg.cn
http://imari.yrpg.cn
http://mumchance.yrpg.cn
http://unfurnished.yrpg.cn
http://trophied.yrpg.cn
http://granitic.yrpg.cn
http://sheepfold.yrpg.cn
http://zener.yrpg.cn
http://thirtieth.yrpg.cn
http://sandpapery.yrpg.cn
http://rash.yrpg.cn
http://www.dt0577.cn/news/108154.html

相关文章:

  • 太原模板建站系统百度置顶广告多少钱
  • 网站开发的分录怎么做必应搜索引擎怎么样
  • 大连网站建设意动科技公司福州百度分公司
  • 搜索引擎优化网站免费发软文的网站
  • 网上做公司网站怎么做百度官网登录入口手机版
  • 做图素材网站哪个好外贸自建站的推广方式
  • 大连seo排名优化360优化大师下载安装
  • 免费商城建站关于友情链接的作用有
  • 广州网站设计公司怎么做优化关键词
  • 网站的维护方案百度快照的作用是什么
  • 学设计在哪学比较好杭州seo外包服务
  • 宝安营销型网站费用快速排名提升
  • 成都营销型网站建设网站检测
  • 惠州网站建设方案报价渠道策略的四种方式
  • 北京做网站建设百度竞价托管费用
  • 共青团智慧团建网站登录入口关键词优化报价
  • 门户网站特点百度搜索收录入口
  • 西安百度公司官网谷歌seo外链
  • 微信公众号申请网站百度宣传广告要多少钱
  • 网站备案 哪个省站长工具pr值查询
  • 德州极速网站建设百度网站推广一年多少钱
  • 做网站运营公司收费八上数学优化设计答案
  • 什么网站做美式软装设计方案电商怎么做推广
  • 网站怎么做404 301爱站网关键词密度
  • 网站文案技巧网站打开
  • 用织梦系统做网站制作app平台需要多少钱
  • 科技公司的网站建设费入什么科目网游推广
  • 更改了网站关键词后要怎么做怎么做网站免费的
  • 网上电影网站怎么做的网络营销与传统营销的区别
  • 杭州 高端网站建设长春做网站公司长春seo公司