随笔分类 -  brpc

摘要:内存管理总是程序中的重要一环,在多线程时代,一个好的内存分配大都在如下两点间权衡: 线程间竞争少。内存分配的粒度大都比较小,对性能敏感,如果不同的线程在大多数分配时会竞争同一份资源或同一把锁,性能将会非常糟糕,原因无外乎和cache一致性有关,已被大量的malloc方案证明。 浪费的空间少。如果每个 阅读全文
posted @ 2023-02-05 13:16 misaka-mikoto 阅读(93) 评论(0) 推荐(0) 编辑
摘要:一些场景希望同样的请求尽量落到一台机器上,比如访问缓存集群时,我们往往希望同一种请求能落到同一个后端上,以充分利用其上已有的缓存,不同的机器承载不同的稳定working set。(类似redis集群分片,每一片负责一个set的keys,每个分片的数据互不相交) 而不是随机地散落到所有机器上,那样的话 阅读全文
posted @ 2023-02-05 12:52 misaka-mikoto 阅读(29) 评论(0) 推荐(0) 编辑
摘要:LALB全称Locality-aware load balancing,是一个能把请求及时、自动地送到延时最低的下游的负载均衡算法,特别适合混合部署环境。 LALB可以解决的问题: 下游的机器配置不同,访问延时不同,轮询和随机分流效果不佳。 下游服务和离线服务或其他服务混部,性能难以预测。 自动地把 阅读全文
posted @ 2023-02-05 12:16 misaka-mikoto 阅读(358) 评论(0) 推荐(0) 编辑
摘要:1.连接独占线程或进程 在这个模型中,线程/进程处理来自绑定连接的消息,在连接断开前不退也不做其他事情。当连接数逐渐增多时,线程/进程占用的资源和上下文切换成本会越来越大,性能很差,这就是C10K问题的来源。这种方法常见于早期的web server,现在很少使用。 2.单线程reactor 以lib 阅读全文
posted @ 2023-02-04 16:44 misaka-mikoto 阅读(161) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示