APISIX的安装与测试(springboot服务测试)

安装:

1.1安装依赖:

curl https://raw.githubusercontent.com/apache/apisix/master/utils/install-dependencies.sh -sL | bash -

1.2 安装 OpenResty

yum-config-manager --add-repo https://openresty.org/package/centos/openresty.reposudo yum install  openresty 

验证安装

/usr/local/openresty/nginx/sbin/nginx -v

在这里插入图片描述

安装必须的库

yum install git gcc luarocks lua-devel

1.3 安装docker和docker compose

vi install_docker.sh

粘贴以下内容

#!/usr/bin/env bashset -ex# 移除旧版本的 Docker
sudo yum remove -y docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 安装依赖包
sudo yum install -y yum-utils# 设置 Docker 的稳定仓库
sudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo# 安装 Docker Engine
sudo yum install -y docker-ce docker-ce-cli containerd.io# 启动 Docker
sudo systemctl start docker
sudo systemctl enable docker# 安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# 为 Docker Compose 二进制文件添加执行权限
sudo chmod +x /usr/local/bin/docker-compose# 创建符号链接到 /usr/bin 目录(可选)
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose || true# 验证 Docker Compose 是否安装成功
docker-compose --version
chmod +x install_docker.sh
sudo ./install_docker.sh

如果docker-compose拉取失败,再次执行以下命令获取

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

1.4 安装etcd 和 APISIX

如果你在安装 APISIX 时选择了 Docker 或 Helm 安装,那么 etcd 将会自动安装;

git clone https://github.com/apache/apisix-docker.git
cd apisix-docker/example

修改配置文件:apisix-docker/example/apisix_conf/config.yaml

在这里插入图片描述

拉取并启动容器

cd apisix-docker/example
docker-compose -p docker-apisix up -d

在这里插入图片描述

安装完成并启动

在这里插入图片描述

查看是否全部启动:

在这里插入图片描述

1.5 测试

1.5.1搭建一个java服务

在这里插入图片描述

服务启动访问http://127.0.0.1:8883返回字符串:

Hello 我是apisix222

1.5.2将服务放到服务器上运行。

1.5.2.1打包java服务

在这里插入图片描述

1.5.2.2在服务器上安装jdk
cd /usr/local
mkdir javatar -zvxf "jdk-8u411-linux-x64 (1).tar.gz" -C /usr/local/java/vi /etc/profile# 放入以下命令
export JAVA_HOME=/usr/local/java/jdk1.8.0_411
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib#退出文件并执行
source /etc/profile
java -version
1.5.2.2运行

将打包好的jar包上传到服务器上并执行

java -jar <java服务jar包>

1.5.3 测试网关转发

1.5.3.1 发布API

注意点:1.92.107.128 这个IP地址是你的服务器地址, 如果 APISIX 运行在 Docker 容器中,而你的服务直接运行在主机上,可能存在网络隔离问题。方法一,将你的服务放在同一个docker网络中(舍弃)。方法二直接使用服务器地址。

curl -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1"  -i "http://127.0.0.1:9180/apisix/admin/routes" -X PUT -d '
{"id": "getting-started-hello","uri": "/hello","upstream": {"type": "roundrobin","nodes": {"1.92.107.128:8883": 1}}
}'
1.5.3.2 访问
http://1.92.107.128:9080/hello

则网关会将请求转发到 http://1.92.107.128:8883/hello 去。就会接收到内容 “Hello 我是apisix222”

1.6 其他

#查询发布的所有API
curl -i -X GET "http://127.0.0.1:9180/apisix/admin/routes" -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1"# 删除发布的APi 根据ID
curl -i -X DELETE "http://127.0.0.1:9180//apisix/admin/routes/3" -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/20659.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

英语翻译程序,可以对用户自己建立的词汇表进行增删查改

⑴ 自行建立一个包含若干英文单词的词汇表文件&#xff0c;系统初始化时导入内存&#xff0c;用于进行句子翻译。 ⑵ 用户可以输入单词或者句子&#xff0c;在屏幕上显示对应翻译结果。 ⑶ 用户可对词汇表进行添加和删除&#xff0c;并能将更新的词汇表存储到文件中。 #defi…

Adobe Acrobat DC无法卸载

控制版面、电脑管家等均无法卸载&#xff0c;使用自身的remove也不能卸载 解决方法&#xff1a;删除Adobe Acrobat DC的注册表 1、首先打开注册列表&#xff1a; 2、根据圈出来的信息&#xff0c;找到以下路径&#xff1a; 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Inst…

反序输出c++

题目描述 输入n个数,要求程序按输入时的逆序把这n个数打印出来&#xff0c;已知整数不超过100个。也就是说&#xff0c;按输入相反顺序打印这n个数。 输入 输入一行共有n个数&#xff0c;每个数之间用空格隔开。 输出 如题要求&#xff1a;一行&#xff0c;共有n个数&…

现如今AI大环境究竟怎样?

遇到难题不要怕&#xff01;厚德提问大佬答&#xff01; 厚德提问大佬答10 你是否对AI绘画感兴趣却无从下手&#xff1f;是否有很多疑问却苦于没有大佬解答带你飞&#xff1f;从此刻开始这些问题都将迎刃而解&#xff01;你感兴趣的话题&#xff0c;厚德云替你问&#xff0c;你…

车载电子电器架构 —— 智能座舱技术范围(万字长文精讲)

车载电子电器架构 —— 智能座舱技术范围 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明…

远程连接服务器

