zoukankan      html  css  js  c++  java
  • 分布式与路漫漫,代码与篇齐飞

    分布式系统的基石

    TCP/IP是Internet的基本协议,由底层的IP和TCP组成,其结合DNS、路由协议最终实现了网络之间任意两点间的数据通信问题,当在CMD运行ipconfig/all可以查看当前计算机配置的TCP/IP参数、默认网关和DNS服务器的信息。

    当在浏览器中输入*http://www.baidu.com/*时,浏览器发现URL的主机部分有一个域名,他就查找本机配置的DNS服务器,用UDP协议向DNS服务器发送DNS查询命令,DNS服务器获取到查询命令并从数据库中查询该域名所对应的主机的IP地址。

    nslookup命令

    此命令成功解释了上面一段话

    在执行命令的过程中可能会发现此查询返回的第一个IP地址不同 可能而非一定

    称为DNS的负载均衡机制

    DNS查询返回多个IP地址

    返回的IP地址被浏览器获取后就会向这个地址的80端口发起TCP连接,由于返回的IP地址不是计算机所在的局域网,而是广域网内中的地址

    IP报文的路由问题

    路由

    路由负责互联网中多个小网之间的连接,并相互交换路由表信息来确定一个IP报文要经过哪个路由器的端口发到另一个互联的子网,为防止在数据包转发过程中形成死循环,IP包中的TTL字段每经过路由器转发一次就会减一,当减到零的时候则被丢弃,认为网络不可达,一般默认的最大跳数为30。

    tracert

    ICMP协议

    确定一个报文到达目标地址所经过的路由器节点,程序发出的前三个数据包的TTL值是1,之后3个是2,以此类推,便得到一连串数据包路径,路径上的每一个IP地址是一个路由器的IP。

    注意: 部分数据可能是未知的,原因便是防火墙、路由器等设备屏蔽了ICMP报文。

    socket

    Socket是一个IP地址与端口的组合,代表计算机上一个远程通信接口,本地的Socket与远程的Socker建立连接的过程即是3次握手过程

    互联互不通–>CDN

    双线机房

    互联互不通和双线机房两个名词经常同时出现,例如当一个机房中同时有两个服务商的两条线路接入,通过BGP自动路由的分析可以让访问数据互相不受对方的干扰,合理地解决了互相访问速度慢的问题。

    为了解决不只两个网络,甚至到ISP的互通问题

    CDN

    内容分发网络,是一种基于C/S结构的分布式媒体服务技术平台,其节点遍布各ISP,CDN将网站的内容发布到最接近用户的网络“边缘”,访问者就近获取数据,保证了网站到任意ISP的访问速度。

    注意: CDN因为流量分流到各节点的原理,天然获得了抵抗网络攻击的能力。

    新的 CDN 技术在云计算技术的推动下将结合虚拟化技术,如果在 CDN 系统的边缘节点部署分布式的云系统架构,则能够对采集的海量非结构化数据进行并行处理,从而使整个系统具备强大的数据处理能力和更优化的扩展性。

    让对手感动,让对手恐惧
  • 相关阅读:
    maven 依赖排除
    SpringMvc自动装配@Controller无效
    SpringMvc笔记-对RESTFUL风格的配置
    Shiro报错-[org.apache.shiro.mgt.AbstractRememberMeManager]
    According to TLD or attribute directive in tag file, attribute value does not accept any expressions报错解决办法
    shiro笔记-AuthenticatingRealm和AuthorizingRealm关系
    Shiro笔记--shiroFilter权限过滤
    maven使用jstl表达式和The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application解决
    mysql window版本下载
    linux中/bin和/sbin和/usr/bin和/usr/sbin
  • 原文地址:https://www.cnblogs.com/RokoBasilisk/p/12305155.html
Copyright © 2011-2022 走看看