负载均衡

三大主流负载均衡软件对比(LVS+Nginx+HAproxy)

风流意气都作罢 提交于 2020-02-23 20:53:00
LVS: 优点 : 1、抗负载能力强、性能高,能达到F5硬件的60%;对内存和cpu资源消耗比较低 2、工作在网络4层,通过vrrp协议转发(仅作分发之用),具体的流量由linux内核处理,因此没有流量的产生。 3、稳定性、可靠性好,自身有完美的热备方案;(如:LVS+Keepalived) 4、应用范围比较广,可以对所有应用做负载均衡; 5、支持负载均衡算法:rr(轮循)、wrr(带权轮循)、lc(最小连接)、wlc(权重最小连接) 缺点: 1、不支持正则处理,不能做动静分离。 2、配置 复杂,对网络依赖比较大,稳定性很高。 Ngnix: 优点: 1、工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名、目录结构; 2、Nginx对网络的依赖比较小,理论上能ping通就就能进行负载功能; 3、Nginx安装和配置比较简单,测试起来比较方便; 4、也可以承担高的负载压力且稳定,一般能支撑超过1万次的并发; 5、对后端服务器的健康检查,只支持通过端口来检测,不支持通过url来检测。 6、Nginx对请求的异步处理可以帮助节点服务器减轻负载; 7、Nginx仅能支持http、https和Email协议,这样就在适用范围较小。 8、不支持Session的直接保持,但能通过ip_hash来解决。、对Big request header的支持不是很好, 9

Nginx负载均衡会话共享问题

