linux离线安装jenkins及使用教程

本教程采用jenkins.war的方式离线安装部署,在线下载的方式会遇到诸多问题,不宜采用

基本环境:

  1.jdk环境,Jenkins是java语言开发的,因需要jdk环境。

  2.git/svn客户端,因一般代码是放在git/svn服务器上的,我们需要拉取代码。

  3.maven客户端,因一般java程序是由maven工程,需要maven打包,当然也有其他打包方式,如:gradle

一、下载地址

地址:Jenkins download and deployment

下载最新的长期支持版

由于jenkins使用java开发的,所以需要安装的linux服务器装有jdk环境,并且jdk版本支持你所安装的jenkins版本

点击 Hardware and Software requirements,查看下载前的软硬件要求

点击 Java Requirements

根据所下载的长期支持的jenkin版本区间 ,判定支持的jdk版本

因为笔者下载的的是 2.440.2 版本,结合上图判定2.440.2在2.426.1之后,需要的linux服务器安装jdk版本为jdk 11、jdk 17或者jdk 21,三者任意一个都可以,所以最终我选择了jdk 21安装到linux服务器中

当然可能你所在的linux服务器已经安装了jdk 8 或者jdk 11,并且由于其他应用的原因不能再升级jdk,那只需要找到对应jdk支持的jenkins版本进行下载即可

从上图看出,如果linux服务器安装的 jdk 8 ,下载 2.346.1、2.164.1任意一个都可以

如果安装的是 jdk 17,下载2.346.1、2.361.1、2.426.1任意一个

安装的是jdk 11 则以上四个长期版本都支持。

对于历史版本的下载,点击 Past Releases 链接

找到对应的版本下载即可 

 二、上传jenkins.war包

笔者是安装在 /opt下,创建 jenkins文件夹,使用最高权限root用户登录linux服务器

cd /opt

sudo mkdir jenkins
ll

依次输入以上三条命令 

 

进入新创建的jenkins文件夹 

cd  jenkins 

笔者使用的是FinalShell工具上传jenkin.war,一款国产免费的linux服务器 连接工具,功能强大,不过有安全性问题不推荐生产环境使用,推荐使用Xshell和Xftp组合工具

进入jenkins文件夹后可以看到上传的jenkins.war包

三、启动jenkins

先约定jenkins的启动端口为9007,实际自行更改,保证端口不冲突即可 

查看防火墙状态

systemctl status firewalld

防火墙开启状态,则开通 9007 端口 访问权限,并重载防火墙

-- 开通 9007 端口 访问权限

sudo firewall-cmd --permanent --add-port=9007/tcp

-- 重载防火墙

sudo firewall-cmd --reload

cd /opt/jenkins 键入以下命令启动

nohup java -jar jenkins.war --httpPort=9007 | tee jenkins.log 2>&1 & 

命令解释如下:

1. nohup: 这是一个Unix/Linux命令,用于让程序在后台运行,即使用户注销也不会停止运行(No Hang Up)。使用 nohup 可以确保即使SSH会话关闭,Jenkins服务仍然持续运行


2. java -jar jenkins.war --httpPort=9007: 这是启动Jenkins服务的命令,其中 -jar 参数表示要执行包含在WAR文件中的主类(在这种情况下是Jenkins应用),--httpPort=9007 是指明Jenkins服务器监听的HTTP端口号为9007


3. | tee jenkins.log: | 是管道操作符,它将前一个命令的标准输出(stdout)传递给后续命令。tee 命令则接收这些输出,并同时完成两个任务:
将输出内容“复制”一份写入到 jenkins.log 文件中,相当于实时记录了Jenkins启动过程和运行时的日志信息。
继续将接收到的数据传递到下一个管道或者默认的标准输出(此处由于后面没有其他命令,就是当前终端),所以在终端上也能看到相同的日志输出

4. 2>&1: 这个符号组合将标准错误流(stderr)重定向到标准输出流(stdout)。这意味着不论是正常的程序输出还是错误信息,都将统一作为标准输出处理,所以不论是正常日志还是错误日志,都会经过管道并被tee命令捕捉

5. &: 最后的&符号用于将整个命令放入后台运行,使得命令执行后,控制台立刻返回到可输入状态,而无需等待该命令执行完毕

