关于中间件:软件测试详解12中间件介绍

25次阅读

共计 2769 个字符,预计需要花费 7 分钟才能阅读完成。

一、Tomcat

1、Tomcat 概念

Tomcat 服务器是一个开源的轻量级 Web 应用服务器,在中小型零碎和并发量小的场合下被广泛应用,是开发和调试 Servlet、JSP 程序的首选。

2、原理

Tomcat 次要组件:服务器 Server,服务 Service,连接器 Connector、容器 Container。连接器 Connector 和容器 Container 是 Tomcat 的外围。

一个 Container 容器和一个或多个 Connector 组合在一起,加上其余一些反对的组件独特组成一个 Service 服务,有了 Service 服务便能够对外提供能力了,然而 Service 服务的生存须要一个环境,这个环境便是 Server,Server 组件为 Service 服务的失常应用提供了生存环境,Server 组件能够同时治理一个或多个 Service 服务。

二、nginx

1、nginx 简介

nginx(发音同 engine x)是一款轻量级的 Web 服务器 / 反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个 BSD-like 协定下发行。

nginx 的特点是占有内存少,并发能力强,事实上 nginx 的并发能力的确在同类型的网页服务器中体现较好,中国大陆应用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

2、nginx 的个性与长处

1)nginx 的个性

  • Nginx 应用基于事件驱动架构,使得其能够反对数以百万级别的 TCP 连贯
  • 高度的模块化和自由软件许可证是的第三方模块层出不穷(这是个开源的时代啊~)
  • Nginx 是一个跨平台服务器,能够运行在 Linux,Windows,FreeBSD,Solaris, AIX,Mac OS 等操作系统上
  • 这些优良的设计带来的极大的稳定性

2) nginx 的长处

  • 高并发连贯:官网测试可能撑持 5 万并发连贯,在理论生产环境中跑到 2 - 3 万并发连接数
  • 内存耗费少:在 3 万并发连贯下,开启的 10 个 nginx 过程才耗费 150M 内存(15M*10=150M)
  • 配置文件非常简单:格调跟程序一样通俗易懂
  • 老本低廉:nginx 为开源软件,能够收费应用。而购买 F5 BIG-IP、NetScaler 等硬件负载平衡交换机则须要十多万至几十万人民币
  • 反对 Rewrite 重写规定:可能依据域名、URL 的不同,将 HTTP 申请分到不同的后端服务器群组
  • 内置的健康检查性能:如果 Nginx Proxy 后端的某台 Web 服务器宕机了,不会影响前端拜访
  • 节俭带宽:反对 GZIP 压缩,能够增加浏览器本地缓存的 Header 头
  • 稳定性高:用于反向代理,宕机的概率微不足道
  • 模块化设计:模块能够动静编译
  • 外围反对好:文档全,二次开发和模块较多
  • 反对热部署:能够不停机重载配置文件
  • 反对事件驱动、AIO(AsyncIO,异步 IO)、mmap(Memory Map,内存映射)等性能优化

3、nginx 反向代理

多个客户端给服务器发送的申请,Nginx 服务器接管到之后,依照肯定的规定分发给了后端的业务解决服务器进行解决了。此时~ 申请的起源也就是客户端是明确的,然而申请具体由哪台服务器解决的并不明确了,Nginx 表演的就是一个反向代理角色。

客户端是无感知代理的存在的,反向代理对外都是通明的,访问者并不知道本人拜访的是一个代理。因为客户端不须要任何配置就能够拜访。

反向代理,“它代理的是服务端”,次要用于服务器集群分布式部署的状况下,反向代理暗藏了服务器的信息。

三、Apache

1、Apache 简介

Apache HTTP Server(简称 Apache)是 Apache 软件基金会的一个开放源码的网页服务器,是世界应用排名第一的 Web 服务器软件。它能够运行在简直所有宽泛应用的计算机平台上,因为其跨平台和安全性被宽泛应用,是最风行的 Web 服务器端软件之一。它疾速、牢靠并且可通过简略的 API 裁减,将 Perl/Python 等解释器编译到服务器中。

Apache HTTP 服务器是一个模块化的服务器,源于 NCSAhttpd 服务器,通过屡次批改,成为世界应用排名第一的 Web 服务器软件。Apache 取自“a patchy server”的读音,意思是充斥补丁的服务器,因为它是自由软件,所以一直有人来为它开发新的性能、新的个性、批改原来的缺点。Apache 的特点是简略、速度快、性能稳固,并可做代理服务器来应用。

原本它只用于小型或试验 Internet 网络,起初逐渐裁减到各种 Unix 零碎中,尤其对 Linux 的反对相当完满。Apache 有多种产品,能够反对 SSL 技术,反对多个虚拟主机。Apache 是以过程为根底的构造,过程要比线程耗费更多的零碎开销,不太适宜于多处理器环境,因而,在一个 Apache Web 站点扩容时,通常是减少服务器或裁减群集节点而不是减少处理器。

四、Lighttpd

最风行的 Apache 服务器替代者,Lighttpd 是一个单线程的针对大量继续连贯做出专门优化的 Web 服务器(这正是少数高流量网站和应用程序须要的)。泛滥的风行 Web 站点抉择 Lighttpd,包含 Youtube、SourceForge 和维基百科。Lighttpd 反对 FastCGI、HTTP 服务器端压缩、mod-rewrite 和其余泛滥有用的性能。只管 Lighttpd 领有 Apache 的绝大多数性能,但它依然放弃轻量级(仅 1MB)并且能够与 Apache 应用雷同的配置。

五、kangle

kangleweb 服务器(简称:kangle)是一款跨平台、功能强大、平安稳固、易操作的高性能 web 服务器和反向代理服务器软件。除此:kangle 也是一款专为做虚拟主机研发的 web 服务器。实现虚拟主机独立过程、独立身份运行。用户之间平安隔离,一个用户出问题不影响其余用户。平安反对 php、asp、asp·net、java、ruby 等多种动静开发语言。

六、Boa

很多的网站管理员对在硬件配置较低的服务器上应用轻量级的 Boa 作为 Web 服务器极其信赖。Boa 是一个单线程的 HTTP 服务器,这意味着 Boa 只能顺次实现用户的申请而不会 fork 新的过程来解决并发申请。Boa 的设计目标是速度和平安,对于运行于单服务器的风行 Web 站点而言,Boa 是一个好的抉择。

七、Jigsaw

Jigsaw 是 W3C 推出的开源的 Web 服务器平台,应用 Java 语言编写,能够装置在有 Java 运行环境的零碎上。做为 W3C(World Wide Web Consortium)开发的服务器产品,其作用次要是对新技术的实现做一个例示,而非一个全功能的商业服务器产品。不过就 Jigsaw 2.0 版本而言,它的性能还是超过了 Web 服务器的平均水平。最重要的是,它体现了将来 HTTP 协定和基于对象的 Web 服务器技术的倒退。如果你心愿你的平台反对所有下一代技术,Jigsaw 是一个好的抉择。

接口测试和接口文档生成工具:apipost

正文完
 0