远程连接只需要配置好地址、网关、安装openssl-devel与开启sshd服务即可远程连接。&#xff08;前提是配置策略允许的。防火墙默认开启&#xff09; libXdmcp-devellibXinerama-devellibXft-devellibXtst-devellibXrender-devellibXrandr-devellibXi-devel 这些文件在终端运行…

vs code 搭建 vue 开发环境

1. vs code 环境准备好 2. 安装vue环境&#xff1a; nodejs&#xff1a;官网下载安装后 输入 node -v 验证是否安装成功 vue-cli &#xff1a; 输入 npm install -g vue/cli 安装后&#xff0c;vue --versoin 验证 3. 创建项目并启动&#xff1a; 进入目标文件夹&#xf…

MySQL性能分析工具——EXPLAIN

性能分析工具——EXPLAIN 1、概述 定位了查询慢的SQL之后&#xff0c;我们就可以使用EXPLAIN或DESCRIBE工具做针对性的分析查询语句 。 DESCRIBE语句的使用方法与EXPLAIN语句是一样的&#xff0c;并且分析结果也是一样的。 MySQL中有专门负责优化SELECT语句的优化器模块&…

2023职称继续教育--“十四五”大数据产业发展规划

单选题&#xff08;共7题&#xff0c;每题5分&#xff09; 1、截至2021年4月&#xff0c;我国已经有&#xff08;&#xff09;个省级和地市级数据开放平台。 B、174 2、在“十四五”规划中&#xff0c;“大数据”出现过&#xff08;&#xff09;次。 C、43 3、我国已建设&…

如何成功完成一个Java项目答辩

目录 如何成功完成一个Java项目答辩一、准备阶段二、答辩阶段三、答辩后阶段 案例&#xff1a;在线图书管理系统项目背景需求分析系统架构设计核心功能展示关键代码展示测试结果遇到的问题及解决方案总结与未来展望 如何成功完成一个Java项目答辩 在编写这篇博客时&#xff0c…

Android Dialog软键盘弹出问题完美解决办法

一、问题&#xff1a; Dialog中有输入框时&#xff0c;显示后无法自动弹起软键盘&#xff0c;原因就不赘述了&#xff0c;自行Google。 一、解决办法&#xff1a; 开启独立线程&#xff0c;线程中使用while循环&#xff0c;循环调用弹起软键盘方法&#xff0c;直至showSoftI…

FreeRTOS基础(五):任务挂起与恢复

今天我们将探讨FreeRTOS中的两个非常重要的函数&#xff1a;任务挂起和恢复函数。在实际的嵌入式系统开发中&#xff0c;我们常常需要在特定条件下暂停某些任务的执行&#xff0c;而在满足某些条件后再恢复这些任务的执行。这就像我们日常生活中的“暂停”和“继续”按钮。无论…

js扣代码

调试的时候保持一致.参数一致.注意断点位置,否则会有作用域问题 new之后this的问题. 改函数名字是为了方便. 关于对象两种方案.滞空,完全不去管. 对象不能直接参与计算,一定是对象里的属性方法. 不管的情况,需要写日志笔记,方便检索到位置.建议唯一性.快速检索定位. 出现上述不…

SQL深度解析:从基础到高级应用

SQL&#xff08;Structured Query Language&#xff09;是用于管理关系型数据库的语言&#xff0c;广泛应用于数据管理、分析和查询。本文将详细介绍SQL的基础知识、高级特性以及一些常见的代码示例&#xff0c;帮助您全面掌握SQL的应用。 一、SQL基础语法 数据库操作 创建数据…

【Kubernetes】Pod理论详解

一、Pod基础概念&#xff1a; Pod是kubernetes中最小的资源管理组件&#xff0c;Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的&#xff0c;例如&#xff0c;用于管理Pod运行…

Unix、Linux 软件包管理快速入门对照

Linux&#xff08;RHEL、Ubuntu&#xff09;或者 Unix&#xff08;macOS、FreeBSD&#xff09;可以参看下表快速入门: 命令功能/系统Darwin (macOS)FreeBSDDebian/UbuntuRHEL&#xff08;dnf yum&#xff09;搜索和查找软件包brew searchpkg searchapt listyum list查看软件包…

生态系统服务功能之碳储量

大家好&#xff0c;这期开始新生态系统服务功能即碳储量的计算&#xff0c;这部分较简单&#xff0c;下面让我们开始吧&#xff01;&#xff01;&#xff01; 碳储量的计算公式 生态系统通过从大气中释放和吸收二氧化碳等温室气体来调节地球气候&#xff0c;而森林、 草原和沼…

基于Open3D的点云处理23-Web可视化

Open3D Web 可视化工具可在现代浏览器中实现3D 模型的高级渲染和可视化。 首先在本地或远程计算机上启动可视化服务器,然后可以从任何具有现代浏览器的设备上查看3D 模型。Web 可视化服务器和客户端通过WebRTC(Web 实时通信)协议进行通信。 将Open3D Web 可视化服务器作为独…

Stable Diffusion生成图片的参数查看与抹除方法

前几天分享了几张Stable Diffusion生成的艺术二维码&#xff0c;有同学反映不知道怎么查看图片的参数信息&#xff0c;还有的同学问怎么保护自己的图片生成参数不会泄露&#xff0c;这篇文章就来专门分享如何查看和抹除图片的参数。 查看图片的生成参数 1、打开Stable Diffus…

AI大模型辅助开发

作为现阶段最流行的AI大模型辅助开GLM-4究竟对程序员影响多大&#xff0c;达到了什么程度&#xff1f; 首先AI大模型在开发过程中辅助作用已经很大了&#xff0c;但是还处于辅助阶段&#xff0c;远没有达到自主开发的阶段。现阶段根本达不到代替程序员开发的地步。但是它在部分…