latifrons 最近的时间轴更新
latifrons

latifrons

V2EX 第 344699 号会员,加入于 2018-08-27 17:21:05 +08:00
今日活跃度排名 8256
latifrons 最近回复了
新冠抗原和先诺欣我现在终年常备,真起病到买到药,除非去医院,否则只能走快递,要至少两到三天。
4 天前
回复了 58369046 创建的主题 分享发现 有没有局域网备份照片视频软件
MT Photos yyds
5 天前
回复了 guguagua 创建的主题 Android FCM 的域名最近被墙了吗?
Lark 不把 fcm ( Android 系统)翻墙的话收不到消息推送了,牛马表示很焦虑。
不知道能不能让 Lark 别走 FCM……
2025/5/7
洛杉矶 West 7 Center 停电

West 7 Center 楼中的一个托管机房停电,Coresite 托管在当中的机器受到影响。
据说 AB 两路电全断,已知多个商家受影响:

DMIT 洛杉矶 (官方已发通知)
搬瓦工洛杉矶 v66XX 节点/DC1 (官方已发通知)
ZgoCloud 洛杉矶 (官方已发通知)



当然我们的机房不是这种小云商,但 AB 两路电断掉的确不是什么不可能事件。
断电期间有 BCP 计划,断电恢复不了有 DRP 计划,前提是数据整体状态一致,分布式系统中每个成员的世界状态是相同的,那么来电就能起。否则一边扣钱一边没扣钱(但返回成功),一边下单了一边订单找不到,世界状态就乱了。

分布式系统中,真的需要对每个可能掉了的持久化都进行 peer to peer 对账检查吗?那就太复杂了。
听了大家说了这么多,收获颇丰,感谢大家。

其实这个问题在我这里产生的根源就是在分布式系统中。单体状态自己说了算,灾难恢复回来是什么就是什么。而分布式系统就需要考虑一致性了。

TCC 分布式事务环境下,正如 @weirdte 所说,“返回失败不一定是真的失败,但返回成功是一定要成功的”。 如果被调用方返回成功,但结果却因未落盘而回滚,调用方根本不会知道有这么个回滚节点。回滚节点也不知道有什么应该做而没做的事。

事后对账当然是一个办法,但很多时候对账并不能挽回损失。例如扣减余额这种事如果回滚,肯定要有人背锅了。

似乎解决方法就是双写/强制落盘,不知道例如银行、券商这样的系统,对于涉及钱的跨系统的一致性,除了对账,在技术上是如何实践的呢?又如果性能要求极其苛刻,有什么更好的优化方案?

又从业务角度而言,问题归结为:防止数据回滚,是不是应该成为每一个程序员在开发分布式系统时必须考虑的标准设计规范,还是,程序员不用管,交给 DBA ?
@comlewin 可能是我没表述清楚,我的核心 concern 是落盘 fsync()失败,原因可能会有很多,掉电只是其中之一。
@ivvei 数据总要有地方落盘,落盘就有你落了我没落的情况发生。
假设一个 TCC 事务,被调用方反馈说我做完了,调用方因此完成了这次 TCC ,但此时被调用方突然崩了,数据没落盘,TCC 事务看似做完了实则没做完。
但你要被调用方落盘吧,性能又差了……
UPS 肯定能解决一部分问题,剩下的例如操作系统内核崩溃这种 UPS 无法解决的问题,似乎还有风险。
核心 concern 是 fsync()没执行
75 天前
回复了 tmtstudio 创建的主题 NAS 大佬们的 all in one 都用来做什么
pve ,
三个 ubuntu 用于学习研究各种 k8s 集群部署方式
一个 win ,自动爬取某论坛 8K 高清 VR 电影种子并下载
然后部署了一堆自己的脚本,容器,数据库,下载 A 股/币的 K 线,整合并进行行情监控。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3063 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 12:32 · PVG 20:32 · LAX 05:32 · JFK 08:32
Developed with CodeLauncher
♥ Do have faith in what you're doing.