• 12
  • 12
分享
  • HTTPS/HTTP监听常见问题——软件测试圈
  • 饭团🍙 2022-02-17 13:53:24 字数 2415 阅读 1567 收藏 12

第一次在学习IntelliJ IDEA过程中,进行web.xml文件的配置时候,对于Http监听情况不是很熟悉,所以找来参考文档以了解原理,以备今后复习来用。

1、为什么请求经过七层负载均衡转发后,后端服务器的响应头中的某些参数会被删除?

为了实现会话保持,负载均衡会修改后端服务器响应头中的Date、Server、X-Pad和X-Accel-Redirect等参数值。

解决方案:

  • 在自定义的报文头部中加入一个前缀,如xl-server或xl-date,以避开负载均衡的处理。

  • 将七层HTTP监听改为四层TCP监听。

2、为什么在HTTP请求的头部增加了Transfer-Encoding: chunked字段?

将域名解析到七层负载均衡的服务地址后,从本地主机访问域名时发现在HTTP请求的头部增加了一个Transfer-Encoding: chunked字段,但是从本地主机直接访问后端服务器时是没有这个字段的。

由于七层负载均衡基于Tengine反向代理实现。Transfer-Encoding字段表示Web服务器如何对响应消息体编码,比如Transfer-Encoding: chunked表示Web服务器对响应消息体做了分块传输。

说明:在四层负载均衡服务中,负载均衡仅转发流量,不存在该字段。

3、为什么HTTP监听访问正常但HTTPS监听打开网址不加载样式?

现象:

分别创建HTTP和HTTPS监听,两个监听使用同样的后端服务器。以HTTP方式访问监听端口对应的网站时,网站正常显示,但使用HTTPS监听访问时,网站排版显示错乱。

原因:

负载均衡默认是不会屏蔽JS文件加载传输的,可能原因:

  • 证书和浏览器安全级别不兼容导致。

  • 证书是非正规第三方证书需要联系证书发布者检查证书问题。

解决方案:

  1. 打开网站时,按照浏览器提示加载脚本。

  2. 在客户端中添加对应证书。

4、HTTPS监听使用什么端口?

HTTPS监听对端口无特殊要求,建议您使用443端口。

5、负载均衡支持哪些类型的证书?

支持上传PEM格式的服务器证书和CA证书。

服务器证书需要上传证书内容和私钥;CA证书只需要上传证书内容。

6、负载均衡是否支持keytool创建的证书?

支持。

但在上传证书前,您需要将证书转换为PEM格式,详情参见转换证书格式。(以后再做备注说明)

7、可以使用PKCS#12(PFX)格式的证书么?可以。

但在上传证书前,您需要将证书转换为PEM格式,详情参见转换证书格式。(以后再做备注说明)

8、一个账号可以上传多少个证书?

每个账号最多可上传100个证书,包含CA证书和服务器证书。

9、添加证书时,为什么会出现KeyEncryption的错误?

该错误由于私钥内容有误导致。关于私钥格式说明,参见证书要求。(以后再做备注说明)

10、一个HTTPS监听可绑定多少证书?

若使用HTTPS单向认证,则一个监听只能绑定一个服务器证书;若使用HTTPS双向认证,则一个监听需要绑定一个服务器证书和一个CA证书。

11、负载均衡HTTPS支持哪些SSL协议版本?

TLSv1、TLSv1.1以及TLSv1.2。

12、为什么HTTPS协议实际产生的流量会比账单流量多一些?

HTTPS协议会使用一些流量用于协议握手,因此其实际产生的流量会多于帐单流量。

13、HTTPS session ticket的保持时间是多久?

HTTPS session ticket保持时间为300秒。

14、可以上传包含DH PARAMETERS字段的证书么?

HTTPS监听使用的ECDHE算法簇支持前向保密技术,不支持将DHE算法簇所需要的安全增强参数文件上传,即不支持将PEM证书文件中含BEGIN DH PARAMETERS字段的证书上传。

15、HTTPS监听是否支持SNI?

SNI(Server Name Indication)是为了解决一个服务器使用多个域名和证书的SSL/TLS扩展,目前负载均衡HTTPS监听不支持SNI功能。

如果您有相关需求,可以改用TCP监听并在后端服务器上实现SNI功能。

16、HTTP/HTTPS监听访问后端服务器的HTTP协议版本是什么?

HTTP/1.0。

17、后端服务器能否获取客户端访问HTTP/HTTPS监听的协议版本?

可以。

18、一个请求通过负载均衡到达后端服务器,如果客户端在未收到后端服务器的回复前主动断开和负载均衡的连接,负载均衡会同时断开和后端服务器的连接么?

负载均衡在读写过程中不会断开与后端服务器的连接。

19、HTTP/HTTPS监听是否支持WebSocket/SSL WebSocket?

全部地域都已支持WSS/WS协议,详情参见WS/WSS协议支持常见问题。