出现以上信息说明 jenkins启动成功 ,即使终端关闭也可以

初始用户名和密码 为 admin    103ed60c535f4c8daec0d81d66b9ea9d

初始admin用户密码如果忘记,则去  /root/.jenkins/secrets/initialAdminPassword 中寻找

使用  tail -f  /root/.jenkins/secrets/initialAdminPassword  打开可以看到存储的初始jenkins密码

 四、设置开机自启动

通过命令 nohup java -jar jenkins.war --httpPort=9007 | tee jenkins.log 2>&1 &  可以后台永久启动jenkins服务,但服务器一旦关闭重启,还是需要进入jenkins.war所在文件夹目录重新执行启动命令

4.1 创建并编辑jenkins.sh 脚本

首先  cd /opt/jenkins,创建jenkins.sh 脚本文件,随便放哪里都可以,但一般和jenkins.war处在同一个文件目录下

 vim  jenkins.sh  

按 i 键 输入以下内容 ,红色部分为需要根据自己对应环境路径自行修改

jenkins的主目录默认为 /root/.jenkins,你也可以在如下命令中加入红色部分改变jenkins的默认主目录,一般情况下不需要改,用默认的就可以

nohup $JAVA_HOME/bin/java -DJENKINS_HOME=/usr/local/jenkins -jar /opt/jenkins/jenkins.war>/opt/jenkins/jenkins.log --httpPort=9007  2>&1 &

#!/bin/bash
#主要目的用于开机启动服务,不然 启动jenkins.war包没有java -jar的>权限
JAVA_HOME=/usr/local/jdk/jdk-21.0.2


pid=`ps -ef | grep jenkins.war | grep -v 'grep'| awk '{print $2}'| wc -l`
  if [ "$1" = "start" ];then
  if [ $pid -gt 0 ];then
  echo 'jenkins is running...'
else
  #java启动服务 配置java安装根路径,和启动war包存的根路径
  nohup $JAVA_HOME/bin/java -jar /opt/jenkins/jenkins.war>/opt/jenkins/jenkins.log --httpPort=9007  2>&1 &
  fi
  elif [ "$1" = "stop" ];then
  exec ps -ef | grep jenkins | grep -v grep | awk '{print $2}'| xargs kill -9
  echo 'jenkins is stop..'
else
  echo "Please input like this:"./jenkins.sh start" or "./jenkins stop""
  fi

按下 esc键,输入 :wq 保存退出,键入以下命令赋予脚本可执行权限

chmod +x /opt/jenkins/jenkins.sh

4.2 检测jenkins.sh 脚本

在当前jenkins目录下输入

./jenkins.sh stop 

浏览器刷新访问jenkins地址,无法访问

再输入启动命令启动

 ./jenkins.sh start

浏览器再次刷新发现启动成功 

以上说明编写的 jenkins.sh 脚本文件没有问题 

4.3 创建并编辑 jenkins.service 系统服务文件

键入命令

vim /lib/systemd/system/jenkins.service

按 i 键 输入以下命令

[Unit]
Description=Jenkins
After=network.target
 
[Service]
Type=forking
ExecStart=/opt/jenkins/jenkins.sh start
ExecReload=
ExecStop=/opt/jenkins/jenkins.sh stop
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

创建好服务后,执行命令刷新配置 

systemctl daemon-reload

启动脚本

systemctl start jenkins.service

查看状态

systemctl status jenkins.service 

设置开机自启动

systemctl enable jenkins.service 

查看开机自启动的服务列表

systemctl list-units --type=service

看到已存在jenkins.service服务 

输入 reboot重启验证,访问jenkins地址,开机自启动成功

五、jdk环境准备

请移步这篇文章:

linux离线安装jdk-CSDN博客

六、git环境准备 

关于linux系统安装git,请参考笔者这篇博客:

linux安装git-CSDN博客

七、maven安装

maven安装linux参考博客:

linux离线安装maven-CSDN博客

八、nodejs安装

nodejs安装参考笔者这篇文章

linux离线安装NodeJs-CSDN博客

九、nginx安装

nginx安装参考笔者这篇博客

linux系统离线安装nginx-CSDN博客

十、jenkins使用

10.1 登录jenkins

 浏览器打开jenkins访问地址,

