背景 分批读取大量数据的excel文件,每次读取1000行数据,然后插入数据库,并且去执行一个方法,执行完毕后更新此行数据的状态。需要获取已更新数据的占比,即计算百分比。 因为是分批读取的,我们不可以直接用已更新状态数量/数据库中总数。因为可能一次读取的1000行数据更新状态很快,直接1000/1000100=100%了。 但实际上excel文件中实际有1w行数据,那么我们要获取excel的总行数。 方法 使用easyexcel获取总行数,记录一下, 在创建监听器时,重写invoke方法时,使用下面代码获取总行数(含表头): publicvoidinvoke(DemoDatadata,Ana...

  背景 ES在查询时如果数量太多,而每行记录包含的字段很多,那就会导致超出ES的查询上线,默认是100MB,但是很多场景下我们只需要返回特定的字段即可,那么如何操作呢。 主要代码 @Autowired privateRestHighLevelClientclient; publicList<Map<String,Object>>search(Stringindex){ List<Map<String,Object>>hitList=newArrayList(); try{ //搜索请求 SearchRequestrequest=ne...

  sdC60OSFg0ri   2023年11月30日   15   0   0 搜索字段List搜索字段List

背景 今天定位一个接口耗时问题,通过日志定位到在数据库查询完毕后,中间一段逻辑耗时很长有十几秒的样子,发现是循环中使用ArraysList中的contains方法,当循环数量级变得很大时,执行时间变得不可控。 代码示例 //有5万个门店 List<Store>storeList=storeMapper.selectAll(); //有十万个用户 List<User>userList=userMapper.selectAll(); //最坏情况循环5亿次 for(user:userList){ if(storeList.contains(user.getStoreC...

  sdC60OSFg0ri   2023年11月30日   16   0   0 i++ListSystemListi++System

F12后找到对应链接然后Copy  在PostMan中导入链接  请求一下试试   转换代码网站-多种语言可供选择 https://curlconverter.com/链接: 转换代码网站   本篇文章如有帮助到您,请给「翎野君」点个赞,感谢您的支持。 作者:翎野君

  sdC60OSFg0ri   2023年11月30日   17   0   0 微信公众号微信公众号

到底什么是“上火”呢?又该怎么预防?   什么是上火? 其实,“上火”是一种俗称。“上火”的概念来自于传统中医的身体和疾病观,现代很多科学家在研究“上火”的机理及原因,但目前依然没有统一定论,所以在医学体系中,没有相应的病名,也没有客观的理化检查指标。 总体来说,“上火”的概念依然比较模糊、笼统,人门常常把眼睛红肿、口舌生疮、咽喉干痛、头昏目胀、鼻腔热烘、流鼻血、牙痛、便秘等症状,都通通称为“上火”。 这些食物会“上火”?   吃橘子、嗑瓜子、吃坚果、喝饮料……真的会上火吗? 橘子 很多人吃橘子后会出现嗓子发干发涩、甚至流鼻血等症状,引起“上火”。 其实,这是因为橘子...

  sdC60OSFg0ri   2023年11月30日   8   0   0 微信公众号ci微信公众号ci

背景 问题描述 假设有一个表字段statues,我们分页获取数据。status初始状态为1,我们分批获取数据,每一批获取1000,对数据进行处理,如果处理成功就更新status为2,否则不更新。 注意事项: 分页循环查询满足条件的数据然后进行处理,通过PageHelper或者直接使用“limitstatIndex,pageSize”来分页查看数据,如果查询条件(如根据status来过滤数据)在每一次获取之后会更改,这里的更改可能指的是在每次循环查询内部更改满足查询条件的数据,如status=1的条件,在查询完之后更改为status=2,注意这里的更改还有可能出现在另外的逻辑链条中。 又或者将s...

  sdC60OSFg0ri   2023年11月30日   15   0   0 ListList分页分页数据数据

作者:晓斌阿里技术风险与效能团队   服务一个人的系统,和服务一亿人的系统,复杂度有着天壤之别。本文从工程师文化、组织战略、公司内部协作等角度来分析软件复杂度形成的原因,并提出了一些切实可落地的解法。   01 何为研发效能?   当我们谈研发效能的时候,我们在谈些什么?这个议题被抛出来,有人讨论,是因为存在问题,问题就在于实际的研发效率,已经远低于预期了。企业初创的时候,一个想法从形成到上线,一个人花两个小时就完成了,而当企业发展到数千人的时候,类似事情的执行,往往需要多个团队,花费好几周才能完成。这便造成了鲜明的对比,而这一对比产生的印象,对于没有深入理解软...

作者:Lachel   你有没有被“被害妄想症”困扰过?   这是什么样的感受呢,我举个例子。我记得很多年前我刚工作的时候,到处去求职,那会儿总是会有很多奇怪的想法。比如:   这家公司真的收到我的简历了吗?我会不会把邮箱写错了?(于是要检查个四五次才安心)   他们会不会把我的邮件不小心删掉了?或者根本没看到?   我的简历真的被转给对应的部门负责人了吗?会不会被HR忘记了?   我的成绩会不会跟别人的弄混,或者上报的时候把我跟别人搞错了?   ……   诸如此类,不一而足。可以想见,这种“对没有发生的事情的...

  sdC60OSFg0ri   2023年11月30日   13   0   0 微信公众号微信公众号cici

作者:陈树义 代理模式是设计模式中非常重要的一种类型,而设计模式又是编程中非常重要的知识点,特别是在业务系统的重构中,更是有举足轻重的地位。代理模式从类型上来说,可以分为静态代理和动态代理两种类型。 在开始之前,我们先假设这样一个场景:有一个蛋糕店,它们卖的蛋糕都是用蛋糕机做的,而且不同种类的蛋糕由不同的蛋糕机来做,这样就有:水果蛋糕机、巧克力蛋糕机等。它们卖的面包片也是用面包机做的,同样不同种类的面包片也是由不同的面包机来做,这样就有:葡萄干面包机、红豆面包机等。这个场景用Java语言描述就是下面这样: //做蛋糕的机器 publicinterfaceCakeMachine{ voi...

数学函数是MySQL中常用的一类函数。其主要用于处理数字,包括整型和浮点数等等。 MySQL常用的四舍五入函数: 函数说明 FLOOR(X)返回不大于X的最大整数。CEIL(X)、CEILING(X)返回不小于X的最小整数。 ROUND(X)返回离X最近的整数,截断时要进行四舍五入。ROUND(X,D)保留X小数点后D位的值,截断时要进行四舍五入。 TRUNCATE(X,D)返回数值X保留到小数点后D位的值,截断时不进行四舍五入。FORMAT(X,D)将数字X格式化,将X保留到小数点后D位,截断时要进行四舍五入。 使用 1、FLOOR(X)函数返回不大于X的最大整数。 SELECTFLOOR...

一、概念回顾 A<------M------>B场景:A、B两个人之间通讯,A传输信息M给B,假定是在不安全的通路上传输。 1.明文传输 被中间人C拦截下来,可以随意篡改A发送给B的消息,且可以冒名顶替A直接与B通信。 2.对称加密 加密和解密为同一秘钥。 除非A和B面对面,找个小角落窃窃私语约定秘钥,况且在现实生活中,躲在小房子里面的小声说话,也有可能被别人听见,隔墙有耳大家应该都听过吧。因为是网络传输,秘钥需要在网络上传输给对方,在不安全的信道上倘若被C截获到对称秘钥,那么仍然会出现数据被中间人篡改和冒名顶替的问题。 3.非对称加密 A生成公钥和私钥,私钥是自己用的保留在本...

  sdC60OSFg0ri   2023年11月12日   18   0   0 客户端服务器数字签名

一、TSUNG压测前概念温习 二、TSUNG在服务器上的安装步骤  Tsung压测时总连接数=本机可用IP地址数量×本机可用端口的数量×远程服务器可访问IP地址数量×远程服务器可访问端口数量。yuminstall-ygccgcc-cmakelibX11xauthyuminstall-ycairo-develpango-develfreetype-develgd-develyuminstall-yncurses-developenssl-develunixODBC-develwxWidgets-develwxGTK3-docsmesa-libGL-develwgethttp://...

  sdC60OSFg0ri   2023年11月12日   17   0   0 服务器端客户端压测
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~