记一次阿里云负载测试

摘要:
环境:服务器:主服务器A,备服务器B业务:tomcat端口:443,80协议:https域名:www.danny.com证书:ssl证书,域名绑定了ssl证书并都配置安装在AB服务器中要求:主要使用A服务器跑业务,B服务器只有在A服务器不可用时才接受访问流量阿里云负载均衡后台转发服务器组选择:1.后端服务器和传统后端服务器组基本没区别,通过转发规则实现流量分发,达到负载均衡的目的。

环境:

服务器:主服务器A,备服务器B(主服务器配置和带宽都大于备服务器器)

业务:tomcat

端口:443,80

协议:https

域名:www.danny.com

证书:ssl证书,域名绑定了ssl证书并都配置安装在AB服务器中

要求:主要使用A服务器跑业务,B服务器只有在A服务器不可用时才接受访问流量

阿里云负载均衡后台转发服务器组选择:

1.后端服务器

和传统后端服务器组基本没区别,通过转发规则实现流量分发,达到负载均衡的目的。

2.虚拟服务器组

当需要将不同的请求转发到不同的后端服务器上时,或需要通过域名和URL进行请求转发时,可以选择使用虚拟服务器组。

3.主备服务器组(满足要求)

即后端服务器中有一台主机和一台备机。当主机工作正常时,流量将直接走主机;当主机宕机时,流量将走到备机。由于备机不会做健康检查,所以只要主机健康检查失败,系统会直接将流量切到备机。当主机健康检查成功恢复服务后,流量会自动切到主机。

实现步骤

1.添加主备服务器组,添加主备端口443,勾选备机

记一次阿里云负载测试第1张

2.添加监听规则,使用TCP监听(主备服务器组只支持TCP四层监听),监听端口443,健康检查端口443(默认为后台服务器组端口),当然也可以用域名做健康检查。

这条规则的意思是用户到负载为443端口的请求转发到后台服务器的443端口。

记一次阿里云负载测试第2张

3.继续添加监听规则,使用http监听,监听端口80,健康检查端口80。(当然这步是没有用到主备服务器组的,用的是后端服务器组,因为主要流量需要通过主服务器,这时可以设置权重1:100来解决,因为对于https的我们公司业务来说,基本都是https访问的,这一步主要针对直接用http协议访问的用户。没办法,试过1.https监听,2.http监听,3.全tcp监听,4.https和http重定向结合监听,5.一个tcp443端口监听等多种监听搭配都不能访问或不能用http直接访问,问题提交工单也没解决,这算是一个折中的办法吧——在很少的http直接请求用户中,又只有很少一部分请求会转给备机,综合基本99%的请求还是直接通过主业务机,基本达到要求吧)

记一次阿里云负载测试第3张

这条规则的意思是用户到负载为80端口的请求转发到后台服务器的80端口,后台接受到80端口的信息,也就是http非ssl证书请求会自动转发给https(前提是需要在绑定ssl证书时在后台设置tomcat请求转发),最终可以实现一些http请求重定向到https

结果如下:

记一次阿里云负载测试第4张

4.解析域名到负载公网IP上

5.https访问即可,也可直接通过http访问(安装ssl证书时别忘了做http跳转https的设置,详见https://cloud.tencent.com/document/product/400/4143)

访问www.danny.com即可自动补全跳转到https://www.danny.com

总结:监听设置有很多坑,理论上可以实现,实际却不一定,比如说设置一个https监听,后端80,理论上是可以访问https页面的,但是我测试的时候不能,网页打不开,其他监听规则一样。以上方法是结合多种失败总结出来的,记录一下。当然也可能是我的web是tomcat有关,不同的web如nignx,设置方式也不同。

注意:

负载均衡监听规则很多,分别有http、https、TCP、UDP监听,四层监听为TCP和UDP;七层监听为http和https。具体使用什么监听规则看具体网站所用协议,底层监听适用范围大于高层监听。比如上面提到的https协议网站就可以用TCP监听,当然前提是绑定安装了ssl证书。

免责声明:文章转载自《记一次阿里云负载测试》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇APS-C画幅三强宾得K3、佳能70D、尼康D7100关键参数对比【分享】iOS功能界面漂亮的弹出框下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

74款安卓和IOS app源码地址

知乎专栏App https://github.com/bxbxbai/ZhuanLan WeChat高仿微信 项目地址: https://github.com/motianhuo/wechat GankMeizhi https://github.com/xingrz/GankMeizhi Meizhi https://github.com/drakeet/...

Windows上使用Git托管代码到Coding

作者:荒原之梦 Git简介: Git是一款分布式版本控制系统,可用于项目的版本管理。Git可以管理本地代码仓库与远程代码仓库间的连接以及进行版本控制,使得我们可以在本地离线进行修改等操作,之后再将代码提交到远程代码仓库,方便团队协作。 Git官网: https://git-scm.com/ Git百度百科: https://baike.baidu.co...

vue,element列表大数据卡顿问题,vue列表渲染慢,element表格渲染慢,表格渲染慢(卡),表格全选卡,使用umy-ui

https://u-leo.github.io/umy-ui/docs/index.html https://github.com/u-leo/umy-ui ### umy-ui 一套为开发者准备的基于 Vue 2.0 的桌面端组件库,完美解决表格万级数据渲染卡顿,编辑表格卡顿问题 > umy-ui叫(U米-ui)或者叫悠米-ui > um...

GitHub上优秀的Go开源项目

2014年11月,Golang官方博客发布Go语言核心开发组成员Andrew Gerrand文章 《Half a decade with Go》,以纪念Go语言发布5周年。Andrew Gerrand在文章中称,Go语言在工业界向云计算转型时代找到了自己的位置,目前一些重量级的云计算项目比如有名的Docker等都是用Go语言开发的,并预言“2015年将是G...

《手把手教你》系列技巧篇(四十四)java+ selenium自动化测试处理https 安全问题或者非信任站点下篇(详解教程) 北京

1.简介     这一篇宏哥主要介绍webdriver在IE、Chrome和Firefox三个浏览器上处理不信任证书的情况,我们知道,有些网站打开是弹窗,SSL证书不可信任,但是你可以点击高级选项,继续打开不安全的链接。举例来说,想必大家都应该用过前几年的12306网站购票,点击新版购票,是不是会出现如下的界面。宏哥又找了一个https的页面,如下图所示:...

Golang ECHO中间件【10】

在echo框架中中间件(Middleware)指的是可以拦截http请求-响应生命周期的特殊函数,在请求-响应生命周期中可以注册多个中间件,每个中间件执行不同的功能,一个中间执行完再轮到下一个中间件执行。 中间件是一个函数,嵌入在HTTP 的请求和响应之间。它可以获得 Echo#Context 对象用来进行一些特殊的操作, 比如记录每个请求或者统计请求数。...