latifrons 最近的时间轴更新
latifrons

latifrons

V2EX 第 344699 号会员,加入于 2018-08-27 17:21:05 +08:00
今日活跃度排名 13607
latifrons 最近回复了
3 小时 53 分钟前
回复了 latifrons 创建的主题 程序员 高频金融系统如何防止突然断电导致的数据丢失?
听了大家说了这么多,收获颇丰,感谢大家。

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

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

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

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

又从业务角度而言,问题归结为:防止数据回滚,是不是应该成为每一个程序员在开发分布式系统时必须考虑的标准设计规范,还是,程序员不用管,交给 DBA ?
@comlewin 可能是我没表述清楚,我的核心 concern 是落盘 fsync()失败,原因可能会有很多,掉电只是其中之一。
@ivvei 数据总要有地方落盘,落盘就有你落了我没落的情况发生。
假设一个 TCC 事务,被调用方反馈说我做完了,调用方因此完成了这次 TCC ,但此时被调用方突然崩了,数据没落盘,TCC 事务看似做完了实则没做完。
但你要被调用方落盘吧,性能又差了……
UPS 肯定能解决一部分问题,剩下的例如操作系统内核崩溃这种 UPS 无法解决的问题,似乎还有风险。
核心 concern 是 fsync()没执行
28 天前
回复了 tmtstudio 创建的主题 NAS 大佬们的 all in one 都用来做什么
pve ,
三个 ubuntu 用于学习研究各种 k8s 集群部署方式
一个 win ,自动爬取某论坛 8K 高清 VR 电影种子并下载
然后部署了一堆自己的脚本,容器,数据库,下载 A 股/币的 K 线,整合并进行行情监控。
30 天前
回复了 vzyw 创建的主题 上海 上海租房遇到极其恶劣的房东
别想了, 中介和房东一伙的,早逃之夭夭了。我自己做房东的我知道,哪有付定金才见面的道理?
以后一定要记住,你手里拿着钱,你是大爷,别人求你才对,你不到最后一刻不要把钱交出去。
下次找有门店的靠谱中介吧……这钱你要回来的时间成本太大了。
我面试的一个原则是,要尽可能激发、探索、引导面试者展现出自己所有的能力,包括面试者的知识广度,及他自己熟练的领域的技术深度,以及解决新问题的思路和能力,三者缺一不可。不能做到这一点的面试官都是失败的面试官。

常见的几种失败问题,我的同事有时候也会问,但我非常反感:
1 ,自己超级熟悉而大多数人不熟悉的问题。
2 ,无法鉴别面试者能力,知道就是知道不知道查一查也能知道的问题。
3 ,面试者容易准备的问题,如八股文。

一般我会准备几个实际的技术挑战问面试者,先让面试者铺开知识面,看看考虑问题是否全面,然后让他自己找两个点,我选两个点,深挖下去。
最后问问他,你有什么很厉害的能力没有来得及在刚刚的面试过程中展现出来的吗,可以跟我聊。

这样的面试会给到对方足够的展示机会,而不会像这种拿着狙击枪的面试官,打不中自己预期的 G 点就 fail 面试者。
刚刚下单买了两块 HC550 16T ,比 11 月涨了 100 块左右,而且好多型号都缺货了,怕不是矿盘出得差不多了?
@lengyuqu 一入 VR 深似海,从此磁盘不够用
同建议再买个 CPU ,反正也不贵……CPU 不是不会坏
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2449 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 17ms · UTC 13:34 · PVG 21:34 · LAX 06:34 · JFK 09:34
Developed with CodeLauncher
♥ Do have faith in what you're doing.