![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
从零开始学架构【书】
大panda
价值都是自己创造出来的
展开
-
从零开始学架构 12-总结
架构设计是为了解决系统的复杂度高性能架构主线通过读写分离,分库分表进行解决nosql的用途,每类均对应了一种相关的解决方案对于单线程是如何实现并发的,通过多路I/O复用(Epoll)解决,如redis,spring单例注解...原创 2019-02-15 08:47:17 · 126 阅读 · 0 评论 -
从零开始学架构 10-高性能架构模式&复杂度 【笔记】
高性能架构模式核心系统核心系统负责和业务无功能无关的通用功能,如模块加载,模块间通信等插件模块插件模块负责实现具体的业务逻辑设计关键点插件管理:核心系统需要知道哪些插件可用。核心系统提供插件注册表机制,插件模块信息,包括名、位置、加载时机等插件连接:一般连接都按照规范,常见的连接机制,有OSGI,消息队列,依赖注入等插件通信:必须通过核心系统,所以核心系统需要提供插件通信机制...原创 2019-02-14 14:08:45 · 140 阅读 · 0 评论 -
从零开始学架构 09-SOA架构&微服务 【笔记】
ESB:各个系统之间不同的接口进行互通。如json、xml、webservice等不同的接口,ESB去适配已经存在的各种异构系统,屏蔽异构系统对外提供各种不同的接口方式,以此来达到服务高效的,互联互通松耦合:减少各个服务间的依赖和互相影响SOA架构SOA架构比较高层级的架构设计理念,一般说SOA架构来构建了什么系统,不会说某个独立的系统采用了SOA架构SOA提出的背景是企业内部的IT...原创 2019-02-14 11:12:41 · 7933 阅读 · 1 评论 -
从零开始学架构 08-可扩展模式&分层架构 【笔记】
可扩展的基本思想:拆流程:如tcp四层模型服务:http,ftp服务功能:http的get,post,put,delete功能如学生管理系统按流程分:展示层、业务层、数据层、存储层按服务分:登录、注册、信息管理按功能分:更细粒度的功能,如注册:手机号注册、邮箱注册等典型的可扩展系统架构面向流程拆分:分层架构面向服务拆分:SOA,微服务架构面向功能拆分:微内核架构分层...原创 2019-02-14 11:03:00 · 394 阅读 · 0 评论 -
从零开始学架构 07计算高可用&业务高可用 【笔记】
计算高可用主备模式主机执行所有计算任务主从复制主执行部分任务,从执行部分任务业务高可用1、异地多活同城异区近似一个本地机房的效果跨城异地对于数据一致性要求不高,或者数据改变少,或数据丢失影响不大可以使用跨国异地为不透明地区用户提供服务如:亚马逊中国,亚马逊美国2、设计技巧保证核心业务的异地多活核心数据最终一致性异地多活理论上就不可能很快,因为这是物理定...原创 2019-02-14 10:56:34 · 158 阅读 · 0 评论 -
从零开始学架构 06-存储高可用 【笔记】
常见的高可用存储架构主备复制主从复制主主负载数据集群数据分区1. 主备复制缺点:备份机无读写操作,硬件成本有浪费,故障后需要人工干预,否则无法自动恢复2. 主从复制主写、从读,适合读多写少的系统,一般读是写的10倍甚至100倍以上主备与主从区别主从再主机发生故障时,从仍然可以读,对其相关的读操作业务不影响主从复制,主写从读,发挥了硬件的功能主从更复杂,主要体现在客户...原创 2019-02-14 10:36:10 · 234 阅读 · 0 评论 -
从零开始学架构 05-CAP理论 【笔记】
CAP理论分布式系统涉及读写操作时,一致性,可用性,分区容忍性三个要素只能保证两个,另外一个必须被牺牲C:一致性,强一致性,对于客户端来说同一时刻能看到相同的数据A:可用性,非故障的节点在合理的时间内返回合理的响应(不是错误和超时的响应)P:分区容忍性,当出现网络分区后,系统能够继续履行职责CAP理论对于一个分布式计算系统,不可能同时满足cap三个设计约束。或一个分布式系统,当涉及读...原创 2019-02-14 10:14:54 · 233 阅读 · 0 评论 -
从零开始学架构 04-计算高性能&FMEA故障模式分析 【笔记】
计算高性能单服务器的高性能单服务器高效能的关键之一就是服务器采取的网络编程模型服务器如何管理连接服务器如何处理请求以上两个设计点,最终都和操作系统的IO模型及进程模型相关IO模型:阻塞,非阻塞,同步,异步进程模型:单进程,多进程,多线程硬件负载均衡硬件负载均衡:F5、A10优点:功能强大,性能强大,稳定性高,支持安全防护缺点:价格昂贵扩展能力差,性能百万级...原创 2019-02-14 10:03:57 · 318 阅读 · 0 评论 -
从零开始学架构 03-nosql&redis缓存【笔记】
nosql不仅仅是sql,是关系型数据库的补充,一般配合关系型数据库使用关系数据库存在如下缺点关系数据库存储的是行记录,无法存储数据结构关系数据库的结构(schema)扩展很不方便关系数据库大数据场景下IO较高关系数据库的全文搜索功能比较弱常见数据库k-v存储,redis文档数据库,mongodb列式数据库,hbase全文搜索引擎,elasticsearchredis...原创 2019-02-14 08:52:24 · 119 阅读 · 0 评论 -
从零开始学架构 02-高性能架构模式 【笔记】
高性能架构模式1. 读写分离集群模式下主机写,从机读,即通过复制将数据同步到从机。读写分离可以使用代码封装或中间件封装代码封装淘宝的tddl中间件,mysql-proxy、mysql router、atlas解决主从复制的延迟的几种方法写操作后的读操作指定发给数据库主服务器读从机失败后再读一次主机关键业务读写操作全部指向主机,非关键业务采用读写分离2. 分库分表数据量...原创 2019-02-13 16:59:59 · 157 阅读 · 0 评论 -
从零开始学架构 01-架构基础【笔记】
说明:对从零开始学架构这本书看时所做的记录模块,逻辑角度拆分,如注册模块、登录模块组件,物理角度来分,如web服务器,nginx框架是标准的,有规范的产品,关注规范架构关注结构软件架构指软件系统的顶层结构,为了高性能、高可用、可扩展、所以要做架构设计,但盲目的这样做会消耗很多额外的时间。架构设计的目的是为了解决复杂度带来的问题单机复杂度集群复杂度简单的系统更容易做到高性能...原创 2019-02-13 16:42:56 · 9905 阅读 · 1 评论 -
从零开始学架构 11-互联网架构演进 【笔记】
企业的业务分为两类产品类如杀毒软件、苹果等技术创新推动业务发展如苹果取代诺基亚服务类:如百度搜索、淘宝购物等业务发展推动技术的发展如微信和其他通讯软件,肯定选微信,因为规模大,这样推动了微信的技术发展服务符合互联网的用户越多,服务的价值就越大。符合互联网的本质和特征:互联+网复杂度需要是性能瓶颈,稳定性,安全性。互联网业务发展阶段初创期业务发展期竞争期...原创 2019-02-15 08:46:52 · 139 阅读 · 0 评论