架构

一个人想着一个人 提交于 2019-12-25 05:38:40

架构中的名词:

​ 1.项目:腾讯一个游戏就是一个项目

​ 2.架构:维持一个项目基本运行的一个整体就是架构

​ LNMP:Linux、nginx、MySQL、PHP

​ LNMT:Linux、nginx、MySQL、Tomcat(jboss)

​ LAMP:Linux、Apache、MySQL、PHP

​ LAMT:Linux、Apache、MySQL、tomcat

​ 3.集群:完全一样的服务,可以处理一样的工作,当一台出现问题,不影响项目

​ 4.高可用:当一台机器出现问题,另一台可以接替他的工作

​ 5.负载均衡:平均的将工作分配到后方

酒店架构:

​ 保安:辨别身份,允许通过

​ 迎宾:来者不拒,带你找门

​ 服务员:满足客户一切需求

​ 提前备菜:提前准备好

​ 厨师:做菜

​ 前台:放的酒水,扑克

​ 仓库:存放物品

​ 经理:管理所有人员

​ 监控:监控所有人员工作

架构访问流程-用户视角

1.用户通过浏览器输入oldboyedu.com->回车

2.浏览器会发生一次跳转,分析URL->然后进行DNS解析->获取真实的公网IP地址

3.用户通过tcp的三次握手发起连接->真实的公网IP

4.连接会通过公网->路由器->交换机->抵达前端的硬件防火墙

5.防火墙根据自身访问规则,进行匹配->如果恶意的连接则拒绝->如果是正常的连接则放行

6.防火墙会将连接转发给负载均衡器->查看用户请求的内容->根据内容进行任务下发->下发给web服务器

7.web服务接收请求后会根据请求进行判断

​ 如果是请求图片或者附件->查找存储服务器存储的静态资源

​ 如果请求的网站上的内容->缓存服务器->如果缓存服务器没有->数据库

​ 数据库查询完数据之后会返回数据给web服务器->同时也会返回一份给缓存服务器

8.数据库返回内容->web服务器->负载均衡->用户

架构访问流程-运维视角

1.用户通过公网连接(隧道)VPN服务器,切换网络与服务器同一网段,就可以连接服务器

2.自动化配置管理,节省人力成本,便于后期维护。统一环境,标准化

3.自动化监控服务,监控系统的运行状态,事前预警,事后追溯。

总结:

一个项目涵盖了一套架构,一套架构又涵盖了不同的角色(高可用、负载均衡、web集群)
五层架构模型–> 负载均衡、web服务、存储服务、缓存服务、数据库服务(通过tcp连接)

架构如何演变-服务器架构扩展

横向扩展也叫水平扩展,用更多的节点支撑更大量的请求。

纵向扩展又叫垂直扩展,扩展一个点的能力支撑更大的请求。

​ java程序:一个程序需要1G内存,一台16G内存的机器,只能跑16个

​ 横向扩展:加一台16G的机器,能多跑16个

​ 纵向扩展:加内存,加到32G,能多跑16个

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!