http://ip:port

笔者的地址为:http://192.168.19.16:9007

输入之前记录的密码 :103ed60c535f4c8daec0d81d66b9ea9d

或者执行命令查看初始密码

tail -f /root/.jenkins/secrets/initialAdminPassword

安装插件,这里要求服务器处于联网状态,自动下载相关插件

  

创建新用户,这里如果选择额使用admin账户继续,那么就不需要填写创建第一个管理员用户的信息了,因为不会创建,唯一的初始用户只有admin 

但如果选择保存并完成,那么admin账户会消失,唯一的初始管理员用户会是你创建的这个用户

这里的地址不用修改,就是jenkins的访问地址

10.2 新建管理员权限用户 

继续往下点

点击用户列表,可以看到就一个admin用户,之前创建的管理员用户没成功,应该是笔者点了使用admin账户继续导致

点击系统管理 ,点击管理用户

 create user

 可以看到新建了一个用户,如果想要修改密码等信息,点击编辑按钮进入修改即可

10.3 插件下载

jenkins要用来构建前后端项目

nodejs              # 构建前端项目
maven integration   # 构建后端项目
webhook             # 自动化构建(网络钩子)

gitLab Plugin  #gitLab插件
git plugin          # 基础git
publish over ssh    # 连接远程服务器

Git Parameter # git参数化构建插件

Localization: Chinese(Simplified) #汉化插件

Generic Webhook Trigger  #webhook钩子自动构建

 点击系统管理->插件管理

点击Avaliable plugins,需要什么插件,搜索下载安装即可 ,有的插件需要重启jenkins才能生效,比如maven

插件装好后,需要进行全局配置

10.4 全局配置 

10.4.1 maven配置

这里配置的路径是你jenkins所在linux服务器中,安装的maven里settings.xml的路径,笔者是安装在这个路径下

10.4.2 JDK安装

笔者安装的是jdk-21.0.2,JAVA_HOME路径如下,按照jenkins服务器安装的jdk路径填写,这里如果填写的不对,会有错误提示

自动安装不需要打勾

10.4.3 git 安装

笔者在安装git时,把git的安装在 /usr/local/git路径下了。

linux安装git-CSDN博客

下图为笔者在安装git时设置的安装路径

但是实际的git执行路径需要到服务器上执行which git寻找

 10.4.4 maven安装

按照maven的安装路径来

10.4.5 nodejs安装 

一样的,按照linux服务器安装的nodejs路径填写

以上设置完后,点击应用

 

10.5 系统配置 

点击进入系统配置

新增三个环境变量分别填写如下信息,应用即可

10.6 后端任务构建

 输入项目名称,选择构建maven项目,点击确定

点击DashBoard 回到主界面,可以看到新建的后端构建任务

10.6.1  编辑后端任务构建配置

点击配置 

 这里按需填写,主要是构建的天数和构建记录的保存个数

 这个参数化设置可以不勾选设置(一般是不设置的,这里只是为了说明),默认分支选择main分支(旧版的gitLab默认分支是master),git

参数名称也可以设置成其他的比如branch

这里填写上项目的gitLab拉取地址后,报错无法连接

是因为下面的凭据没有填写 

点击Credentials的添加按钮,填写上拥有项目拉取权限的用户名和密码,点击添加

 发现不报错了

下面的这里,如果之前的参数化设置勾选并设置了参数名称version,这里就写${version},参数名称是branch,这里就是${branch},否则填写上拉取的指定分支 */main 

clean package -Dmaven.test.skip=true

这句话意思是清理旧文件,跳过测试,直接打包

 点击保存

9.8 构建后端任务

点击DashBoard返回到主界面,点击构建

点进去查看构建进程 

 

 可以看到已经构建成功了

我们去jenkins所在服务器的 /root/.jenkins/workspace/redis-demo/target 文件夹下查看 到构建后的jar包

10.6.2 部署到远程服务器

以上的步骤只是jenkins完成了代码拉取,自动打包构建的过程,实际场景中我们还需要把打包好后的jar包发送到远程服务器,并执行启动命令 启动服务

10.6.2.1 添加远程服务器ssh

点击系统管理,点击系统配置

拖到最底部,点击新增SSH server 

