思考题 分布式mvc-mvp-mvvm架构
3 02|法则一:为什么有些架构活动会没有正确的目标?
你好,我是郭东白。今天这节课,我们就正式开始架构师生存法则的学习。 你肯定看到过这样的观点:架构设计就是一个迭代的过程,我们要不断发现并且补偿现阶段软件设计的不完美,然后通过各种手段打补丁升级。因此,架构设计永远都是螺旋上升的,没有也不需要目标的指引。 也有人认为定义目标并不是架构师的职责。毕竟目标 ......
26 结束语 | 一个架构师的一天
你好,我是李智慧。 时间过得真快,聊着聊着,这个专栏就到了尾声。恭喜你完成了这一阶段的学习,向架构师又迈进了一步! 在这里,我想问你一个问题:学完这个专栏,除了架构知识以外,你对“架构师”这个角色有了哪些新的认知呢?毕竟这个专栏的Slogan就是“附身”大厂架构师,我还是非常希望能为你代入架构师视角 ......
23-2期中测试获奖用户名单及参考答案:通达系统架构设计
你好,我是李智慧。今天我们来公布一下期中测试的获奖用户名单和对应的答案。 我们期中测试的要求是写一个同城快送业务的系统架构设计文档,这个测试主要考察的目标包括:使用UML进行系统建模的能力,用文档表达设计思路的能力,完整思考一个系统整体架构的能力,以及识别设计落地关键技术问题及对策的能力。 在这里, ......
18 16 | 高可用架构的十种武器:怎么度量系统的可用性?
你好,我是李智慧。 互联网应用是面向一般大众的应用系统,他们可能会随时需要使用应用,那么应用就必须要保持随时可用,即所谓的$small 7times24$小时可用。但是互联网应用又可能会遇到硬件故障、软件故障、黑客攻击等等各种不可用的场景。 业界通常用多少个9来说明互联网应用的可用性。比如说淘宝的可 ......
【IT老齐016】MySQL高可用MHA架构方案
【IT老齐016】MySQL高可用MHA架构方案 MHA是日本程序员yoshinorim开发的MySQL高可用方案 采用Perl语言开发 MHA是最成熟MySQL高可用方案 场景:主服务器挂了,从服务器不会切换到主服务器,从而引出高可用MHA方案 。 MHA故障发现与转移 故障发现 启动:前置检查 ......
3 12 | 高性能架构的三板斧:分析系统性能问题从哪里入手?
你好,我是李智慧。 我们在讨论高性能架构之前,需要先聊聊什么叫高性能,以及如何量化地测试系统的性能。在02讲中,我们讨论了一些和并发相关的指标。事实上,并发数正是系统性能的核心指标之一,因为高并发会引起系统资源短缺,来不及处理用户请求,就会导致系统性能下降。 除了系统并发数,一般说来,和系统性能相关 ......
8 07 | 海量数据处理技术回顾:为什么分布式会遇到 CAP 难题?
你好,我是李智慧。 在这个模块的几个案例中,我们都需要处理海量的数据,需要用到海量的存储介质,其实海量数据本质上就是一种磁盘资源敏感的高并发场景。 我们说过,为了应对资源不足的问题,我们常采用水平伸缩,即分布式的方案。数据存储的分布式问题是所有分布式技术中最具挑战性的,因为相对于“无状态”(stat ......
2 01 | 软件建模与文档:架构师怎样绘制系统架构蓝图?
你好,我是李智慧。 我在开篇词中说过,我们课程中的一系列软件架构设计是用设计文档的形式呈现的。所以,在拆解一个个案例之前,我们先来了解一些关于软件设计文档的基础知识,这样你在学习后面的具体案例时,就能更加清楚地理解文档是基于什么方式来组织的了。 首先,请你设想这样一个场景:如果公司安排你做架构师,要 ......
HiveServer2的架构
HiveServer2的架构 Hive 核心服务HiveServer2(HS2)的前世今生,最后提供代码实例 ......
李智慧 · 高并发架构实战课课程大纲
1 开篇词 | “附身”大厂架构师,身临其境设计高并发系统 2 01 | 软件建模与文档:架构师怎样绘制系统架构蓝图? 3 02 | 高并发架构设计方法:面对高并发,怎么对症下药? 5 04 | 网页爬虫设计:如何下载千亿级网页? 6 05 | 网盘系统设计:万亿 GB 网盘如何实现秒传与限速? 7 ......
3 02 | 高并发架构设计方法:面对高并发,怎么对症下药?
你好,我是李智慧。 我们知道,“高并发”是现在系统架构设计的核心关键词。一个架构师如果设计、开发的系统不支持高并发,那简直不好意思跟同行讨论。但事实上,在架构设计领域,高并发的历史非常短暂,这一架构特性是随着互联网,特别是移动互联网的发展才逐渐变得重要起来的。 现在有很多大型互联网应用系统,其用户是 ......
1 开篇词 | “附身”大厂架构师,身临其境设计高并发系统
你好,我是李智慧,目前担任同程旅行交通首席架构师。我曾在阿里巴巴和英特尔担任架构师,主要从事高并发系统架构和大数据相关产品的开发。我参与过alibaba.com和Apache Spark的架构设计与开发,也曾作为CTO领导团队经历了日订单从零到一百万的高并发技术挑战。 说来我也是你的老朋友了,因为我 ......
一条SQL如何被MySQL架构中的各个组件操作执行的?
摘要:一条SQL如何被MySQL架构中的各个组件操作执行的,执行器做了什么?存储引擎做了什么?表关联查询是怎么在存储引擎和执行器被分步执行的?本文带你探探究竟! 本文分享自华为云社区《一条SQL如何被MySQL架构中的各个组件操作执行的?》,作者:砖业洋__。 1. 单表查询SQL在MySQL架构中 ......
BP神经网络的数据分类预测和故障信号诊断分类matlab代码 ,直接运行出数据分类结果和误差分布,注释详细易
BP神经网络的数据分类预测和故障信号诊断分类matlab代码 ,直接运行出数据分类结果和误差分布,注释详细易读懂,可直接套数据运行。PS:基于遗传算法的BP神经网络数据分类预测,基于PNN概率神经网络数据分类matlab等。 ID:9639629797361519 ......
MATLAB代码:分布式电源接入对配电网影响分析
MATLAB代码:分布式电源接入对配电网影响分析关键词:分布式电源 配电网 评估 参考文档:《自写文档,联系我看》参考选址定容模型部分;仿真平台:MATLAB 主要内容:代码主要做的是分布式电源接入场景下对配电网运行影响的分析,其中,可以自己设置分布式电源接入配电网的位置,接入配电网的有功功率以及无 ......
vivo积分任务体系的架构演进-平台产品系列05
积分体系作为一种常见营销工具,几乎是每一家企业会员营销的必备功能之一,在生活中随处可见,随着vivo互联网业务发展,vivo积分体系的能力也随之得到飞速提升,本篇主要介绍vivo积分任务体系的系统建设历程。 ......
NC19427 换个角度思考
题目链接 题目 题目描述 给定一个序列,有多次询问,每次查询区间里小于等于某个数的元素的个数 即对于询问 $(l,r,x)$ ,你需要输出 $\sum_{i=l}^{r}[a_i \le x]$ 的值 其中 $[exp]$ 是一个函数,它返回 $1$ 当且仅当 $exp$ 成立,其中 $exp$ 表 ......
面向万物智联的应用框架的思考和探索(上)
本文重点围绕移动应用框架,梳理其关键发展脉络,并分析其背后的技术演进思路以及目前的局限;同时,进一步结合万物智联的新场景和新生态,围绕相应的应用框架的设计和演进,分享个人在这个领域的思考,实践,以及下一步探索。 ......
”彭彭编程笔记“博客已升级为”彭彭架构笔记“公众号
”彭彭编程笔记“博客已升级为”彭彭架构笔记“公众号,请在微信公众号中搜索”彭彭架构笔记“或扫描下面的二维码,感谢你的关注。我将持续为你分享高质量原创技术文章。 ......
1-系统架构
1. 系统架构包括什么形式? C/S架构 B/S架构 2. C/S架构? Client / Server(客户端 / 服务器) C/S架构的软件或者说系统有哪些呢? QQ(先去腾讯官网下载一个QQ软件,几十MB,然后把这个客户端软件安装上去,然后输入QQ号以及密码,登录之后,就可以和你的朋友聊天了, ......
用了这么多年Rust终于搞明白了内存分布!
Rust作为一门学习曲线十分陡峭的语言,掌握其核心基础数据结构的内存分布对学习Rust会有很大的帮助,本文由浅入深仔细介绍了Rust的各个数据结构在内存中的分布情况。 ......
《分布式任务调度平台XXL-JOB》
文档地址 https://www.xuxueli.com/xxl-job/ 中文文档 English Documentation 源码仓库地址 源码仓库地址Release Download https://github.com/xuxueli/xxl-job Download http://gite ......
24 操作系统的网络架构
传统的网络架构: 三层:核心层、汇聚层、接入层; 核心层:高速转发、为多个汇聚层提供连通性,同时为整个网络提供灵活的L3路由网络; 汇聚层:提供防火墙、SSL卸载、入侵检测、网络分析等; 接入层:ToR交换机,与服务器物理连接; 经典的IP网络是逐跳转发数据的,转发数据时,每台路由器都要根据包头的目 ......
开源+实时+数据即服务的架构——唐建法受邀出席2023数据技术嘉年华【干货回顾】
依据现代数据栈的定义,Tapdata 是一个专注于数据集成和数据准备的现代数据栈工具,主要承担数据的采集、集成、准备和服务模块,其核心价值体现在数据集成上:将企业的数据进行联通,为新的数据业务提供新鲜的数据。 ......
APP中弹窗统一管理的思考
背景 在项目的开发过程中,我们会碰到各种各样的弹窗,特别是启动的时候有许多弹窗都是需要显示的。在这种情况下,我们就需要对弹窗进行统一的管理,否则会出现弹窗重叠显示的问题,以及相互依赖的弹窗弹出的顺序不正确的问题或者同一弹窗会多次显示的问题。基于以上的原因,我们有必要对弹窗进行统一的管理。 目标 可以 ......
软件开发、设计、架构的其他原则
LOD:迪米特法则(Law of Demeter) CRP:合成复用原则(Composite Reuse Principle) DRY:不要重复你自己原则 (Don’t Repeat Yourself Principle) KISS:KISS原则 (Keep It Simple and Stupid ......
一文搞懂 x64 IA-64 AMD64 Inte64 IA-32e 架构之间的关系
想要搞清楚 x64、IA64、AMD64 指令集之间的关系,就要先了解 Intel 和 AMD 这两家公司在生产处理器上的发展历史。 x86 处理器 1978年 Intel 生产了它的第一款 16bit 处理器8086,之后几款处理器名字也都以86结尾,包括80186,80286, 80386,80 ......
CS520 计算机架构
CS520 Computer ArchitectureProject 4 – Spring 2023Due date: 5/8/20231. RULES(1) You are allowed to work in a group of up to two students per group, wh ......
分布式kv存储系统之etcd集群管理
leader选举过程是这样的;首先candidate向集群其他候选节点(condidate角色的节点)发送投票信息(Request Vote),默认是投票给自己;各候选节点相互收到另外的节点的投票信息,会对比日志是否比自己的更新,如果比自己的更新,则将自己的选票投给目的候选人,并回复一个包含自己最新... ......