node.js调试_webstorm调试node_node.js和js的区别

背景

前些天刷抖音,看到网传的Java继父,求人攻击压测他的网站,这不得摩拳擦掌。

所以今天来聊聊如何对自己的项目、接口进行压力测试。

压力测试的目的

首先, 绝对不是为了压测、攻击别人的网站为乐。

1、探索线上系统流量承载的极限;

2、保障咱们这线上系统具备一定抗压能力。

工具

,中文译为自动炮, 是一款基于的压力测试工具,支持命令行和写代码来进行测试。因为我是前端所有选择了这个,其他诸如 ab、均可。

压力测试

01

安装

全局安装:

npm i autocannon -g

(左右滑动查看完整代码)

02

命令行使用

执行:

autocannon -c 100 -d 5 -p 1 https://appvxnsma4r5053.pc.xiaoe-tech.com/

(左右滑动查看完整代码)

命令解释:用100个连接、持续5秒去访问

执行示例截图:

参数释义:

写代码压测

命令行执行简单的压力测试还好,复杂一点,还是建议写脚本。

例如:

对后端接口进行压力测试

我举例一个场景, 比如你想对某新增接口的短时间内大量新增测试,就可以来试试。

创建一个js文件 例如:

touch app.js

(左右滑动查看完整代码)

从调试工具复制fetch:

书写如下:

将上一步复制出来的信息node.js调试node.js调试,悉数填在下面。

const autocannon = require('autocannon')autocannon({    url: '你的接口',    "headers": {        "accept": "application/json, text/plain, */*",        "accept-language": "zh-CN,zh;q=0.9",        "authorization": "",        "cookie": "acw_tc=0bca324216820466206848044ebf9191e5a0e4b89a4e9bc8b18e333d13f537",        "Referrer-Policy": "strict-origin-when-cross-origin"    },    "body": "你的参数",    "method": "POST", // 你接口的methods get / post    connections: 10, // 连接数    pipelining: 1, // 流水线数量    duration: 10 // 持续时间}, console.log)

(左右滑动查看完整代码)

执行测试:

node app.js

(左右滑动查看完整代码)

执行后发现压力测试执行了三千多次,创建了三千多个任务, 后端接口直接响应变成了30秒。

如此就找到了一个问题:手动创建这三千个创到什么时候,还得借助工具。

测试时,没有等工具也能做:

webstorm调试node_node.js和js的区别_node.js调试

如何发现系统突破口

前端静态页面没啥可看的,找能拉高瓶颈的点,必须大量计算的拉高cpu和榨干数据库磁盘的IO。

建议打开项目,看后端接口, 最好是增删改的, 找那种响应相对比较慢的, 这种应该逻辑比较复杂, 去测试它。

不出意外,同样并发,压测这个,cpu肯定飙得更高一些, 这样狠狠地测试就能发现系统一些问题。

如何压测时查看可用情况?

众所周知,如果压测的并发数比较高,你本地的带宽基本被榨干,此时本地你访问项目,可用情况是不准确的!

所以最好有两台电脑, 或者有一台服务器, 一台执行测试自己的项目,另外一台看看能否正常访问,是不是崩了。没崩说还没到咱们系统的极限,可以尝试加大压力。

压测没给到压力?

咱们是流量压测,属于DDOS。

1、自身机器配置和网络带宽也是瓶颈, 倘若你本地带宽较小、机器配置也比较拉, 比如你设置, 你的机器资源有限,cpu都100%了, 也根本一秒钟发不出这么多, 那必然不行,只能加机器、加带宽。

2、 目标有昂贵的高仿服务器进行流量清洗、异常流量拦截, 你没有直接打到源站。那你就找找源站ip, 直接压力给到源站。

最后

压力测试可以模拟大量用户访问, 来测试我们应用的承载能力, 可以帮助我们提前发现问题和瓶颈,早早制定应对措施,但大家不要对别的人网站随意压测呦。

End

node.js调试_node.js和js的区别_webstorm调试node

链接:

本文为经授权转载,转载文章所包含的文字来源于作者。如因内容或版权等问题,请联系进行删除

往期回顾


限时特惠:
本站持续每日更新海量各大内部创业课程,一年会员仅需要98元,全站资源免费下载
点击查看详情

站长微信:Jiucxh

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注