- 博客(6)
- 收藏
- 关注
转载 Actor 模型中的通信模式
在 Actor 模型中所有的 Actor 之间有且只有一种通信模式,那就是 tell 的方式,也就是 fire and forget 的方式。但是在实际的开发过程中工程师们逐渐总结出了一些常用的通信模式。本文以 akka-typed(2.6.0-M8) 框架为例,介绍存在于 actor 模型中最基本的一些通信模式,讨论消息是如何在 actor 之间流动的。Fire and Forget...
2019-10-04 15:46:00 669
转载 ZK 网络故障应对法
网络故障可以说是分布式系统天生的宿敌。如果永远不发生网络故障,我们实际上可以设计出高可用强一致的分布式系统。可惜的是不发生网络故障的分布式环境还不存在,ZK 使用过程中也需要小心的应付网络故障。让我们先忘掉故障发生的情况,首先来看到 ZK 对网络连接的处理。ZK 客户端启动时带有所有可用的服务器的信息,它会随机选择和其中一台服务器尝试连接,在正常的成功连接的情况下,ZK 客户端和服务端...
2019-09-30 15:13:00 693
转载 ZK Watcher 的原理和实现
什么是 ZK Watcher基于 ZK 的应用程序的一个常见需求是需要知道 ZK 集合的状态。为了达到这个目的,一种方法是 ZK 客户端定时轮询 ZK 集合,检查系统状态是否发生了变化。然而,轮询并不是一种高效的方式,尤其是在状态变化的发生频率很低的时候因此,ZK 提供了一种通过通知客户端感兴趣的具体时间来避免轮询造成的性能问题的方式,即设置 Watcher 的方式。通过设置 Wat...
2019-09-20 14:03:00 313
转载 Monad 在实际开发中的应用
版权归作者所有,任何形式转载请联系作者。作者:tison(来自豆瓣)来源:https://www.douban.com/note/733279598/Monad 在实际开发中的应用不同的人会从不一样的角度接触 Monad。大多数网上的教程和介绍都从其严格的定义出发,加上几个玩具示例就当讲解完毕。诚然,不少 FP 的爱好者都是形式逻辑的拥趸或强于数学的,但是我对 Monad 的理解...
2019-09-06 12:24:00 253
转载 简谈分布式计算和本地计算的区别
版权归作者所有,任何形式转载请联系作者。作者:tison(来自豆瓣)来源:https://www.douban.com/note/720831988/古老的论文《A Note on Distributed Computing》介绍了分布式计算(Distributed Computing)和本地计算(Local Computing)的四点主要的差别,批评了远程方法调用(Remote ...
2019-06-01 12:11:00 892
转载 C 扩展对闭包特性的支持
今日听说某君批评 C 语言说它【输入一个参数返回一个函数】很困难。例如在 Python 中,你可以def addn(n): def addx(x): return n + x return addx my_adder = addn(42)print(my_adder(21))标准 C 要实现这样的功能也不是不可以,这是一个闭包的功能,我们只要显式的把上下文抓...
2019-03-22 17:18:00 131
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人