这里的192.168.19.16就是笔者要发送到的远程linux服务器地址,采用root用户登录,指向的文件夹路径为根路径 /  下面

勾选使用密码授权登录方式,输入root用户登录密码

连接远程linux服务器的默认端口号是22不用修改,超时时间设置为300秒 (自行决定)

 

笔者这里只配置了一个ssh服务器,如果有多个服务器,则都在这里添加上,方便后面部署各种项目用到不同服务器

10.6.2.2 添加构建后操作

配置构建任务的构建后操作,即把jar包发送到远程服务器的指定路径下,并启动

点击当前任务

点击配置 

 

拖到底部,点击增加构建后操作步骤 

配置一台远程服务器的信息

说明:

 Name:这里是之前在系统管理->系统配置里添加的远程服务器,是下拉选择的,需要远程部署的服务器

source files:这是相对路径,构建的时候可以看到Jenkins把从git上拉取的代码打包放到

/root/.jenkins/workspace/redis-demo/target/ 路径下了

当前相对路径的根路径其实就是我们新建的 /root/.jenkins/workspace/redis-demo/下

在工作空间上看到

所以jar包的相对路径就是 target/redis-demo-0.0.1.jar

Remove prefix:这个没什么好说的,移除前缀,就是jenkins把主目录工作空间下的jar包发送到远程服务器指定路径下时只发送jar包,如果不把target/去除,那就会在指定路径下创建target文件夹,然后再发送jar包到target下,看下图

这显然不符合要求了,所以需要移除 target/ 

Remote directory:远程服务器的指定路径,笔者让jenkins把jar包发送到远程服务器的 /opt/softs 指定路径下,前提是要有这个路径,先去远程服务器创建好

cd /opt

sudo mkdir softs

 笔者专门为微服务写了一个执行脚本放在远程服务器 /opt/softs 路径下,和jar包放在一起

cd /opt/softs

vim redisDemo.sh

填入如下命令

#!/bin/bash

#定义微服务相关参数
SERVICE_NAME="redis-demo"
JAR_FILE="/opt/softs/redis-demo-0.0.1.jar"
LOG_FILE="redisDemo.log"
JAVA_OPTS="-Xmx2048m -Xms64m" # 可根据实际需求调整JVM内存设置
RUNNING_USER="root" # 运行微服务的用户,确保该用户存在并有适当权限

# 检查是否已设置JAVA_HOME环境变量
if [ -z "$JAVA_HOME" ]; then
    echo "java 环境变量未设置"
    exit 1
fi

# 启动微服务
function start_service {
    echo "Starting $SERVICE_NAME..."
    if [ "$(id -u)" != "$RUNNING_USER" ]; then
        sudo -u $RUNNING_USER sh -c \
            "nohup $JAVA_HOME/bin/java $JAVA_OPTS -jar $JAR_FILE > $LOG_FILE 2>&1 & echo \$! > /var/run/$SERVICE_NAME.pid"
    else
        nohup $JAVA_HOME/bin/java $JAVA_OPTS -jar $JAR_FILE > $LOG_FILE 2>&1 &
        echo $! > /var/run/$SERVICE_NAME.pid
    fi
    echo "$SERVICE_NAME started with PID `cat /var/run/$SERVICE_NAME.pid`."
}

# 停止微服务
function stop_service {
    echo "Stopping $SERVICE_NAME..."
    if [ ! -f "/var/run/$SERVICE_NAME.pid" ]; then
        echo "$SERVICE_NAME is not running."
        return 1
    fi

    local pid=$(cat /var/run/$SERVICE_NAME.pid)
    kill -15 $pid || kill -9 $pid
    rm -f /var/run/$SERVICE_NAME.pid
    echo "$SERVICE_NAME stopped."
}

# 检查服务是否正在运行
is_service_running() {
    if [ -f "/var/run/$SERVICE_NAME.pid" ] && kill -0 $(cat /var/run/$SERVICE_NAME.pid) &> /dev/null; then
        return 0
    else
        return 1
    fi
}

# 重启微服务
function restart_service {
    if is_service_running; then
        stop_service
    fi
    start_service
}

# 判断传入的操作类型
case "$1" in
    start)
        start_service
        ;;
    stop)
        stop_service
        ;;
    restart)
        restart_service
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
esac