20、HTTP/HTTPS连接的超时时间是如何规定的?

  • HTTP长连接的请求数量限定是最多连续发送100个请求,超过限定将关闭这条连接。

  • HTTP长连接两个HTTP/HTTPS请求之间的超时时间为15秒(存在误差1-2秒),超过后会关闭TCP连接,如果用户有长连接使用需求请尽量保持在13秒之内发送一个心跳请求。

  • 负载均衡与后端一台ECS实例TCP三次握手完成过程的超时时间为5秒,超时后选择下一台ECS实例;查询访问日志的upstream响应时间可以定位。

  • 负载均衡等待一台ECS实例回复请求的响应时间是60秒,超过后一般会返回504响应码或408响应码给客户端;查询访问日志的upstream响应时间可以定位。

  • HTTPS session重用超时间为300秒,超过后同一客户端需要重新进行完整的SSL握手过程。

21、负载均衡是否支持配置域名和URL转发策略?

支持,详情参见配置域名URL转发策略。

22、每个监听可以添加多少条域名和URL转发规则?

每个监听最多可添加20条转发规则。


作者:TimStars

原文链接:https://www.cnblogs.com/stevenstim/p/9557686.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 作为软件开发从业者,API 调试是必不可少的一项技能,在这方面 Postman 做的非常出色。但是在整个软件开发过程中,API 调试只是其中的一部分,还有很多事情 Postman 无法完成,或者无法高效完成,比如:API 文档定义、API Mock、API 自动化测试等等。Apifox 就是为了解决这个问题而生的。接口管理现状一、常用解决方案使用 Swagger 管理 API 文档使用 Postman 调试 API使用 MockJs 等工具 Mock API 数据使用 JMeter 做 API 自动化测试二、存在的问题维护不同工具之间数据一致性非常困难、低效。并且这里不仅仅是工作量的问题,更大...
            14 14 1864
            分享
          • SoapUI 压力测试SoapUI  想要进行 压力测试,就要使用其中的 LoadTest 功能。创建 LoadTestLoadTest 能实现 压力测试 的效果,我们可以先创建 Test Suit,也就是测试套件,然后在 Test Suit 中去创建 LoadTest。下图就是创建好的 LoadTest压力测试结果运行之后我们可以查看到详细的运行参数以及曲线图更高效的压力测试我准备两个接口,每个接口我想运行 100 次,但是我不想这两个接口混在一起 测试,所以我可以用到 Apifox 的 测试套件(Test Suit)准备接口我们先准备两个接口,待会测试要用到/api/v...
            0 0 1553
            分享
          • Performance Test Report 项目XXX项目二期版本V1.00作者dayu日期2019.9.311. 测试概述1.1 测试目标描述本次测试的意义和目标本次测试的目的在于探查XXX项目二期重构环境的系统业务处理性能,以及在高负载情况下的系统表现。1.2 指标和术语描述本次测试中涉及到的性能指标术语术语释义并发数测试时同时系统发出事务请求的数量,并发线程数用以模拟同时与系统建立连接的用户。TPS(每秒事务数)在每秒时间内系统可处理完毕的事务数。TPS很大程度体现系统性能能力。错误率经系统处理的事务出现错误的概率,对应着实际用户使用系统功能失败的情况。理想情况下错误率应保...
            6 5 2971
            分享
          •   概述  从去年4月份开始,已经发现我们的提测版本质量存在问题,于是陆陆续续向上反馈希望通过自测环节来把控提测版本质量问题。  为此,经过前期的一些探索我们开展了如下工作成果,增加自测流程:  · 整体汇总单体测试测试点V1.0  · 通用测试checklist 清单  · 单体测试宣讲  问题分析  在经过上述实践后,我们发现了一些不足之处。从不同角度深入分析,我们意识到在某些方面仍需改进。  排除一些主观因素外,存在问题现象有2点:  1、不能匹配所有项目  部门大部分项目为web 项目,有些功能清单能覆盖到,有的项目非web型,并且调用第三方平台,针对这种...
            0 0 1113
            分享
          • 第1步:设计测试自动化策略许多团队通常会遇到困难,因为他们没有面向目标的测试自动化策略。它将所有团队成员保持在同一页面上。它通知和传达预定义的目标和计划,每个人都可以从中了解他们所做的是对还是错,并调整下一步行动。如果没有清晰的战略,团队很容易改变方向,选择错误的解决方案,并且无法以有助于实现业务价值的方式使用测试自动化。这是看待它的一个好方法:测试自动化就像构建并拥有自己的软件来测试其他应用程序。它应该以与软件开发相同的方式以清晰的愿景和计划进行管理。第2步:丰富测试自动化基础了解测试自动化的所有基础知识至关重要,从敏捷和DevOps方法、框架构建、自动化金字塔、架构、自动化方法到报告和指标...
            0 0 1289
            分享
      • 51testing软件测试圈微信