Loading

摘要: 单核的时代并发更多的是为了应对IO密集型的场景,而如今多核的背景下,CPU-Bound的场景下开启多线程更多是为了并行(parallelism)的效果,一个不涉及IO的任务,如果能够拆成2份,两个CPU各自完成其中一部分,理论上来说整体耗时自然会除以2,但是这有前提条件:被拆分的任务运算的过程是不相 阅读全文
posted @ 2022-03-13 14:06 zysaaa 阅读(469) 评论(0) 推荐(0)
摘要: 微服务盛行,链路追踪也随之火了起来,起初是google的这篇论文,网上找到一个比较好的翻译版本,这篇论文比较系统性的介绍了何为分布式链路追踪系统,借助spring-cloud-sleuth的总结,在一次RPC调用中,通常有四个Event: cs: Client Sent. The client ha 阅读全文
posted @ 2021-11-17 19:59 zysaaa 阅读(704) 评论(0) 推荐(1)
摘要: 本文基本上是此文章的翻译 假设在 RabbitMQ 中有一个队列,你有一些客户端会消费这个队列。 如果没有配置QoS(Quality of Service),那么 RabbitMQ服务会以网络和客户端允许的速度将队列的所有消息推送到你的客户端, 客户端将所有消息存储在其内存中,内存压力会急剧增加。此 阅读全文
posted @ 2021-10-22 17:09 zysaaa 阅读(399) 评论(0) 推荐(0)
摘要: 并发队列常见于生产者消费者的场景,例如log4j2,logback的异步日志,例如类似于链路日志的收集上送,以上二者之所以要使用并发队列的很大原因都是因为日志异步化处理,避免影响业务接口的吞吐量。 当程序引入了异步队列这个机制,就需要考虑到一些问题,比如如何控制队列的长度,是否会带来额外的内存负担, 阅读全文
posted @ 2021-10-22 14:48 zysaaa 阅读(594) 评论(0) 推荐(0)
点击右上角即可分享
微信分享提示