大批量工具的思考
大批量工具的思考:大批量处理工具,适用于数据量大,业务处理对时间要求不高等特点。
往往这种工具对性能的要求比较高,怎样才能设置出满足性能要求的工具成功该类工具成败的一个关键点。在这里提出俩个概念:批量和并发
并发:
并发对于有效的利用系统资源有较好的表现,并发带来的好处,多个任务同时执行,并发带来性能上的提升外,也会引入一些的新的问题,应用引入复杂性,使得维护成本更高,并发引入资源竞争的问题,多个业务处理作业会对共享资源造成较大的资源竞争,影响的应用的最大效率发挥。
批量:
批量的原理其实就是通过提高其吞吐量来使应用在最小消耗的情况下,完成最多的工作。批量需要注意的几点是:定时和定量
定时:请求不能够无限制的等待满足处理的请求个数,这样会导致请求量不是很大的情况下,请求不能够在规定时间内给出响应。
定量:在请求量很大的情况下,不能在按照定时来处理,在满足定时器的条件时间段内,积压了太多的请求量,容易对应用造成较大的冲击,定量应该是应用一次能满足的最大请求个数处理,该数据应该是应用期望一次所处理的请求个数。
队列:
在大批量应用中,应该使用队列来串接消息在应用的传递,队列所涉及的操作最多的就是批量放入和批量取出。批量放入,批量放入的好处就是减少对共享资源的访问次数,减小由于并发而引入的资源竞争问题。批量放入还有一个好处就是减少中间临时对象的生成,减轻对垃圾回收机的压力。批量取出应该注意一些并发的问题,批量取出应该取多少这个问题看似无关紧要,其实关系到并发的最大效率化,批量取出应该每次都取出每个业务处理作业所有期望的数量,这样如果有1000个请求同时到达,有10个批量作业在同时运作,那每个批量作业每次取的请求个数应该是1000 + 10 – 1 / 10,这个算法是分页的一个算法,在这样可以很好的发挥将批量业务均匀分配到每个批量作业中。
内存分页:
内存分页就是当批量业务处理作业在处理多个请求时,应当将请求通过内存分页来完成内存存储,并满足flush的条件下,将处理结果批量输出,可以输出到下一个作业或是直接输出到结果。内存分页需要注意的俩个点,定时定量。如果满足这俩个点,可以通过俩个条件来判定满足其中任何一个条件就输出,定量:在内存分页中应该对当前的积压消息个数有计数器,每次通过判断计数器和最大消息个数来判定其是否能够输出,定时:在内存分页中应该对上次输出时间做统计,以便通过判断当前时间和上次输出时间之间的时间间隔是否满足最大停留时间来判定其是否满足输出条件,当这俩个条件当中的任意一个满足条件就满足了输出条件。可以输出,这样做到了内存分页的定时定量。
分享到:
相关推荐
大批量定制大批量定制大批量定制大批量定制大批量定制
SEM大批量关键词拓词工具(新增地域词批量替换功能) (1).exe SEM大批量关键词拓词工具(新增地域词批量替换功能) (1).exe SEM大批量关键词拓词工具(新增地域词批量替换功能) (1).exe SEM大批量关键词拓词工具...
大批量word转html工具,无需安装,下载即可用,非常简便快速实用,是制作html和chm等帮助文档的好帮手
微软内部工具,适用于大批量小文件拷贝,曾用之拷贝500多G的图片,效果很不错!
批量删除注册表工具,可按条件一次性大批量删除注册表
快速拷贝工具,支持断点拷贝。 非常好用,内部使用Xcopy及相关的参数。
java大批量文件处理
大批量存储数据和优化 大批量存储数据和优化 大批量存储数据和优化
支持大量文件、依照特定规则、要求,进行文件批量操作,如删除、替换、增加等
excel批量导出工具类 1.excel 的相关工具类代码 2.ExcelReader.java 3.ExcelWriter.java 4.关于大批量导出excel的相关方案,以下为常用两种 5.struts2 大压缩包参考代码, 压缩包使用ant.jar
JAVA使用线程池查询大批量数据
Oracle sqlldr 大批量数据导入工具使用实例,通过Oracle 自带的sqlldr 工具可快速导入大批量的数据至Oracle中。 工具使用前提条件: 1.安装的Oracle Client 不能为精简版,要不然就找不到sqlldr.exe 2.将Oracle的...
GPSspg xGeocoding 工具,大批量地址经纬度解析转换工具。地址与经纬度相互解析 地址解析经纬度,商户名解析经纬度,经纬度解析地址,甚至可以将经纬度再次反解析出地址以便对比。大批量自动化。 各大地图经纬度相互...
基于Java+netty内置时间轮工具处理大批量定时或超时任务工具源码.zip
现在的数据库都要有良好的处理大批量数据的能力,这份ppt就介绍了如何设计一个具有处理大批量数据的数据库,设计合理的话亿万级的都完全没问题。另:文档非本人原创,觉得资源很好不自觉分享给大家。
java多线程实现大批量数据切分成指定份数的数据,然后多线程处理入库或者导出,线程的个数和每份数据的数量都可以控制
支持任何格式的文件大批量重命名,如:jpg, bmp, txt等,可支10万数量级以上。
可以大批量地处理数据的导入,并将无关行列删除,再对数据中的字符串、数字格式统一,与拼接,并与另一个xls文档中的数据进行比较,是一个不错的代码。
Why and How to Use Pandas with Large Data ,如何使用Pandas处理大批量数据,介绍了如何减少内存消耗,学习利用pandas进行大批量数据处理不错的参考资料。