精华内容
下载资源
问答
  • B/S架构及其运行原理

    万次阅读 多人点赞 2018-03-23 22:31:19
    目录 一. B/S的概念 ... B/S(Brower/Server,浏览器/服务器)模式又称B/S结构,是Web兴起后的一种网络结构模式。Web浏览器是客户端最主要的应用软件。 这种模式统一了客户端,将系统功能实现的核心部分...

     

    目录

    一. B/S的概念

    二. B/S工作原理

    三. B/S的优点:

    四. B/S体系结构的特点:    

    五. 与传统C/S的联系与区别:

    六.B/S架构的几种形式

    面试相关:

    项目推荐:


     


    一. B/S的概念

          B/S(Brower/Server,浏览器/服务器)模式又称B/S结构,是Web兴起后的一种网络结构模式。Web浏览器是客户端最主要的应用软件。

          这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用;

          客户机上只需要安装一个浏览器,服务器上安装SQL Server, Oracle, MySql等数据库;浏览器通过Web Server同数据库进行数据交互。

    Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现。

    B/S架构的系统无须特别安装,只有Web浏览器即可。

    其实就是我们前端现在做的一些事情,大部分的逻辑交给后台来实现,我们前端大部分是做一些数据渲染,请求等比较少的逻辑。

    B/S架构的分层:

    与C/S架构只有两层不同的是,B/S架构有三层,分别为:

    第一层表现层:主要完成用户和后台的交互及最终查询结果的输出功能。

    第二层逻辑层:主要是利用服务器完成客户端的应用逻辑功能。

    第三层数据层:主要是接受客户端请求后独立进行各种运算。

    如图所示:

    B/S架构的优点:

    1、客户端无需安装,有Web浏览器即可。 
    2、BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。 
    3、BS架构无需升级多个客户端,升级服务器即可。可以随时更新版本,而无需用户重新下载。

    B/S架构的缺点:

    1、在跨浏览器上,BS架构不尽如人意。 
    2、表现要达到CS程序的程度需要花费不少精力。 
    3、在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题。 
    4、客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。(在Ajax风行后此问题得到了一定程度的缓解)
     

    二. B/S工作原理

    B/S架构采取浏览器请求,服务器响应的工作模式。

    用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;

    而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;

    从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。

    一张图看懂B/S架构工作原理:

                            

    在这里插入图片描述

            工作流程:

            1. 客户端发送请求: 用户在客户端【浏览器页面】提交表单操作,向服务器发送请求,等待服务器响应;

            2. 服务器端处理请求: 服务器端接收并处理请求,应用服务器端通常使用服务器端技术,如JSP等,对请求进行数据处理,并产生响应;

            3. 服务器端发送响应: 服务器端把用户请求的数据(网页文件、图片、声音等等)返回给浏览器。

            4. 浏览器解释执行HTML文件,呈现用户界面。

            ♦ 浏览器:

               是阅读和浏览Web的工具,它是通过B/S方式与Web服务器交互信息的。

               一般情况下,浏览器就是客户端,它要求服务器把指定信息传送过来,然后通过浏览器把信息显示在屏幕上。

               浏览器实际上是一种允许用户浏览Web信息的软件,只不过这些信息是由Web服务器发送出来的。

            ♦ 服务器:        

               服务器(Server),它既是计算机硬件的称谓,有时又是计算机服务端软件的称谓,用户应该区分开它们,主要就是从语境上去区分。

               (1)、服务器是一种计算机硬件:服务器应该算是一种高性能的计算机,它作为网络的节点,存储、处理网络上的数据、信息,因此也被称为网络的灵魂。 

               (2)、服务器是一种计算机软件:一般IIS服务器、Java服务器、.NET服务器等名词,一般都是指一种计算机软件。当用户使用计算机上网时,其实是访问服务器硬件。但 是,这个服务器硬件上安装了服务器软件,例如IIS服务器、Java服务器、.NET服务器,它们负责接收用户的访问请求,并根据请求经过计算将数据返回给用户的客户端(浏览器)。

                 服务器软件分为两类:一类是Web服务器;另一类是应用程序服务器(简称为App Server)。IIS服务器和Apache是最常用的Web服务器软件;Java服务器、.NET服务器、PHP服务器是最常用的应用程序服务器软件。

               (3)、Web服务器:Web服务器实际上是一种连接在Internet上的计算机软件。它负责Web浏览器提交的文本请求。

           ♦ Web应用程序:

              最简单的Web应用程序其实就是一些HTML文件和其它的一些资源文件组成的集合。

              Web站点则可以包含多个Web应用程序。它们位于Internet上的一个服务器中,一个Web站点其实就对应着一个网络服务器(Web服务器).

    三. B/S的优点:

          1. B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。

          2. 由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。

          3. B/S结构主要利用了不断成熟的Web浏览器技术:结合浏览器的多种脚本语言和ActiveX技术,用通用浏览器实现原来需要复杂专用软件才能实现的强大功能,节约了开发成本。

    四. B/S体系结构的特点:    

         1. 由于Web支持底层的TCP/IP协议,使Web网与局域网都可以做到连接,从而彻底解决了异构系统的连接问题。

         2. 由于Web采用了“瘦客户端”,使系统的开放性得到很大的改善,系统对将要访问系统的用户数的限制有所放松。

         3. 系统的相对集中性使得系统的维护和扩展变得更加容易。比如数据库存储空间不够,可再加一个数据库服务器;系统要增加功能,可以新增—个应用服务器来运行新功能。

         4. 界面统一(全部为浏览器方式),操作相对简单。

         5. 业务规则和数据捕获的程序容易分发。

    五. 与传统C/S的联系与区别:

    • C/S(Client/Server),即客户端/服务端

           我们把响应服务的计算机称为服务器,接受请求服务的计算机成为客户机【也叫工作站(workstations)】。

           C/S架构软件(即客户机/服务器模式)分为客户机和服务器两层:第一层是在客户机系统上结合了表示与业务逻辑,第二层是通过网络结合了数据库服务器。

           简单的说就是第一层是用户表示层,第二层是数据库层。需要程序员自己写客户端。

                                                                 

                            

     

    • B/S(Brower/Server),即浏览器/服务器

             B/S 与C/S 的两层架构不同,它采取三层架构。只要有浏览器就可以打开,具体工作原理如下。

                                                      

                      

    一张图看懂C/S与B/S的区别:

                                        

     

    补充:

           1. HTTP处理流程是怎么样的?

               建立连接-->客户端浏览器发送请求信息--->web服务器解析请求并找到相应的资源将文件以及其它信息组成HTTP响应返回客户端-->关闭连接。

            2. 集中式服务器:

                服务器,是担负服务任务的机器。这些服务任务由一般专门的软件来完成。

                一般地,把具有某种服务功能的服务器软件及其所在的机器,都统称为XX服务器(XX表示某种具体服务)。

                这些软件可以集中于一台机器中(如图5),这样的机器可以称为集中式服务器;也可以单独存在于某台机器中,这样的机器可以称为独立式服务器,多个独立式服务器可组成服务器群或矩阵。

                   

           由交换机可以将多个服务器连接起来称为一个服务器群,以下是常见的服务器软件:

                          

    六.B/S架构的几种形式

    第一种:客户端-服务器-数据库

    这个应该是我们平时比较常用的一种模式:

    1、客户端向服务器发起Http请求

    2、服务器中的web服务层能够处理Http请求

    3、服务器中的应用层部分调用业务逻辑,调用业务逻辑上的方法

    4、如果有必要,服务器会和数据库进行数据交换. 然后将模版+数据渲染成最终的Html, 返送给客户端

    第二种:客户端-web服务器-应用服务器-数据库

     类似于第一种方法,只是将web服务和应用服务解耦

    1 客户端向web服务器发起Http请求

    2 web服务能够处理Http请求,并且调用应用服务器暴露在外的RESTFUL接口

    3 应用服务器的RESTFUL接口被调用,会执行对应的暴露方法.如果有必要和数据库进行数据交互,应用服务器会和数据库进行交互后,将json数据返回给web服务器

    4 web服务器将模版+数据组合渲染成html返回给客户端

    第三种方法:客户端-负载均衡器(Nginx)-中间服务器(Node)-应用服务器-数据库

    这种模式一般用在有大量的用户,高并发的应用中。

    1、整正暴露在外的不是真正web服务器的地址,而是负载均衡器器的地址

    2、客户向负载均衡器发起Http请求

    3、负载均衡器能够将客户端的Http请求均匀的转发给Node服务器集群

    4、Node服务器接收到Http请求之后,能够对其进行解析,并且能够调用应用服务器暴露在外的RESTFUL接口

    5、应用服务器的RESTFUL接口被调用,会执行对应的暴露方法.如果有必要和数据库进行数据交互,应用服务器会和数据库进行交互后,将json数据返回给Node

    6、Node层将模版+数据组合渲染成html返回反向代理服务器

    7、反向代理服务器将对应html返回给客户端

    Nginx的优点有:

    1、它能够承受、高并发的大量的请求,然后将这些请求均匀的转发给内部的服务器,分摊压力.

    2、反向代理能够解决跨域引起的问题,因为Nginx,Node,应用服务器,数据库都处于内网段中。

    3、Nginx非常擅长处理静态资源(img,css,js,video),所以也经常作为静态资源服务器,也就是我们平时所说的CDN

    比如:前一个用户访问index.html, 经过Nginx-Node-应用服务器-数据库链路之后,Nginx会把index.html返回给用户,并且会把index.html缓存在Nginx上,下一个用户再想请求index.html的时候,请求Nginx服务器,Nginx发现有index.html的缓存,于是就不用去请求Node层了,会直接将缓存的页面(如果没过期的话)返回给用户。
     


    面试相关:

    2021年JAVA 精心整理的常见面试题-附详细答案【持续更新~~】

    https://mikejun.blog.csdn.net/article/details/114488339

    精心整理的计算机各类别的电子书籍【超全】

    https://mikejun.blog.csdn.net/article/details/115442555

    2021年- 精心整理的 SpringMVC 常见面试题-【附详细答案】

    https://mikejun.blog.csdn.net/article/details/114992529

    2021年- 精心整理的 SpringBoot 常见面试题-【附详细答案】

    https://mikejun.blog.csdn.net/article/details/115682106

    2021年SpringCloud 精选大厂面试题-【附详细答案】

    https://mikejun.blog.csdn.net/article/details/116103358

    2021年JAVA 面试题之--数据结构篇【附详细答案】

    https://mikejun.blog.csdn.net/article/details/114647742

    Java 多线程、多进程、并发编程面试总结 (2021年)

    https://mikejun.blog.csdn.net/article/details/115830507
       

    三天刷完《剑指OFFER编程题》--Java版本实现(第一天)

    https://mikejun.blog.csdn.net/article/details/106996017

    三天刷完《剑指OFFER编程题》--Java版本实现(第二天)

    https://mikejun.blog.csdn.net/article/details/108098502

    三天刷完《剑指OFFER编程题》--Java版本实现(第三天)

    https://mikejun.blog.csdn.net/article/details/108253489

    项目推荐:

    2000多G的计算机各行业电子资源分享(持续更新)

    2020年微信小程序全栈项目之喵喵交友【附课件和源码】

    Spring Boot开发小而美的个人博客【附课件和源码】

    Java微服务实战296集大型视频-谷粒商城【附代码和课件】

    Java开发微服务畅购商城实战【全357集大项目】-附代码和课件

    最全最详细数据结构与算法视频-【附课件和源码】

    在这里插入图片描述


     

    展开全文
  • 一、过保护  过保护是指被保护线路电压超过预定的最大值时,使电源断开或使受控设备电压降低的一种保护方式。  过保护应用  常见的过保护元器件或设备有防雷器、压敏电阻、避雷器等。在通信电源领域,...

    一、过压保护

      过压保护是指被保护线路电压超过预定的最大值时,使电源断开或使受控设备电压降低的一种保护方式。

      过压保护应用

      常见的过压保护元器件或设备有防雷器、压敏电阻、避雷器等。在通信电源领域,为防止雷电瞬间高电压对其造成巨大损害,通常会配置压敏电阻对其进行过压防雷保护。当雷电产生的瞬间高电压施加在压敏电阻两端时,压敏电阻阻值变得无穷小,使得压敏电阻导通并将雷电产生的大电流引入大地,从而保护电源设备不受雷电损伤。在电源系统侧通常会使用防雷器对交流、直流进行过压保护。

      过压保护电路图及工作原理

      最简单的过压保护措施是由一只继电器组成,如图6-25所示。一旦储能电容器上电压超过规定值时,继电器J吸合,进而切断供电电源。

    过压保护与过流保护有什么区别解析

      这种电路虽然简单,但消耗的功率较大,并且灵敏度低。由于接在高压回路中,对继电器也有特殊的要求。激光器电激中常用的一种过压保护电路,如图6-26所示。它也由取样电路、比较器、功放级及执行元件组成。它采用了与储能电容器并联的电阻分压器来获得取样信号。当储能电容器上的电压超过规定值时,电阻R1上的取样电压高于比较器的基准电压UR,最终导致执行元件切断供电电源。取样电阻R1R2的阻值一定要足够大,使其与储能电容器构成时间常数远大于储能电容器的时间常数。否则,储能电容器上电荷的激放相当严重。

    过压保护与过流保护有什么区别解析

      二、过流保护

      很多电子设备都有个额定电流,不允许超过额定电流,不然会烧坏设备。所以有些设备就做了电流保护模块。当电流超过设定电流时候,设备自动断电,以保护设备。如主板cpu的usb接口一般有usb过流保护,保护主板不被烧坏。

      最大电压

      编辑在限定条件下, KT系列高分子PTC热敏电阻动作时,能安全承受的最高电压。即热敏电阻的耐压值。超过此值,热敏电阻有可能被击穿,不能恢复。此值通常被列在规格书中的耐压值一栏里。

      工作电压

      编辑在正常动作状态下,跨过KT系列高分子PTC热敏电阻两端的最大电压。在许多电路中,相当于电路中电源的电压。

     

      过流保护电路原理

      本电路适用于直流供电过流保护,如各种电池供电的场合。 如果负载电流超过预设值,该电子保险将断开直流负载。重置电路时,只需把电源关掉,然后再接通。该电路有两个联接点(A、B标记),可以连接在负载的任意一边。

    过压保护与过流保护有什么区别解析

                                                                    过流保护电路图

      负载电流流过三极管T4、电阻R10和R11。A、B端的电压与负载电流成正比,大多数的电压分配在电阻上。 当电源刚刚接通时,全部电源电压加在保险上。三极管T2由R4的电流导通,其集电极的电流值由下式确定:VD4=VR7+0.6。因为D4上的电压 (VD4)和R7上的电压(VR7)是恒定的,所以T2的集电极电流也是恒定。该三极管提供稳定的基极电流给T3,因而使其导通,接着又提供稳定的基极电 流给T4。保险导电,负载有电流流过。当电源刚接通时,电容器C1提供一段延时,从而避免T1导电和保持T2断开。 保险上的电压(VAB)通 常小于2V,具体值取决于负载电流。当负载电流增大时,该电压升高,并且在二极管D4导通时,达到分流部分T2的基极电流,T2的集电极电流因而受到限 制。由此,保险上的电压进一步增大,直到大约4.5V,齐纳二极管D1击穿,使T1导通,T2便截止,这使得T3和T4也截止,此时保险上的电压增大,并 且产生正反馈,使这些三极管保持截止状态。

      C1的作用是给出一段短时延迟,以便保险可以控制短时过载,如象白炽灯的开关电流,或直流电机的启 动电流。因此,改变C1的值可以改变延迟时间的长短。该电路的电压范围是10~36V的直流电,延迟时间大约0.1秒。对于电路中给出的元件值,负载电流 限制为1A。通过改变元件值,负载电流可以达到10mA~40A。选择合适额定值的元件,电路的工作电压可以达到6~500V。通过利用一个整流电桥(如 下面的电源电路),该保险也可以用于交流电路。电容器C2提供保险端的瞬时电压保护。二极管D2避免当保险上的电压很低时,C1经过负载放电。

       

    过压保护与过流保护有什么区别解析

     

      带自锁的过流保护电路

      1.第一个部分是电阻取样,负载和R1串联,大家都知道。串联的电流相等.R2上的电压随着负载的电流变化而变化,电流大,R2两端电压也高.R3 D1组成运放保护电路。防止过高的电压进入运放导致运放损坏。.C1是防止干扰用的。

      2.第二部分是一个大家相当熟悉的同相放大器。由于前级的电阻取样的信号很小,所以得要用放大电路放大,才能用放大倍数由VR1 R4决定。

      3.第三部分是一个比较器电路,放大器把取样的信号放大,然后经过这级比较,从而去控制后级的动作。是否切断电源或别的操作。比较器是开路输出所以要加上上位电阻。不然无法输出高电平

      过流保护用PTC热敏电阻通过其阻值突变限制整个线路中的消耗来减少残余电流值。可取代传统的保险丝,广泛用于马达、变压器、开关电源、电子线路等的过流 过热保护,传统的保险丝在线路熔断后无法自行恢复, 而过流保护用PTC热敏电阻在故障撤除后即可恢复到预保护状态,当再次出现故障时又可以实现其过流过热保护功能 。

    过压保护与过流保护有什么区别解析

                                                             过流保护电路图

      三、过压保护与过流保护区别

      1、负载如果是阻性负载,当电源有故障,负载上的电压有可能大幅上升,而电流的上升值不一定能超过过流保护值。此种情况宜用过压保护,例如工作在50V,可将电压保护值调至55V,如果电源故障只要电压升至55V时,电源会自动切断电压输出;负载如果是容性负载,由于大容量的电解电容器并联在一起,当电源发生故障时,电流就可能大幅度上升,而电压的升值却不甚明显,这时电源内部的过流保护部件会首先启动,电源会自动切断输出。

      2、过压保护值在面板上有一只电位器,可以人工设定。而过流保护值是不能人工设定的,机内已经定死,一般为额定电流的1.2~1.5倍。过压保护会立即快速启动,过流保护则有一秒左右的延时。

      3、过压、过流保护是针对机内故障的,因此既然发生,电源就不能自动恢复,必须关机后重新开机。

    展开全文
  • 下载的Matlab R2016b软件安装包(文末附有下载地址)目录如下所示: ...Win7系统可以安装好软件之后,用好自带的虚拟光驱加载。 此时可以看到R2016b_win64_dvd1.iso已经被加载到了光盘驱动器了。加载R2016b_wi.

    下载的Matlab R2016b软件安装包(文末附有下载地址)目录如下所示:

    安装过程:

     

    1. 安装主程序R2016b_win64_dvd1.iso和R2016b_win64_dvd2.iso


    由于目前大多数及其都是Win8或10系统,所以选中R2016b_win64_dvd1.iso,右键→Windows资源管理器打开。Win7系统可以安装好压软件之后,用好压自带的虚拟光驱加载。

    此时可以看到R2016b_win64_dvd1.iso已经被加载到了光盘驱动器了。加载R2016b_win64_dvd1.iso后,在资源管理器中双击setup.exe开始安装。选择使【使用文件安装密钥】,点击【下一步】。

    接受,点击【下一步】。

    打开软件安装包中的readme.txt,复制单独安装中对应的序列号,粘贴,点击【下一步】。

    选择安装路径,可以默认,也可自定义,在自定义时直接改变盘符。点击【下一步】。

    默认安装所有产品,直接点击【下一步】。

    点击【安装】 开始!

    安装过程中,等待吧,不要离开,安装过程中需要加载R2016b_win64_dvd2.iso。

    在弹出如下窗口时,千万不要先点击【确定】。

    在加载的驱动器上右键→弹出,然后再在R2016b_win64_dvd2.iso上右键→Windows资源管理器打开,然后点击上图中的【确定】。

    加载R2016b_win64_dvd2.iso。

     安装继续进行,等待中。

     点击【下一步】。

    点击【完成】,完成主程序的安装。

     

    2. 打补丁


    将安装包中的bin和toolbox文件夹复制。

    粘贴到安装路径对应的位置,替换目标中的文件。

     

    3. 添加许可文件


    运行matlab程序,选择不使用Internet的情况,点击下一步。

    选择输入许可证文件,点击浏览,定位到软件安装包下的license_standalone.lic文件,点击下一步。

     到此为止,软件整个过程完成安装。

    创建快捷方式。在bin下面找到matlab.exe,右键→发动到桌面快捷方式。

    打开软件后的界面。

    软件百度网盘链接:https://pan.baidu.com/s/1HxmMR7vo5uHL37zNegQtHA
    提取码:avuk

    展开全文
  • Jmeter接口测试+压力测试

    万次阅读 多人点赞 2017-05-14 14:01:50
    服务器名称还是服务器IP,一般都是压测指定的服务器 压测设置 线程数:并发数量,能跑多少量。具体说是一次存在多少用户同时访问 Rame-Up Period(in seconds):表示JMeter每隔多少秒发动并发。理解成...

      jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以。jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在linux/windows/macos上都可以使用。
      jmeter可以做接口测试和压力测试。其中接口测试的简单操作包括做http脚本(发get/post请求、加cookie、加header、加权限认证、上传文件)、做webservice脚本、参数化、断言、关联(正则表达式提取器和处理json-json path extractor)和jmeter操作数据库等等。

    接口测试

    Jmeter-http接口脚本

    一般分五个步骤:(1)添加线程组 (2)添加http请求 (3)在http请求中写入接入url、路径、请求方式和参数 (4)添加查看结果树 (5)调用接口、查看返回值

    • jmeter 发get请求

      这里写图片描述

    这里写图片描述

    • jmeter 发post请求

      这里写图片描述

    • jmeter 添加cookie

      需要在线程组里添加配置元件—HTTP Cookie 管理器

    这里写图片描述

    这里写图片描述

    • jmeter 添加header
      需要在线程组里面添加配置元件—HTTP信息头管理器
      这里写图片描述

    这里写图片描述

    • jmeter 上传文件

      这里写图片描述

    • jmeter 参数化
      入参经常变化的话,则可以设置成一个变量,方便统一修改管理;如果入参要求随机或可多种选择,则通过函数生成器或者读取文件形成一个变量。所以参数化有三种方式:用户定义的变量、函数生成器、读取文件。

      (1)用户定义的变量
        需要添加配置元件-用户定义的变量。

    这里写图片描述

    这里写图片描述

    (2)函数生成器
      需要用到函数助手功能,可以调用函数生成一些有规则的数据。常用的几个函数有_uuid、_random、_time。_uuid会生成一个随机唯一的id,比如在避免java请求重发造成未处理数据太多的情况,接口请求可加一个唯一的请求id唯一的响应id进行一一对应;随机数_random,可以在你指定的一个范围里取随机值;取当前时间_time,一些时间类的入参可以使用,如{__time(,)} 是生成精确到毫秒的时间戳、{__time(/1000,)}是生成精确到秒的时间戳、${__time(yyyy-MM-dd HH:mm:ss,)} 是生成精确到秒的当前时间。

    这里写图片描述

    (3)从文件读取
      需要在线程组里面添加配置元件-CSV Data Set Config
      其中Recycle on EOF:设置True后,允许循环取值
    这里写图片描述
      具体的例子如下所示:

    这里写图片描述

    这里写图片描述

    这里写图片描述

    • jmeter 断言
        jmeter断言用来检测响应返回的结果和我们预期的是否一致。若针对整个线程组的话,则在线程组下添加断言-响应断言;若只是针对某个请求的话,则在请求下添加断言-响应断言。

    这里写图片描述

    这里写图片描述

    • jmeter关联

        接口请求之间存在参数调用,为了保存这个参数,建立jmeter关联。比如登陆接口和购买商品接口,购买商品接口就需要登陆接口返回的token等登陆信息,jmeter关联就可以保存这个token信息,方便购买商品接口使用。
        jmeter关联可以通过二种方式来完成,获取到返回结果中指定的值。它们分别是正则表达式提取器、 json path extractor。
      (1)正则表达式提取器
      若想获取的返回值未匹配到,可以把正则表达式两边匹配的数据扩大点。

      这里写图片描述

      a. 关于正则表达式

      ():括起来的部分就是要提取的。
      .:匹配除换行外的任何字符串。
      +:代表+号前面的字符必须至少出现一次(一次或多次)。
      ?:代表?前面的字符最多可以出现一次,在找到第一个匹配项后停止(0次或1次)。
      :代表号前面的字符可以不出现,也可以出现一次或者多次(0次、1次或者多次)
      (.*):贪婪模式,匹配尽可能多的字符
      (.*?)或(.+?):匹配尽可能少的字符,一旦匹配到第一个就不往下走了。

      b. 关于模板

      若想提取多个值的话,比如是a和b这两个值,则可以写成:$1$$2$。无论要提取多少个值,引用名称就是一个的,比如名称为id,${id_go}:获取整个字符串ab,${id_g1}:获取的是a,${id_g2}:获取的是b。
      下面有一个具体的实例,如下图所示:

    这里写图片描述

    这里写图片描述

    这里写图片描述

    (2)json path extractor
      jmeter通过安装json path extractor插件来处理json串,提取json串中的字段值。插件的下载地址:https://jmeter-plugins.org/?search=jpgc-json,下载完成,解压后,直接把lib文件夹放到jmeter相应目录下面。特别说明:jmeter 2.xx左右的版本尝试过无法使用该插件,在jmeter 3.xx左右的版本装完插件后能正常使用。
      需要在请求下创建后置处理器-jp@gc-JSON Path Extractor,具体的实例如下所示:

    这里写图片描述

    这里写图片描述

    这里写图片描述

      关于json path相关插件的方法和使用,推荐可以看这篇博客: http://www.jianshu.com/p/56a607fc0d8f

    • jmeter 操作数据库
        操作数据库基本有四个步骤:(1)导入mysql的jdbc的jar包 (2)创建数据库的连接配置,线程组里添加配置元件-JDBC Connection Configuration (3)线程组里添加jdbc request,写sql语句 (4)添加察看结果树,点击启动按钮,就能看到执行的SQL。具体的实例如下截图所示:

      这里写图片描述

    这里写图片描述

    这里写图片描述

    这里写图片描述

      特别说明:jmeter还可以操作oracle、postgreSQL、msSQL、mongodb等等数据库,同时不同的数据库,JDBC Connection Configuration填写的Database url格式和JDBC Driver驱动名称也不相同。jmeter数据库驱动列表如下表所示:

    数据库 驱动 数据库url
    mysql com.mysql.jdbc.Driver jdbc:mysql://host:port/{dbname}?allowMultiQueries=true
    oracle org.postgresql.Driver dbc:postgresql:{dbname}

    Jmeter-webservice接口脚本

      基本分为五个步骤:(1)先需要通过soapui工具获取到webservice接口的请求地址、请求报文和请求soapaction。(2)jmeter新建一个线程组 (3)线程组下建立SOAP/XML-RPC Request,写入请求url、请求报文、请求soapaction。(3)启动jmeter,调用接口,通过察看结果树查看返回值。
      soapui获取信息的实例如下图所示:

    这里写图片描述

      soapui提交完后,点击raw,可看到soapation,有些接口若没返回soapation,则jmeter里也就不用填。

    这里写图片描述
       jmeter-webservice脚本实例如下图所示:

    这里写图片描述

    压力测试

      压力测试分两种场景:一种是单场景,压一个接口的;第二种是混合场景,多个有关联的接口。压测时间,一般场景都运行10-15分钟。如果是疲劳测试,可以压一天或一周,根据实际情况来定。

    压测任务需求的确认

    压测前要明确压测功能和压测指标,一般需要确定的几个问题:

    1. 固定接口参数进行压测还是进行接口参数随机化压测?
    2. 要求支持多少并发数?
    3. TPS(每秒钟处理事务数)目标多少?响应时间要达到多少?
    4. 压服务器名称还是压服务器IP,一般都是压测指定的服务器

    压测设置

    1. 线程数:并发数量,能跑多少量。具体说是一次存在多少用户同时访问
    2. Rame-Up Period(in seconds):表示JMeter每隔多少秒发动并发。理解成准备时长:设置虚拟用户数需要多长时间全部启动。如果线程数是20,准备时长为10,那么需要10秒钟启动20个数量,也就是每秒钟启动2个线程。
    3. 循环次数:这个设置不会改变并发数,可以延长并发时间。总请求数=线程数*循环次数
    4. 调度器:设置压测的启动时间、结束时间、持续时间和启动延迟时间。

    压测结果查看

      运行完后,聚合报告会显示压测的结果。主要观察Samples、Average、error、Throughput。

    1. Samples:表示一共发出的请求数
    2. Average:平均响应时间,默认情况下是单个Request的平均响应时间(ms)
    3. Error%:测试出现的错误请求数量百分比。若出现错误就要看服务端的日志,配合开发查找定位原因
    4. Throughput:简称tps,吞吐量,默认情况下表示每秒处理的请求数,也就是指服务器处理能力,tps越高说明服务器处理能力越好。

    压测结果的分析

    1. 有错误率同开发确认,确定是否允许错误的发生或者错误率允许在多大的范围内;

    2. Throughput吞吐量每秒请求的数大于并发数,则可以慢慢的往上面增加;若在压测的机器性能很好的情况下,出现吞吐量小于并发数,说明并发数不能再增加了,可以慢慢的往下减,找到最佳的并发数;

    3. 压测结束,·登陆相应的web服务器查看CPU等性能指标,进行数据的分析;

    4. 最大的tps:不断的增加并发数,加到tps达到一定值开始出现下降,那么那个值就是最大的tps。

    5. 最大的并发数:最大的并发数和最大的tps是不同的概率,一般不断增加并发数,达到一个值后,服务器出现请求超时,则可认为该值为最大的并发数。
    6. 压测过程出现性能瓶颈,若压力机任务管理器查看到的cpu、网络和cpu都正常,未达到90%以上,则可以说明服务器有问题,压力机没有问题。
    7. 影响性能考虑点包括:数据库、应用程序、中间件(tomact、Nginx)、网络和操作系统等方面。

    jmeter在linux下进行压力测试

    1. jmeter 在linux安装
        简单说下,就是要先安装jdk,同时再配置环境变量,最后再上传jmeter压缩的安装包,在linux下解压完安装包就可以使用了。推荐博客:http://blog.csdn.net/zhemeteor/article/details/51315874

    2. jmeter在linux运行
      进入jmeter下的bin目录下运行脚本,未配置jmeter环境变量的条件下,运行的命令:

    ./jmeter -n -t a.jmx -l res.jtl

    其中a.jmx是准备好的jmeter脚本,res.jtl是测试结果文件,测试结果文件可以导入到jmeter察看结果树下查看。

    jmeter添加负载机

    展开全文
  • 如何设计过保护电路?

    千次阅读 多人点赞 2020-10-24 11:56:18
    保护电路的作用是:若开关电源内部稳压环路出现故障或者由于用户操作不当引起输出电压超过设计阈值时,为保护后级用电设备防止损坏,将输出电压限定在安全值范围内。 本篇博文将从省钱省心的TVS管和可靠高效...
  • 深入理解B/S与C/S架构

    万次阅读 多人点赞 2018-07-24 16:44:19
    深入理解B/S与C/S架构 阅读目录: 什么是C/S架构 什么是B/S架构 B/S架构的几种形式 发展前景 一、什么是C/S架构 C/S架构是第一种比较早的软件架构,主要用于局域网内。也叫 客户机/服务器...
  • 电路原理解析

    万次阅读 多人点赞 2018-07-19 15:35:33
    在变压和整流过程常见有倍电路: 一则为通过变压器升压,通过匝数比实现; 二则为如下所示倍电路,以快恢复二极管和电容组合,以电容为蓄能器件。 1、直流半波整流倍电路 ( 1)负半周时,即A为负、B为...
  • 数据分析运营---A/B测试20个必须知道的问题

    万次阅读 多人点赞 2017-04-29 23:49:08
    在网站和移动产品设计和开发、以及互联网产品运营,我们经常...虽然传统解决办法多数情况下也是有效的,但A/B 测试(A/B Testing)可能是解决这类问题的一个更好的方法。在软件开发,产品需求通过多种技术手段来
  • 2019年数学建模A题 高压油管的压力控制

    万次阅读 多人点赞 2019-09-13 19:44:06
    燃油进入和喷出高压油管是许多燃油发动机工作的基础,图1给出了某高压燃油系统的工作原理,燃油经过高压油泵从A处进入高压油管,再由喷口B喷出。燃油进入和喷出的间歇性工作过程会导致高压油管内压力的变化,使得所...
  • 整流电路详解

    千次阅读 2019-06-14 08:44:50
    最近在做一个升压模块,用到了倍整流电路,这是我从电子发烧友整理的有关资料,需要的可以看下,很详尽了, http://www.elecfans.com/dianlutu/dianyuandianlu/20180301641421_5.html 倍整流电路图大全(九款倍...
  • 猴子原创,欢迎转载。... ... ...注:自己以前也写过cocos2d-x如何优化内存的使用,以及内存不足的情况下...今天在微博看到有朋友介绍了下内存,挺详细的。不知道是谁写的,我记录下。 一,IOS与图片内存 在IOS上
  • matlab2016 b 安装详细教程正版中文密钥

    万次阅读 多人点赞 2019-03-11 21:24:44
    将 下 载 的 “Matlab 2016a Win64Crack.rar” 解 , 解 后 文 件 夹 的 “license_standalone.lic”就是许可文件,如图所示 13. 之后打开 MATLAB 的安装目录 D:\ProgramData\matlab2016b 点击 ...
  • 关于TO B产品的思考

    千次阅读 2019-09-27 15:54:52
    最近拿到了小米的offer,整体方向是偏台方向,说实话对泰这边不是特别了解,但是大体上是走的to B。在接触to B之前一直觉得自己喜欢而ToC 而且很适合做那方面的产品,但是人总是有所舍有所得,在兼顾自己喜欢的...
  • 压力管道级别如何划分

    千次阅读 2010-06-22 15:31:00
    低压管道 公称压力不超过2.5MPa 中压管道 公称压力4-6.4MPa 高压管道 公称压力10-100MPa 超高压管道 公称压力超过100MPa <br />压力管道级别的划分============== 6.1 长输管道为...
  • 高精度计算(三)

    千次阅读 多人点赞 2016-08-03 11:47:11
    位高精
  • 1.官网https://www.raspberrypi.org/downloads/raspbian/下载压缩包并解出img镜像并解压 uzip 2018-10-09-raspbian-stretch.zip 我这里选择下载完整版的,有1.3个多G大小 2.格式化内存卡 我选择在windows上使用...
  • //牌只有1到9,手里拿着已经排好序的牌a,对方出牌b,用程序判断手牌是否能够过对方出牌。 //[1]一张 如4 则5...9可过 //[2]两张 如44 则55,66,77,...,99可过 //[3]三张 如444 规则如[2] //[4]...
  • ADC 外电阻分种种

    万次阅读 2014-05-30 00:46:56
    說明當所要量測之輸入訊號電範圍不在adc之接受範圍時該如何處理? 假設使用的ADC量測範圍是0~3V 如果超出範圍(EX:0~5V): 1.對於直流訊號來說分電路是最簡單的降方式,但必須注意輸入阻抗與輸...
  • Nginx的优化和压力测试

    万次阅读 多人点赞 2018-04-03 10:33:23
     如果使用 A 和 B 两台虚拟机测试,用 B 上的 ab 测试 A 的 nginx ,即 A 为服务端,B 为客户端。此时需要在 B 上配置下面的参数,并且两个参数至少要等于 A 配置的值。 ulimit -n 20000 echo 50000 > /...
  • 原材料 FSR402 薄膜压力传感器 公头杜邦线 ...Type A转B, USB 2.0线一根(打印机线), 作为Arduino Uno的电源 图解 电路图 照片: 面包板接线 照片: Arduino Uno 接线 串口输出 代码 int fsrPin = 0; /...
  • 简单介绍下C/S与B/S架构的异同

    千次阅读 2016-03-04 19:11:52
    做过项目人都知道,现在软件开发的整体架构主要分为B/S架构与C/S架构,选择哪种架构不仅对于软件开发公司很重要,也对应用企业很重要。现在就来分析下两种架构的异同点: 一、C/S 架构 架构图: 1、 概念 C/S ...
  • 「面试」拿到B站的意向书

    万次阅读 多人点赞 2020-09-26 16:28:01
    此次B站服务端开发面试之旅可谓惊险,不过通过对大部分面试题套路的掌握,不出意外还是拿下了,下面我们来看看这些骚题是不是常见的不能再常见的了。这些面试题看了就能面上?当然不是,只是通过这些题让自己知道所...
  • B/S测试与C/S测试区别

    千次阅读 2015-10-01 17:21:24
    1. C/S 结构与 B/S 结构 C/S client/server即客户端/服务器 分为客户机与服务器两层,客户机不是没有任何运算能力的输入输出设备,要求有一定的数据处理能力和...B/S Browser/server即浏览器/服务器 在这种结构,应用
  • BCI Competition 2008 - Graz data set B(中文翻译)二分类的数据
  • A、正确 B、错误 正确答案:B 第2题、【判断题】220V的交流电压的最大值为380V。 A、正确 B、错误 正确答案:B 第3题、【判断题】30Hz~40Hz的电流危险性最大。 A、正确 B、错误 正确答案:B 第4题、...
  • 燃油进入和喷出高压油管是许多燃油发动机工作的基础,图1给出了某高压燃油系统的工作原理,燃油经过高压油泵从A处进入高压油管,再由喷口B喷出。燃油进入和喷出的间歇性工作过程会导致高压油管内压力的变化,使得所...
  • 5.3倍整流电路

    千次阅读 2012-12-11 10:07:43
    在一些需用高电压、小电流的地方,常常使用倍整流电路。倍整流,可以把较低的交流电压...电路由变压器B、两个整流 二极管D1、D2及两个电容器C1、C2组成。其工作原理如下:  e2正半周(上正下负)时,二极管D
  • 树莓派3B--搭建dlib

    千次阅读 2018-01-04 09:21:57
    1、树莓派3b; 2、ubuntu mate系统 linux内核是4.4.38;   功能需求: 1、调用dlib实现人脸识别。     可行性研究: 1、dlib安装的库有多大? 分析:windows下dlib19.7版本,debug版本65M、release版本...
  • 一个程序在运行过程,一个函数会调用另一个函数(比如递归),那么函数在进入的时候都会往栈里点什么东西,函数退出时会弹出点什么东西,内层的函数是如何返回的,返回给外层函数的谁,返回到哪里,内层函数是...
  • 2019年高压电工作业安全生产模拟考试题库及答案 题库来源:安全生产模拟考试一点通 第1题、【判断题】 三相交流对称电路,如采用三角形接线时,线...第3题、【判断题】 磁场某点的磁感应强度B与磁导率μ的比值,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 313,792
精华内容 125,516
关键字:

中压b