深入分析JavaWeb技术内幕

web中B/S网络架构

1:web中B/S网络架构

2:CDN工作机制和架构

3:负载均衡;

   B/S分别是浏览器/服务器,架构流程为;
    当你访问网站的时候,浏览器发送各种请求给浏览器,服务器返回各种默认资源给用户;
    这当中涉及好多的东西,怕是全讲出来会有被打
    1:域名到ip地址的映射;浏览器发送请求,然后DNS域名服务解析你访问的一个网站域名,例如将我的博客域名解析成ip地址;
    2:负载均衡LB设备选择服务器处理请求;服务器不止一台,需要哪台服务器去解决,就需要负载均衡设备LB确定哪台来处理你的请求;
    3:到数据库,    文件系统,分布式缓存系统取数据;请求可能需要一些数据,文件,这些信息服务器没有,服务器需要去别的地方找,别的地方有三个:数据库,    文件系统,分布式缓存系统;
    4:CDN处理一些静态资源请求;有时候,还需要加载个图片,需要加载渲染的样式css/js什么的,就需要向CDN服务器请求;
 
 其中1涉及的DNS域名解析细致包含十个步骤:
1:浏览器检查浏览器缓存,有的话直接解析;
2:没有就检查操作系统缓存host文件;(去年十二月之前可以更改本机中的缓存host文件,让其解析到外网,实现FQ,现在不行了,当然我不提倡这种做法,这样不安全,例如域名挟持,当你让你访问b站总是跳转到某宝或者某东的付款页面什么的)
3:还没有就去检查本地的DNS服务器查找,LDNS一般是在本地的电信移动或者自己学校,不会很远;
4:还没有就去根域名服务器Root Server请求了,全球只有十三台的;位于美国的;
5:根域名Root Server返回给本地域名服务器LDNS一个查到的国际顶级域名服务器gTLD Server,
6:LDNS向得到的gTLD请求,
7:gTLD查到域名对应的Name Server服务商,电信移动等,域名让Name Server完成;
8:  Name Server查询储存的域名和ip对应关系,包含其TTL一块返回给DNS Server, ;
9:lDNS接收并缓存对应关系,缓存时间是TTL;
10:LDNS最终返回给用户解析结果;
电脑上可以敲一下:win+R,输入cmd
跟踪解析:
nslookup   域名
清除缓存:
ipconfig/flushdns
域名解析方式有五种:域名解析记录主要分为A记录、MX记录、CNAME记录、NS记录和TXT记录。
A记录: 
A代表的是Address,用来指定域名对应的IP地址,如将item.taobao.com指定到115.238.23.241,将switch.taobao.com指定到121.14.24.241。A记录可以将多个域名解析到一个IP地址,但是不能将一个域名解析到多个IP地址。
MX记录: 
表示的是Mail Exchange,就是可以将某个域名下的邮件服务器指向自己的Mail Server,如taobao.com域名的A记录IP地址是115.238.25.245,如果MX记录设置为115.238.25.246,是xxx@taobao.com的邮件路由,DNS会将邮件发送到115.238.25.246所在的服务器,而正常通过Web请求的话仍然解析到A记录的IP地址。
CNAME记录: 
全称是Canonical Name(别名解析)。所谓的别名解析就是可以为一个域名设置一个或者多个别名。如将taobao.com解析到chaojijuhui.com,将srcfan.com也解析到chaojijuhui.com。其中chaojijuhui.com分别是taobao.comsrcfan.com的别名。前面的跟踪域名解析中的”www.taobao.com. 1542 IN CNAME www.gslb.taobao.com”就是CNAME解析。
NS记录: 
为某个域名指定DNS解析服务器,也就是这个域名有指定的IP地址的DNS服务器去解析,前面的”gslb.taobao.com. 86400 IN NS gslbns2.taobao. com.”就是NS解析。
TXT记录: 
为某个主机名或域名设置说明,如可以为taobao.com设置TXT记录为”nupt想象之中”这样的说明。
    
其中涉及的东西不变的是url,全部基于http传输协议,ip是网络动态分的,你开个飞行模式再关闭就改变了的;
 
 
第二步中涉及的负载均衡设备LB选择服务器的方式主要分为三种:
链路负载,操作系统负载,集群负载
链路负载:DNS解析成不同的ip,访问的不同的服务器;
操作系统负载:利用操作系统级别的软中断,硬中断,达到负载均衡;(不懂)
集群负载:硬负载F5和软负载LVS+Nginx等包含太多运维和架构知识了,https的普及导致架构修改好多,贴个历史演进;http://www.cnblogs.com/mindwind/p/5339657.html
 
第三部文件读写最最最关键,写不完的,写不完的,到数据库,    文件系统,分布式缓存系统取数据,互联网信息传输瓶颈就是这个;
 
第四步中CDN处理静态资源主要涉及
CDN工作机制和架构
CDN内容分布网络流量分配网络,比镜像智能,相当于 镜像+缓存+整体负载均衡GSLB,工作机制如下:
1:重复上面说的dns解析步骤就不说了,不过这次是为了解析到距离公司最近CDN节点的ip地址;
2:其中涉及公司自己的DNS会将CNAME解析到另外一个域名来指向CDN全局DNS服务器GTM,GTM来确定位置并返回最近的CDN节点 
3:拿到最近CDN节点的ip地址后,就直接访问静态文件,如果最近CDN还没有,CDN再去源站取文件
#Java#
全部评论

相关推荐

斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
挣K存W养DOG:他真的很中意你,为什么不回他
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务