写点什么

使用 TPL Dataflow 处理生产者 / 消费者问题

  • 2014-01-28
  • 本文字数:560 字

    阅读完需:约 2 分钟

在最简单的情况下,生产者 / 消费者场景很容易处理。生产者向一个线程安全的队列中推送消息,消费者从该队列中取消息。每一端可以有一个专用线程,这就行了。至少在并发症状出现之前是行得通的。

并发症状是多方面的。你可能需要向多个消费者分发或广播消息,而不是只有一个消费者。因为性能原因,在执行某些操作之前,可能需要批量提交一些请求。也可能有多个步骤,而如果每个步骤用一个专用线程的话,负载会很繁重。或者是随着消息在线程间跳转,上下文切换会影响延迟。

TPL Dataflow 就是为解决这些问题而设计的。不同于使用线程,构成数据流的轻量级块(Block)按需使用和分享线程池中的线程。但是和任何新框架一样,我们有很多东西要学习,而且很多比较高级的选项可能会掩盖基础知识。

为简化入门,Taskmatics 的 Dave Marini 撰写了一篇文章——“使用流:利用 TPL Dataflow 结构简化生产者 / 消费者问题的处理( Going with the Flow: Simplifying Producer/Consumer Processing with TPL Dataflow Structures )”。Dave 使用一个订单交付工作流(如上图所示),介绍了大多数场景需要的基本块:

  • BufferBlock
  • BroadcastBlock
  • BatchBlock
  • TransformManyBlock
  • ActionBlock

这篇文章还介绍了一些容易被忽略的陷阱,比如刷新批处理和完成工作流等。

查看英文原文: Producer/Consumer Processing with TPL Dataflow

2014-01-28 09:032213
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 151.6 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

再获殊荣!MIAOYUN获评“2024新一代信息技术应用优秀案例”

MIAOYUN

云计算 云原生 超融合 新一代信息技术 优秀案例

袋鼠云数据资产平台:数据模型标准化建表重构升级

袋鼠云数栈

TikTok多账号运营:云手机的选择与注意事项

Ogcloud

云手机 海外云手机 tiktok云手机 矩阵运营 TikTok矩阵运营

华为云分布式缓存服务Redis®版9月企业版、灵活的购买方式全新上市

分布式缓存 华为云

践行万物智联之诺:行者深开鸿

脑极体

AI

国产游戏出海火热另一面:AI和API快速成长引发网络安全挑战

网络安全服务

DDoS 安全防护 API 接口 游戏安全 DDoS 攻击

HAP官方力作:MEGA进销存应用正式上线

明道云

【YashanDB知识库】decode函数中的子查询被不必要地多次执行

YashanDB

yashandb 崖山数据库 yashandb知识库

推荐一款Python接口自动化测试数据提取分析神器!

不在线第一只蜗牛

Python

探索 Snowflake 与 Databend 的云原生数仓技术与应用实践

Databend

京东金融APP的鸿蒙之旅:技术、挑战与实践

京东科技开发者

主动元数据,让数据管理“看得清、管得住、治得动”

Aloudata

元数据 全链路数据血缘 数据血缘 数据链路

NAS部署Alist、Nextcloud、File Browser,贝锐花生壳实现远程访问

贝锐

NAS Docker 镜像

TikTok云手机:实现多账号矩阵运营

Ogcloud

云手机 海外云手机 tiktok云手机 矩阵运营 TikTok矩阵运营

【YashanDB知识库】YMP迁移oracle不兼容给用户授权高级包

YashanDB

yashandb 崖山数据库 yashandb知识库

天命人,如何轻松利用仿真技术打造出属于你的“金箍棒”?

Altair RapidMiner

人工智能 设计 仿真 altair 黑神话悟空

望繁信科技CTO李进峰受邀在上海外国语大学开展流程挖掘专题讲座

望繁信科技

数字化转型 流程挖掘 流程资产 流程智能

“AI+Security”系列第3期(五):AI技术在网络安全领域的本地化应用与挑战

云起无垠

精准测试之探索

京东科技开发者

澳鹏大模型数据服务,赋能AGI智能涌现

澳鹏Appen

数据标注 大模型 数据服务 AGI AI 智能体

在Bamboo上怎么使用iOS的单元测试

京东科技开发者

什么是ETL?什么是ELT?怎么区分它们使用场景

谷云科技RestCloud

数据处理 应用场景 ETL 数据集成 ELT

MiniMax、商汤科技、面壁智能、西湖心辰、声网都来了!RTE 大会「实时互动和大模型」专场开启报名

RTE开发者社区

使用TPL Dataflow处理生产者/消费者问题_.NET_Jonathan Allen_InfoQ精选文章