CSDN|42 张图带你揭秘后端技术都要学啥?( 四 )


本文插图
HTTP重定向负载均衡优点:

  • 简单 , 如果是java开发工程师 , 只需要servlet中几句代码即可
  • 加大请求的工作量 。 第一次请求给负载均衡服务器 , 第二次请求给应用服务器
  • 因为要先计算到应用服务器的 IP 地址 , 所以 IP 地址可能暴露在公网 , 既然暴露在了公网还有什么安全可言
DNS负载均衡了解计算机网络的你应该很清楚如何获取 IP 地址 , 其中比较常见的就是 DNS 解析获取 IP 地址 。 用户通过浏览器发起HTTP请求的时候 , DNS 通过对域名进行即系得到 IP 地址 , 用户委托协议栈的 IP 地址简历 HTTP 连接访问真正的服务器 。 这样不同的用户进行域名解析将会获取不同的IP地址从而实现负载均衡 。 CSDN|42 张图带你揭秘后端技术都要学啥?
本文插图
DNS负载均衡乍一看 , 和HTTP重定向的方案不是很相似吗而且还有 DNS 解析这一步骤 , 也会解析出 IP 地址 , 不一样的暴露?每次都需要解析吗 , 当然不 , 通常本机就会有缓存 , 在实际的工程项目中通常是怎么样的呢?
  • 通过 DNS 解析获取负载均衡集群某台服务器的地址;
  • 负载均衡服务器再一次获取某台应用服务器 , 这样子就不会将应用服务器的 IP 地址暴露在官网了 。
反向代理负载均衡这里典型的就是Nginx提供的反向代理和负载均衡功能 。 用户的请求直接叨叨反向代理服务器 , 服务器先看本地是缓存过 , 有直接返回 , 没有则发送给后台的应用服务器处理 。 CSDN|42 张图带你揭秘后端技术都要学啥?
本文插图
反向代理负载均衡IP负载均衡上面一种方案是基于应用层的 , IP很明显是从网络层进行负载均衡 。 TCP./IP协议栈是需要上下层结合的方式达到目标 , 当请求到达网络层的黑猴 。 负载均衡服务器对数据包中的IP地址进行转换 , 从而发送给应用服务器 。 CSDN|42 张图带你揭秘后端技术都要学啥?
本文插图
IP负载均衡注意 , 这种方案通常属于内核级别 , 如果数据比较小还好 , 但是大部分情况是图片等资源文件 , 这样负载均衡服务器会出现响应或者请求过大所带来的瓶颈 。 数据链路负载均衡它可以解决因为数据量他打而导致负载均衡服务器带宽不足这个问题 。 怎么实现的呢 。 它不修改数据包的IP地址 , 而是更改mac地址 。 应用服务器和负载均衡服务器使用相同的虚拟IP 。 CSDN|42 张图带你揭秘后端技术都要学啥?
本文插图
数据链路负载均衡以上介绍了几种负载均衡的方式 , 但是很重要的负载均衡算法却没有设计 , 其中包含了轮询 , 随机 , 最少连接 , 下面分别对此进行介绍 。
数据存储公司存在的价值在于流量 , 流量需要数据 , 可想而知数据的存储 , 数据的高可用可说是公司的灵魂 。 那么改善数据的存储都有哪些手段或方法呢?
  • 数据主从复制
主从复制比较好理解 , 需要使用两个数据库存储一样的数据 。 其原理为当应用程序A发送更新命令到主服务器的时候 , 数据库会将这条命令同步记录到Binlog中 。 然后其它线程会从Binlog中读取并通过远程通讯的方式复制到另外服务器 。 服务器收到这更新日志后加入到自己Relay Log中 , 然后SQL执行线程从Relay Log中读取次日志并在本地数据库执行一遍 , 从而实现主从数据库同样的数据 。 CSDN|42 张图带你揭秘后端技术都要学啥?
本文插图
主从复制主从复制可以方便进行读写分离 , 可以使用一主多从的方式保证高可用 , 如果从数据库A挂了 , 可以将读操作迁移到从数据库完成高可用 。 但是如果主数据库挂了咋搞 , 那就Mysql的主主复制 。 可是不管上面说的那种方式都不是提升它的存储能力 , 这就需要进行数据库的分片了 。


推荐阅读