09 2020 档案
摘要:what are we talking about when we talk about architecture 架构是一个复杂的话题,它涉及到软件系统的各个方面,包括设计、性能、可扩展性、故障隔离等等。当我们在谈论架构时,我们需要思考的是如何设计一个系统,使得它能够适应业务变化、保持高性能、易于
阅读全文
摘要:ethereum 的Peer Node 如何进行的信息的交互 流程 1 开启一个注册节点, 让这个注册节点p 在协程里面处理广播消息 2 p根据不同的chan读取广播消息,并进行处理 消息类型涵盖: StatusMsg: GetBlockHeadersMsg: BlockHeadersMsg: Ge
阅读全文
摘要:exchange trading system design 交易所系统设计 model关系 model设计关键 钱包账户-- 可用理解成总账户,与对外的流水入口。譬如充值、提现关联. 参考 okex 账户体系 每次的流水都记录当前的balance holding:持仓,指数量(股数),跟marke
阅读全文
摘要:金融业务架构经验之谈: 支付 资金账户系统 业务场景经验之谈: 对账模型 支付 交易 退款(取消交易) 掉单 补录 改单 等等 设计架构 首先,有个概念: 金融数据不能删除 金融数据更新要保留原记录 log基于法律考虑要保留3年+ 架构图参考: 点融逻辑架构: 这张是非常常见、典型的逻辑架构: 多个
阅读全文
摘要:MongoDB Transaction init replset mongodb env $mkdir db1 && mkdir db2 && mkdir db3 $mongod --port 27017 --dbpath ./db --replSet rstest1 $mongod --port
阅读全文
摘要:MongoDB主库的 Global Lock 异常高 事件:主库的 Global lock 异常高, 代码没做啥变动。 时间:2019-12-21 3:00AM左右。 DB 配置:16核64G, 500G 数据,三节点 , V4.0 . IOPS 1.6W 现状见图: serverStatus cu
阅读全文
摘要:根据典型碰到的场景,来做几个实验: 这里创建了个loans collection。简化只有100条数据。这个是借贷的表有 _id, userId, status(借贷状态), amount(金额). 看完 这个实验后, 你会明白了 {userId:1, status:1}, vs {status:1
阅读全文
摘要:索引该加的都加了,还不够快。怎么办? (前文)[https://github.com/no7dw/no7dw.github.io/blob/master/source/_posts/MongoDB-Best-Proactices-About-Index.md] 末尾提及过这个 索引该加的都加了,还不
阅读全文
摘要:MongoDB 索引的最佳实践 大部分开发者都知道加索引会快。但实际过程中,我们常碰到一些疑问&困难: 我们查询的字段会各种case都有,是不是各个涉及查询的字段都要加索引? 复合索引和单字段怎么选择,都加还是每一个的单个字段就好了? 加索引有没有副作用? 索引都加了,但还是不够快?怎么办? 本文尝
阅读全文