gydtep
发表于 2021-7-10 09:04:25
当同一代码库的不同推动消息纷涌而至,Redis维护的分布式锁会做如下判断:若该库当前没有正在运行的任务,将任务置于队首,立即运行;若已有一个正在执行的任务,比较新来的Push消息是否是最新的,若是,则加入队尾;
gydtep
发表于 2021-7-11 08:13:24
现在系统可能没什么大问题,但你要有发现的眼光,这些问题如果不解决,未来业务可能遇到更严重的问题。架构师看问题的眼光和别人不一样,不要只看见这一个问题,还要看见这个问题背后是什么,这一类问题背后是什么,我怎么能用抽象的方法解决一类问题。想好了以后,我就把当前的这个问题先解决掉,其他的问题用抽象的方式去解决它。
gydtep
发表于 2021-7-12 11:26:34
学习也不是说去瞎学,一定要有体系化的。首先跟你工作相关的,要体系化的去学习,从最下到最上体系化的去学习,学习完了以后你会有新的不一样的认识。把你的想法可以向你的团队说出来,向你的主管说出来。
gydtep
发表于 2021-7-12 16:28:36
TSO 事务需要一个生成全局单调递增 Timestamp 的策略,常见的策略有 True Time(Google Spanner)、HLC(CockroachDB)、TSO(TiDB),在我们目前的实现中,我们使用了 TSO 策略,由 GMS(元数据管理服务)作为一个高可用的单点服务承担生成 Timestamp 的任务。TSO 保证了正确的线性一致性和良好的性能,只是在跨全球机房部署的场景会带来较高的延迟。
gydtep
发表于 2021-7-13 09:00:49
这主要因为 CNCF 基金会在当时的核心拳头软件就是 K8s,因此在概念定义上主要是围绕着容器编排建立起来的生态。其实这也是为什么我们可以看到 CNCF 定义云原生的时候有时感觉就是再说容器生态。
gydtep
发表于 2021-7-13 12:57:39
优势
敏捷开发帮助我们减少浪费、快速反馈,以用户体验为目标。
持续交付促使我们更快、更可靠、更频繁地改进软件;基础设施即代码(Infrastructure As Code)帮助我们简化环境的管理。
gydtep
发表于 2021-7-13 17:15:57
流控设计
限流算法。限流也就是调节数据流的平均速率,通过限制速率保护自己,常见的算法有:
固定窗口算法(fixed window)。
gydtep
发表于 2021-7-14 10:17:50
Quorum 机制就是要满足公式 W+R>N,式中 N 代表备份个数,W 代表要写入至少 W 份才认为成功,R 表示至少读取 R 个备份。
gydtep
发表于 2021-7-14 15:49:36
在 12 因素的背景下,应用指的是独立可部署单元。组织中经常把一些互相协作的可部署单元称作一个应用。
基准代码,一份基准代码,多份部署,使用 GIT 或者 SVN 管理代码,并且有明确的版本信息。
gydtep
发表于 2021-7-15 10:06:16
全托管的计算服务,客户只需要编写代码构建应用,无需关注同质化的、负担繁重的基础设施开发、运维、安全、高可用等工作。