惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Fortinet All Blogs
宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
T
The Exploit Database - CXSecurity.com
Help Net Security
Help Net Security
腾讯CDC
Project Zero
Project Zero
C
CXSECURITY Database RSS Feed - CXSecurity.com
IT之家
IT之家
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tailwind CSS Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
D
Darknet – Hacking Tools, Hacker News & Cyber Security
L
LINUX DO - 最新话题
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Threatpost
N
News | PayPal Newsroom
C
Cybersecurity and Infrastructure Security Agency CISA
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
SegmentFault 最新的问题
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Proofpoint News Feed
A
Arctic Wolf
B
Blog RSS Feed
Forbes - Security
Forbes - Security
P
Privacy & Cybersecurity Law Blog
Attack and Defense Labs
Attack and Defense Labs
V2EX - 技术
V2EX - 技术
P
Proofpoint News Feed
I
Intezer
Application and Cybersecurity Blog
Application and Cybersecurity Blog
阮一峰的网络日志
阮一峰的网络日志
aimingoo的专栏
aimingoo的专栏
T
Tenable Blog
MyScale Blog
MyScale Blog
U
Unit 42
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
W
WeLiveSecurity
D
DataBreaches.Net
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
GRAHAM CLULEY
有赞技术团队
有赞技术团队
Martin Fowler
Martin Fowler
罗磊的独立博客
The Last Watchdog
The Last Watchdog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
Vulnerabilities – Threatpost
美团技术团队
Microsoft Security Blog
Microsoft Security Blog

博客园 - 南郭先生kaka

nginx重启无法找到PId的解决办法 Wiki版产品需求---产品需求文档到底是谁的?产品到底是谁的? 为什么说private方法是有罪的 XML2JSON 的【net.sf.json.JSONException: nu.xom.ParsingException must be followed by either attribute specifications, ">" or "/>"】问题解决办法 继承的第一原则 致那些不甘寂寞的人 上传File时,浏览器总是添加<pre>的解决办法 使用XSLT转换XML2XML Java 模拟 Http Post WITH AS SQL语句的用法 【Code Style】多余判断 java.lang.NoClassDefFoundError错误 Spring 中Quartz配置数据库化 FactoryBean在XML中的依赖注入方法 Camel FTP中文目录解决办法 配置CentOS6.3 NFS Bean复制的几种框架性能比较(Apache BeanUtils、PropertyUtils,Spring BeanUtils,Cglib BeanCopier) 重读《目标》---目标 重读《目标》---序
待处理数据的两种模型
南郭先生kaka · 2014-07-22 · via 博客园 - 南郭先生kaka

  在业务处理时,经常会存在待处理的业务数据,在处理这部分数据时,有如下的处理方式。

  Worker模型:包含Worker处理类(Processor),调度处理框架,时间规则配置。

      Worker处理类,待处理业务数据的处理类。

      调度处理框架,根据时间配置的规则, 在指定的时间点内,调用worker处理类。

      时间规则配置,设置worker处理类的启动时间以及频率。

  优点:1.实现简单,现在有Spring和Quartz框架,直接配置好时间表达式之后以及处理器之后,就可以直接执行了。

     2.各种Worker之间相互独立互补影响。

  缺点:1.并行处理时(多Worker执行时),每个worker需要处理重复处理业务数据的问题,也就是并发的时候,会重复处理相同的数据。

     2.并行处理时的性能要想获得并行数同样的效率就需要在worker里面进行算法优化处理。

     3.每一种业务数据需要配置一个worker。

     4.各种worker之间的性能不能共享,也就是多种worker各自管理各自的业务数据处理,即使有的worker空闲,也不能处理忙碌worker的数据。

  任务(Task)模型:包括任务仓库,任务,任务处理类,任务管理器。

      任务仓库,存储所有的任务。

      任务,每一条待处理的数据生成一条任务数据,保存到任务仓库中,该任务保存待处理业务数据的主键。

      任务处理类,根据任务中保存的主键,获取到业务数据,根据业务规则进行处理业务数据。

      任务管理器,定期从任务仓库中获取到任务,根据任务的类型获取到任务的处理类进行处理任务。

  优点:1.可以并行处理,任务管理器进行处理并发问题。

     2.性能可以共享,任务之间也可以混合执行处理。

  缺点:1.任务之间可能存在性能影响,也就是执行时间较长的任务长期占据了任务处理通道,导致别的任务处理较慢。