exit 0

Exec command:这个是最重要的执行启动服务的sh脚本了

source /etc/profile
cd /opt/softs
chmod 755 redisDemo.sh
sh /opt/softs/redisDemo.sh restart

依次是 刷新环境变量

执行脚本授权

执行脚本启动命令

10.6.2.3 构建后端任务并发布远程服务器启动

保存后去点击构建

笔者的jar包,端口设置的是 8888

去远程服务器的 /opt/softs 文件夹下查看

查看端口 8888 是否启动

至此后端项目构建成功了

浏览器访问下后端get类型接口成功了(注意服务的端口8888,linux要开放)

服务器日志 

10.7 前端任务构建 

10.7.1 新建前端任务

点击确定,点击Dashboard(笔者是已经构建成功后的截图),可以看到新建的前端项目任务

 10.7.2 编辑前端任务构建配置

然后是配置从git拉取前端代码 ,分支选择的是main分支,自行决定代码用于什么环境,就配哪个环境的分支

构建环境,这里红框部分必须勾选,配上之前的node环境变量,如果不设置,下面的执行npm相关命令会不成功

 点击增加构建步骤

cd /root/.jenkins/workspace/web-project
/opt/nodejs/node-v16.20.2/bin/node /opt/nodejs/node-v16.20.2/bin/npm install
/opt/nodejs/node-v16.20.2/bin/node /opt/nodejs/node-v16.20.2/bin/npm run build
tar -czvf dist.tar.gz -C ./dist . 

这里解释下命令

第一行是进入当前jenkins工作目录的当前构建任务文件夹下

第二行是执行npm install,路径根据服务器上解压的node路径来,要写绝对路径

第三行是把从git拉过来的前端代码文件,执行打包构建命令,笔者的前端是一个最基础的vue3项目,如果不做配置,打包后的文件都放在了一个叫dist文件中,本地打包的截图

第四行是压缩命令,遍历dist文件夹下的子目录并压缩成名为dist.tar.gz的压缩包,

注意,如果是 tar -czvf dist.tar.gz ./dist 这个命令,则压缩的是一整个dist文件夹,而不是dist文件下的子内容

最后是构建后操作

这里服务器和后端是用的同一台,如果前端需要部署在其他远程服务器上,则参照10.6.2.1配置ssh服务器,在这里就可以下拉选择了

 Source files:前端任务的工作空间目录在 /root/.jenkins/workspace/web-project 下,压缩后的压缩包就在这个目录下

 这里和后端不一样的地方是,后端打jar包后还有个target文件夹,多一层,这里没有

Remove prefix:这里不需要填写需要移除的前缀了

Remote directory:这里是要把压缩包发送到服务器上的nginx安装路径下,根据自己的nginx安装路径来配置

Exec command

cd /usr/local/nginx/html/
tar -zxvf dist.tar.gz -C /usr/local/nginx/html/
rm -rf dist.tar.gz

主要是解压命令

以上文件编辑好后,点击保存

 10.7.3 构建前端任务,发布远程服务器

查看控制台输出,构建成功

去远程服务器 nginx路径看下,发布远程服务器成功了

10.7.4 nginx前端访问

笔者之前安装的nginx端口改成了8081,8081端口放开防火墙限制

这里能直接访问,和配置文件里的默认配置有关

cd /usr/local/nginx/conf

vim nginx.conf 

看下nginx的配置

root html,Nginx会在其安装路径下寻找一个名为html的目录 ,就找到了 /usr/local/nginx/html下,如果是放在其他地方,root后面可以修改成你的前端文件所在路径

index  index.html index.htm,这个是前端界面入口文件,一般前端打包后默认的就是这个,当然这个是可以修改的,不一定非得叫index.html,这里贴一段解释

再看location /

在Nginx的配置文件中,location /指令表示对web服务器根路径的匹配。也就是说,任何对服务器的请求都会匹配到这个location块。这通常用于设置网站的根访问路径。

server {
    listen 80;
    server_name example.com;

    location / {
        # 这里可以配置处理根路径请求的相关指令
    }

    location /images {
        # 这里配置处理/images路径的相关指令
    }

    location /api {
        # 这里配置处理/api路径的相关指令
    }
}

