本文探讨了无冲突复制数据类型 (CRDT),这是一种为构建无中心服务器的协作应用程序而设计的數據結構。CRDT 允许多个用户独立更新数据,保证所有副本最终一致性。重点是*基于状态*的 CRDT,它们传输完整状态并进行合并。
作者详细介绍了从头开始构建 CRDT 的过程,从最简单的开始:最后写入胜出 (LWW) 寄存器,它通过接受基于时间戳的最新更新来解决冲突。然后扩展到 LWW 映射,允许使用多个键值对,每个键值对由一个 LWW 寄存器管理。 交换律、结合律和幂等性等关键概念被解释为 CRDT 合并函数的基本属性。
LWW 映射利用“墓碑”——保留已删除键的元数据——以防止同步过程中发生意外数据丢失。虽然功能强大,但 CRDT 被描述为单调递增的,这意味着数据只能添加,而不能真正删除。本文为实际应用奠定了基础:使用这些基础 CRDT 构建协作像素艺术编辑器。
## Explain-My-Curl 摘要
`explain-my-curl` 是一个本地优先的 CLI 工具,旨在通过分解底层的网络过程——DNS、TLS 和 HTTP 来揭示 `curl` 命令的原理。它提供了对 `curl` 请求执行时“幕后”发生的事情的详细解释。
主要功能包括:用于解析 `curl` 输入的命令行界面,用于探索的交互式文本用户界面 (TUI),以及详细的遥测跟踪 DNS 解析、连接时间、TLS 握手和首次字节时间。它还优先考虑安全性,具有密钥隐藏功能,并通过“证据标签”强调透明度,指示信息的确定方式。
该项目拥有强大的测试、发布自动化(包括 macOS、Linux 和 Windows 的构建),甚至还有一个 Homebrew 公式,方便安装。它的目标是提供对网络请求的清晰和可信的理解。
## 便利的代价:数字支付比较
越来越多的小型企业,例如厄瓜多尔昆卡的士司机,正在采用二维码支付系统(Deuna、JEP等),提供看似“免费”的交易——与美国、英国和加拿大以卡为主导的经济形成鲜明对比。虽然卡支付提供便利和安全,但它们伴随着不断上涨的处理费,经常会蚕食商家本已微薄的利润,有时甚至高达其*利润*的12%,而不仅仅是销售额。
厄瓜多尔的二维码系统更像直接的银行转账,绕过了Visa和Mastercard收取的复杂费用网络。这种简单性转化为商家的更低成本和更快的结算。巴西的“Pix”系统展示了这种模式的潜力,迅速普及并迫使卡系统展开竞争。
最终,支付系统影响整个经济,影响定价和盈利能力。虽然卡网络提供有价值的服务,但其费用可能会给小型企业带来压力。昆卡出租车司机的二维码贴满仪表盘,象征着一种不同的方法——一种优先考虑可负担性和可访问性的数字支付生态系统,为另一种财务平衡提供了展望。