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…

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

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

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

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

MySQL性能分析工具——EXPLAIN

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

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

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

【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;而森林、 草原和沼…

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

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

php反序列化入门

一&#xff0c;php面向对象。 1.面向对象&#xff1a; 以“对象”伪中心的编程思想&#xff0c;把要解决的问题分解成对象&#xff0c;简单理解为套用模版&#xff0c;注重结果。 2.面向过程&#xff1a; 以“整体事件”为中心的编程思想&#xff0c;把解决问题的步骤分析出…

就业班 第四阶段(docker) 2401--5.29 day3 Dockerfile+前后段项目若依ruoyi

通过Dockerfile创建镜像 Docker 提供了一种更便捷的方式&#xff0c;叫作 Dockerfile docker build命令用于根据给定的Dockerfile构建Docker镜像。docker build语法&#xff1a; # docker build [OPTIONS] <PATH | URL | ->1. 常用选项说明 --build-arg&#xff0c;设…

Windows安装Docker

启用虚拟化 打开 勾选Hyper-V 验证 下载Docker Docker官网 阿里云 安装Docker 傻瓜式安装 遇到问题&#xff1a; 打开命令窗口&#xff0c;执行命令&#xff1a; wsl --update升级完成之后点击Restart按钮即可 切换阿里镜像 https://fmkoym4e.mirror.aliyuncs.com

Firebase Local Emulator Suite详解

文章目录 Firebase Local Emulator Suite 组件安装和使用步骤1. 安装 Firebase CLI2. 初始化 Firebase 项目3. 配置模拟器4. 启动模拟器5. 配置应用程序使用本地模拟器 常见用途 Firebase Local Emulator Suite 是一组本地服务&#xff0c;可以模拟 Firebase 平台的在线服务&am…

每天写两道(五)合并两个有序链表、最长回文子串

21.合并两个有序链表 . - 力扣&#xff08;LeetCode&#xff09; 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4] (1)迭代法…

小白教你搭建测试环境(docker部署版)

如何使用docker创建多数据库端口&#xff08;云服务器版&#xff09; 背景&#xff1a; 需要搭建一个测试环境&#xff0c;同时还需要不同的端口映射mysql端口。那么我采用的docker拉取mysql镜像&#xff0c;通过宿主机和docker容器端口映射完成。 准备一台云服务器服务器安装…

如何跨渠道分析销售数据 - 6年软件销售经验小结

如何跨渠道分析销售数据 - 6年软件销售经验小结&#xff08;1&#xff09; 【前言】 在我过去6年销售工作生涯中&#xff0c;从第一年成为公司销冠后&#xff0c;我当时的确自满的一段时间&#xff0c;认为自己很了不起。但是第一年的销售业绩并没有拿到提成&#xff0c;最终…

初识C++ · 模拟实现list

目录 前言 1 push_back pop_back 2 迭代器类 2.1 ! 2.2 -- 2.3 * 3 Print_List 4 有关自定义类型 5 有关const迭代器 6 拷贝构造 赋值 析构 Insert erase 前言 有了string&#xff0c;vector的基础&#xff0c;我们模拟实现list还是比较容易的&#xff0c;这里同…

Pandas 使用 concat 数据合并你学会了吗?

1. 使用pd.concat()级联 pandas使用pd.concat函数&#xff0c;与np.concatenate函数类似 # 导包import numpy as npimport pandas as pd​# 为方便讲解&#xff0c;我们首先定义一个生成DataFrame的函数def make_df(indexs,columns): data [[str(j)str(i) for j in colum…

PWN-栈迁移

栈迁移 题目&#xff1a;BUUCTF在线评测 (buuoj.cn) 知识点&#xff1a;栈迁移 使用情况&#xff1a;题目中有栈溢出&#xff0c;但是 栈溢出的范围 有限&#xff0c;导致构造的ROP链不能完全写入到栈中&#xff0c;此时需要进行栈迁移&#xff0c;将栈迁移到能接受更多数据的…