http://192.168.19.16:8081请求会匹配到 location /,

http://192.168.19.16:8081/api/... 会匹配到location /api

主要是做请求转发,这里也可以用来代理后端地址的,其后端同时代理,一般按如下配置

server {
    listen 8081;
    server_name example.com;

    # 前端代理
    location / {
        root /path/to/frontend;  # 指定前端项目的根路径
        index index.html;  # 指定默认的首页文件
        try_files $uri $uri/ /index.html;  # 配置SPA应用的路由
    }

    # 后端API代理
    location /api {
        proxy_pass http://backend-api-server;  # 指定后端API服务器地址
    }
}

十一、前后端任务构建远程部署整合

笔者做了个测试把这两个前后端构建任务结合起来部署运行

以下是nginx配置

 可以看到调用的后端服务端口是8888

http://192.168.19.16:8081/api/redisTest请求会被替换成

http://192.168.19.16:8888/api/redisTest

微服务环境下这里会配置成gateway网关地址,请求到达后端时,会根据请求路径分发到具体不同的服务中去

笔者的后端服务用到了redis,需要linux服务器安装redis,具体参考笔者的这篇redis教程

linux离线安装redis-CSDN博客

如果不想装redis,自己把后端代码redis相关调用去掉即可

前后端代码已上传gitee

前端:buxingzhe/web-project

后端:buxingzhe/redis-project

十二、拓展--webhook网络钩子自动构建 

之前的构建都是手动触发的,当我们提交完代码到gitLab后,需要自己去jenkins点击对应的构建任务重新构建发布

有没有当我们提交代码后就能自动触发构建任务,远程发布的方法?

当然是有的,虽然自动构建的功能实际使用的不多,主要是频繁构建影响使用,但是当团队有这个需求时还是很好用的,下面展示如何配置gitLab的webhook触发jenkins自动构建

首先在jenkins上配置任务的触发器,注意这个url,gitLab要用到

设置好后点击保存应用 

然后使用项目的创建者账户登录gitLab,比如笔者的redis-demo后端项目,是由boss账户创建的,则登录boss账户

点击admin area->setting->network

勾选允许本地网络发送请求 ,因为笔者的jenkins和gitLab部署在同一台服务器

接着点击后端项目

点击manage access 

 

点击setting webhooks,add new webhook 

填写url,这里的url是jenkins构建触发器时显示的url

保存

提交代码,看下jenkins是否自动构建,可以看到已经触发自动构建了

前端项目也是一样的步骤,这里不再叙述 

十三、总结收尾

