For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
负载均衡问题是每一位软件编程开发程序员在开发软件的时候都需要重点关注的一个编程开发问题,今天我们就通过案例分析来简单了解一下,负载均衡常见类型都有哪些。
1、DNS负载均衡
DNS是简单也是常见的负载均衡方式,一般用来实现地理级别的均衡。例如,北方的用户访问北京的机房,南方的用户访问深圳的机房。DNS负载均衡的本质是DNS解析同一个域名可以返回不同的IP地址。
DNS负载均衡实现简单、成本低,但也存在粒度太粗、负载均衡算法少等缺点。仔细分析一下优缺点,其优点有:
简单、成本低:负载均衡工作交给DNS服务器处理,无须自己开发或者维护负载均衡设备。
就近访问,提升访问速度:DNS解析时可以根据请求来源IP,解析成距离用户近的服务器地址,可以加快访问速度,改善性能。
缺点有:
更新不及时:DNS缓存的时间比较长,修改DNS配置后,由于缓存的原因,还是有很多用户会继续访问修改前的IP,这样的访问会失败,达不到负载均衡的目的,并且也影响用户正常使用业务。
扩展性差:DNS负载均衡的控制权在域名商那里,无法根据业务特点针对其做更多的定制化功能和扩展特性。
分配策略比较简单:DNS负载均衡支持的算法少;不能区分服务器的差异(不能根据系统与服务的状态来判断负载);也无法感知后端服务器的状态。
针对DNS负载均衡的一些缺点,对于时延和故障敏感的业务,有一些公司自己实现了HTTP-DNS的功能,即使用HTTP协议实现一个私有的DNS系统。这样的方案和通用的DNS优缺点正好相反。
2、硬件负载均衡
硬件负载均衡是通过单独的硬件设备来实现负载均衡功能,这类设备和路由器、交换机类似,可以理解为一个用于负载均衡的基础网络设备。
硬件负载均衡的优点是:
功能强大:全面支持各层级的负载均衡,支持全面的负载均衡算法,支持全局负载均衡。
性能强大:对比一下,软件负载均衡支持到10万级并发已经很厉害了,硬件负载均衡可以支持100万以上的并发。
稳定性高:商用硬件负载均衡,经过了良好的严格测试,经过大规模使用,稳定性高。
支持安全防护:硬件均衡设备除具备负载均衡功能外,还具备防火墙、防DDoS攻击等安全功能。
硬件负载均衡的缺点是:
价格昂贵:普通的一台F5就是一台“马6”,好一点的就是“Q7”了。
扩展能力差:硬件设备,可以根据业务进行配置,但无法进行扩展和定制。
3、软件负载均衡
软件负载均衡通过负载均衡软件来实现负载均衡功能,常见的有Nginx和LVS,其中Nginx是软件的7层负载均衡,LVS是Linux内核的4层负载均衡。4层和7层的区别就在于协议和灵活性,Nginx支持HTTP、E-mail协议;而LVS是4层负载均衡,和协议无关,几乎所有应用都可以做,例如,聊天、数据库等。
除了使用开源的系统进行负载均衡,如果业务比较特殊,也可能基于开源系统进行定制(例如,Nginx插件),甚至进行自研。
软件负载均衡的优点:
简单:无论是部署还是维护都比较简单。
便宜:只要买个Linux服务器,装上软件即可。
灵活:4层和7层负载均衡可以根据业务进行选择;也可以根据业务进行比较方便的扩展,例如,可以通过Nginx的插件来实现业务的定制化功能。
其实下面的缺点都是和硬件负载均衡相比的,并不是说软件负载均衡没法用。
性能一般:一个Nginx大约能支撑5万并发。
功能没有硬件负载均衡那么强大。
一般不具备防火墙和防DDoS攻击等安全功能。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加抖音太原达内IT培训学习了解。