為{幸葍}努か 提交于 2020-02-23 16:03:15
1、什么是会话保持? 简单来说就是用户登录网站后,然后关闭浏览器,当下次在打开网站时,会发现还是处于登录状态,这个就可以理解为是会话保持的功能。 2、为什么要做会话保持? HTTP协议是无状态的,在同一个连接主,两个执行成功的请求之间是没有关系的。这就带来了一个问题,用户没有办法再同一个网站中进行连续的交互,比如再一个电商网站里,用户把某个商品加入到购物车,切换一个界面后再次添加了商品,这两次添加商品的请求之间没有关联,浏览器无法知道用户最终选择了那些商品。 3、会话保持实现的原理? cookie:一般存放再浏览器中的cookies中。主要存放信息(session ID) session:一般存放再服务端。主要存放信息有:(session ID对应的用户名、登录信息等) 4、用户访问动态网站时,cookie和session之间时如何工作的 当用户首次请求服务端网站时,服务端会通过程序生成session_id,然后使用set-cookie的方式将session_id下发给浏览器,浏览器会将session ID存储至本地的cookies中 当用户再次请求服务端网站时,浏览器会再Headers头信息携带该网站的cookie信息,那浏览器携带的cookie信息则时第一次请求网站时服务端给下发的session_ID 用户登录该网站后,服务端会将对应的session_ID存储到(Mysql

初识 Kong 之负载均衡

亡梦爱人 提交于 2020-02-22 22:49:22
使用 Kong Community Edition(社区版 v1.3.0)来搭建一个负载均衡器,由于 Kong 是基于 Openresty 的,而 Openresty 又是 Nginx 的二次封装,所有很多配置项和 Nginx 类似。 来看一个较为典型的 Nginx 负载均衡配置 upstream hello { server localhost:3000 weight=100; server localhost:3001 weight=50; } server { listen 80; location /hello { proxy_pass http://hello; } } nginx 监听来自本地 80 端口的请求,如果路径与 /hello 匹配,便将请求原封不动的转发到名称为 hello 的upstream,而该 upstream 我们配置了一个负载均衡器,会路由到本地的 3000 端口和 3001 端口。 @SpringBootApplication @RestController public class KongDemoApplication { public static void main(String[] args) { System.setProperty("server.port","3000"); //System.setProperty("server

高性能站点架构之负载均衡 Nginx+tomcat+redis实现tomcat集群

早过忘川 提交于 2020-02-22 15:05:45
上一篇文章给大家讲了Nginx的安装,那么这篇文章为大家讲一下Nginx+Tomcat实现负载均衡。 先说说为什么要用ngnix 做负载均衡。事实上做负载均衡的最出名的莫过于F5了。F5是在硬件设施,动辄几万,几十万,几百万不等,对于一般的小公司来说,这也是一笔非常大的开销。所以能尽量的使用软件。还是使用软件,效果上尽管会差一些,可是还是可以起到一定的作用的。 环境准备 三台装有centos6.5 系统的机器。当中两台机器上装有tomcat7,一台机器上装有nginx3.0.2,至于详细怎样安装tomcat和ngnix,这里就不再介绍了。请大家自己去网上查找资料。 这样我们还须要准备一台装有redis服务的server。redis最好配置为集群的,这里为了演示tomcat集群,就使用单台server了。 仅仅与redis的安装,大家能够參照小编的 Linux 安装 Redis 并设置服务 。 測试程序 环境准备好以后,我们写一个简单的測试程序,看看我们的两个tomcat服务是不是使用同一个redis服务,作为session的存储介质。应用程序例如以下。两台tomcatserver本来应该部署相同的应用程序。可是这里为了区分,我们部署一个程序,可是页面不一致 加上ip的最后三位,用来区分不同的服务。 <span style="font-size:18px;"><body>

浅谈负载均衡算法与实现

和自甴很熟 提交于 2020-02-22 04:54:03
浅谈负载均衡算法与实现 记得,我刚工作的时候,同事说了一个故事:在他刚工作的时候,他同事有一天兴冲冲的跑到公司说,你们知道吗,公司请了个大牛。大牛?对,那人会写AJAX!哇,真是大牛啊,跟着他,可以学不少东西啊。我听了笑了,但有点难以理解,因为现在几乎只要是一个开发,都会写AJAX,怎么写个AJAX就算大牛呢?后来我明白了,三年前高深莫测的技术到现在变得普普通通,不足为奇,就像我们今天要讲的负载均衡,在几何时,负载均衡只有大牛才能玩转起来,但是到今天,一个小开发都可以聊上几句。现在,就让我们简单的看看负载均衡把。 从负载均衡设备的角度来看,分为硬件负载均衡和软件负载均衡: 硬件负载均衡:比如最常见的F5,还有Array等,这些负载均衡是商业的负载均衡器,性能比较好,毕竟他们的就是为了负载均衡而生的,背后也有非常成熟的团队,可以提供各种解决方案,但是价格比较昂贵,所以没有充足的理由,充足的软妹币是不会考虑的。 软件负载均衡:包括我们耳熟能详的Nginx,LVS,Tengine(阿里对Nginx进行的改造)等。优点就是成本比较低,但是也需要有比较专业的团队去维护,要自己去踩坑,去DIY。 从负载均衡的技术来看,分为服务端负载均衡和客户端负载均衡: 服务端负载均衡:当我们访问一个服务,请求会先到另外一台服务器,然后这台服务器会把请求分发到提供这个服务的服务器,当然如果只有一台服务器

nginx入门

ⅰ亾dé卋堺 提交于 2020-02-22 03:11:53
最新有个新需求就是访问炼铁19环境的需求。因为19环境无法通过vpn访问,对于现阶段远程运维及办公带来了不便。架构组决策通过路由转发的模式,通过91的特定端口访问19炼铁,方便简单的解决正常访问19炼铁的需求。 一、需求解决方案 具体实现的部署非常简单,就是在91的nginx配置增加server的转发。 /etc/nginx/conf.d/nginx-web.conf server{ listen 1980; #端口 server_name 10.26.10.91; #域名 location / { proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://10.27.16.241:5007; root /login/login.html; #非必须,不加也可以正常访问炼铁 } } proxy_pass http://10.27.16.241:5007–这个地址是19炼铁的映射地址 对于nginx又陌生又熟悉,需要系统的简单学习一下。 今天入门学习了一下: 二、nginx简介 首先看nginx能做什么? 反向代理、负载均衡、HTTP服务器(动静分离)、正向代理 从nginx可以实现的功能来看

企业级负载均衡集群---LVS(三)---DR模式下的健康检查

心已入冬 提交于 2020-02-21 18:20:34
企业级负载均衡集群—LVS(三)—DR模式下的健康检查 文章目录 企业级负载均衡集群---LVS(三)---DR模式下的健康检查 1.健康检查的必要性 2.实验环境部署 3.部署ldirectord 4.编辑 ldirectord的配置文件 5.清除ipvsadm策略&开启ldirectord服务 6.测试 1.健康检查的必要性 下面通过一个小实验了解健康检查的必要性: step1 宕掉server2的apache systemctl stop httpd step2 在测试页进行测试 curl 172.25.254.100 由此我们可以知道: 如果后端真实服务器出现问题,在客户访问时,会返回一个错误的页面。所以我们需要对后端服务器做健康检查,保证只返回正确的页面提供给用户。 2.实验环境部署 给sever1配置高可用的yum源: 3.部署ldirectord rpm -qpl ldirectord-3.9.5-3.1.x86_64.rpm cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/ cd /etc/ha.d/ ls 4.编辑 ldirectord的配置文件 [root@server1 ha.d]# vim ldirectord.cf # Global Directives #全局设置

本人的第一个博客

家住魔仙堡 提交于 2020-02-21 08:00:05
hello world 个人运维技能必备 语言: Python、Shell 系统: Linux、Windows 数据库: Mysql、Redis、MongoDB MySQL代理: Mycat、Altas、Cobar 版本管理: Git 高可用/负载均衡 LVS、Nginx、HAProxy、Keepalived 批量管理: Ansible、Saltstack 装机: Kickstart、Cobbler 容器/虚拟化: Docker、KVM、VM 持续集成: Jenkins 日志: ELK Stack 监控: Zabbix、Promentheus、Grafana、告警平台、Drools监控 分布式: Ceph、GlusterFS、FastDFS web: Nginx、Tomcat、Apache 抓包分析: Tcpdump、Wireshark 同步备份: Rsync 来源: https://www.cnblogs.com/small-wei/p/10825972.html

Nginx负载均衡配置

╄→гoц情女王★ 提交于 2020-02-21 00:42:49
负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦。 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上即可。 测试环境 由于没有服务器,所以本次测试直接host指定域名,然后在VMware里安装了三台CentOS。 测试域名 :a.com A服务器IP :192.168.5.149 (主) B服务器IP :192.168.5.27 C服务器IP :192.168.5.126 部署思路 A服务器做为主服务器,域名直接解析到A服务器(192.168.5.149)上,由A服务器负载均衡到B服务器(192.168.5.27)与C服务器(192.168.5.126)上。 域名解析 由于不是真实环境,域名就随便使用一个a.com用作测试,所以a.com的解析只能在hosts文件设置。 打开:C:WindowsSystem32driversetchosts 在末尾添加 192.168.5.149 a.com 保存退出,然后启动命令模式ping下看看是否已设置成功 从截图上看已成功将a.com解析到192.168.5.149IP A服务器 nginx

CDN基础知识

寵の児 提交于 2020-02-20 13:10:13
一、应用背景 随着互联网用户规模的膨胀,用户服务访问效率低下的情况越来越明显。造成这种现象的主要原因在于网站出口带宽有限,以及跨网访问时不同网络间的互联互通带宽受到限制,因此容易造成网络拥堵。同时服务端到用户的物理距离非常遥远,不可避免地带来较长的传输时延。这些问题随着请求访问量的增加,严重影响了用户体验。在这种情况下,产生了一项互联网基础服务——CDN,即内容分发网络。 二、CDN是什么? CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。 CDN(Content Delivery Network)是指内容分发网络,也称为内容传送网络,这个概念始于1996年,是美国麻省理工学院的一个研究小组为改善互联网的服务质量而提出的。为了能在传统IP网上发布丰富的宽带媒体内容,他们提出在现有互联网基础上建立一个内容分发平台专门为网站提供服务,并于1999年成立了专门的CDN服务公司,为Yahoo提供专业服务。由于CDN是为加快网络访问速度而被优化的网络覆盖层,因此被形象地称为“网络加速器”。 三、CDN的组成 CDN系统架构由