通过这篇如此细致而又略显啰嗦的教程,基本掌握了前后端搭建自动化部署的原理和实操方法,掌握了开发环境搭建的完整步骤,笔者在工作之余花费了很大精力在这篇博客上,如果能给刷到这篇文章的朋友提供帮助,请点赞支持我吧!

  • 15
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Apache JMeter 可用于测试静态和动态资源、Web 动态应用程序的性能。 它可用于模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 Apache JMeter 功能包括: 能够加载和性能测试许多不同的应用程序/服务器/协议类型: 网络 - HTTP、HTTPS(Java、NodeJS、PHP、ASP.NET,...) SOAP/REST 网络服务 FTP 通过 JDBC 数据库 LDAP 通过 JMS 的面向消息的中间件 (MOM) 邮件 - SMTP(S)、POP3(S) 和 IMAP(S) 本机命令或 shell 脚本 TCP Java 对象 全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整且可随时呈现的动态 HTML 报告 通过从最流行的响应格式、HTML、JSON、 XML或任何文本格式中提取数据的能力轻松关联 完全可移植性和100% Java 纯度。 完整的多线程框架允许多个线程并发采样和不同线程组同时采样不同功能。 缓存和离线分析/重放测试结果。 高度可扩展的核心: 可插拔采样器允许无限的测试功能。 可编写脚本的采样器(与 JSR223 兼容的语言,如Groovy和 BeanShell) 可以使用可插拔计时器选择多个负载统计信息。 数据分析和可视化插件允许极大的可扩展性和个性化。 函数可用于为测试提供动态输入或提供数据操作。 通过适用于 Maven、Gradle 和 Jenkins 的第3方开源库轻松实现持续集成。
Apache JMeter 源码(apache-jmeter-5.4.3_src.zip)可用于测试静态和动态资源、Web 动态应用程序的性能。 它可用于模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 Apache JMeter 功能包括: 能够加载和性能测试许多不同的应用程序/服务器/协议类型: 网络 - HTTP、HTTPS(Java、NodeJS、PHP、ASP.NET,...) SOAP/REST 网络服务 FTP 通过 JDBC 数据库 LDAP 通过 JMS 的面向消息的中间件 (MOM) 邮件 - SMTP(S)、POP3(S) 和 IMAP(S) 本机命令或 shell 脚本 TCP Java 对象 全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整且可随时呈现的动态 HTML 报告 通过从最流行的响应格式、HTML、JSON、 XML或任何文本格式中提取数据的能力轻松关联 完全可移植性和100% Java 纯度。 完整的多线程框架允许多个线程并发采样和不同线程组同时采样不同功能。 缓存和离线分析/重放测试结果。 高度可扩展的核心: 可插拔采样器允许无限的测试功能。 可编写脚本的采样器(与 JSR223 兼容的语言,如Groovy和 BeanShell) 可以使用可插拔计时器选择多个负载统计信息。 数据分析和可视化插件允许极大的可扩展性和个性化。 函数可用于为测试提供动态输入或提供数据操作。 通过适用于 Maven、Gradle 和 Jenkins 的第3方开源库轻松实现持续集成。
Apache JMeter (apache-jmeter-5.4.3.zip)可用于测试静态和动态资源、Web 动态应用程序的性能。 它可用于模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 Apache JMeter 功能包括: 能够加载和性能测试许多不同的应用程序/服务器/协议类型: 网络 - HTTP、HTTPS(Java、NodeJS、PHP、ASP.NET,...) SOAP/REST 网络服务 FTP 通过 JDBC 数据库 LDAP 通过 JMS 的面向消息的中间件 (MOM) 邮件 - SMTP(S)、POP3(S) 和 IMAP(S) 本机命令或 shell 脚本 TCP Java 对象 全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整且可随时呈现的动态 HTML 报告 通过从最流行的响应格式、HTML、JSON、 XML或任何文本格式中提取数据的能力轻松关联 完全可移植性和100% Java 纯度。 完整的多线程框架允许多个线程并发采样和不同线程组同时采样不同功能。 缓存和离线分析/重放测试结果。 高度可扩展的核心: 可插拔采样器允许无限的测试功能。 可编写脚本的采样器(与 JSR223 兼容的语言,如Groovy和 BeanShell) 可以使用可插拔计时器选择多个负载统计信息。 数据分析和可视化插件允许极大的可扩展性和个性化。 函数可用于为测试提供动态输入或提供数据操作。 通过适用于 Maven、Gradle 和 Jenkins 的第3方开源库轻松实现持续集成。
Apache JMeter 源码(apache-jmeter-5.4.3_src.tgz)可用于测试静态和动态资源、Web 动态应用程序的性能。 它可用于模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 Apache JMeter 功能包括: 能够加载和性能测试许多不同的应用程序/服务器/协议类型: 网络 - HTTP、HTTPS(Java、NodeJS、PHP、ASP.NET,...) SOAP/REST 网络服务 FTP 通过 JDBC 数据库 LDAP 通过 JMS 的面向消息的中间件 (MOM) 邮件 - SMTP(S)、POP3(S) 和 IMAP(S) 本机命令或 shell 脚本 TCP Java 对象 全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整且可随时呈现的动态 HTML 报告 通过从最流行的响应格式、HTML、JSON、 XML或任何文本格式中提取数据的能力轻松关联 完全可移植性和100% Java 纯度。 完整的多线程框架允许多个线程并发采样和不同线程组同时采样不同功能。 缓存和离线分析/重放测试结果。 高度可扩展的核心: 可插拔采样器允许无限的测试功能。 可编写脚本的采样器(与 JSR223 兼容的语言,如Groovy和 BeanShell) 可以使用可插拔计时器选择多个负载统计信息。 数据分析和可视化插件允许极大的可扩展性和个性化。 函数可用于为测试提供动态输入或提供数据操作。 通过适用于 Maven、Gradle 和 Jenkins 的第3方开源库轻松实现持续集成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值