学习总结

 

  说来惭愧,工作这么多年,从来没有对知识点做过总结,开此博客,为了更好的学习,总结,沉淀。

  知识总结路线:

  盗用公司同事写的架构图路线:

  

1.前端: 用户到达应用服务之前经历的环节-【浏览器优化,CDN动静分离,智能dns,图片文件】

2.应用: 处理业务逻辑,session管理-开发框架-负载均衡-业务拆分

3.服务层:提供基础服务供应用调用-【分布式服务,缓存,消息,配置】

4.存储层-数据,文件持久化-【关系数据库,数据同步】

5.管理和非实时数据-【管理后台,大数据分析】

6.访问和运行情况-【业务数据采集,性能数据,系统监控,运维预警】

7.安全-【防攻击,数据保护】

8.数据中心-【基础设施-双中心等】

 

 

架构演化:

1.0 单体应用, 应用程序+文件+数据库

2.0 应用【数据分离】+应用[更快的CPU]+数据库[更快的IO]+文件[更大的空间]

3.0 28法则 加缓存 集群化,应用服务实现集群是可伸缩架构很成熟亦简单的一种

 

4.0 分布式数据库【单表规模,分库分表】,业务拆分【服务化,微服务】

 

要确保任何你所开发的系统发生故障时,至少有一个冗余的实例

确保系统可以回滚到以前发布过的任何版本

能够关闭任何发布的功能

在设计阶段就必须要考虑监控,而不是在实施完成之后补充

不要被一个数据中心的解决方案把自己限制住

只要在绝对必要的时候才进行同步调用,异步适合并发

只有当业务确实需要的时候,才使用状态,无状态的系统更利于扩展,更利于做负载均衡

永远不要依赖更大,更快的系统,微服务是水平扩展的一个例子,不要把所有的功能都集中在一个系统里面,必须的时候把需求分为多个系统,而不是升级原有的系统

 

posted @ 2018-05-20 22:29  N0thinger  阅读(122)  评论(0)    收藏  举报