神禹网关Shenyu[Soul]的简易运用

2024-03-19 01:20

本文主要是介绍神禹网关Shenyu[Soul]的简易运用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

神禹网关,功能强大,一直想傻瓜似的用起来。落实起来,却并非容易。探索了数日,终于如愿以偿,特将过程详细记录下来,以供参考。

这里以spring cloud nacos分布微服架构应用,简要说明神禹网关apache-shenyu的简易运用。

1 软件版本的选用

简化运用起见,选择二进制版本。当前最高版本是2.6.1,由近及远,反复验证,发现只有2.4.2版本,可以直接拿来使用:apache-shenyu-incubating-2.4.2-admin-bin.tar.gz和apache-shenyu-incubating-2.4.2-bootstrap-bin.tar.gz。2.4.2以上版本,启动时,不是这样,就是那样的问题,不一一列举。

2 软件的选配启用

2.1 nacos-server

nacos注册中心,单机版启动,等待shenyu网关和微服模块接入。

2.2 apache-shenyu-admin

解压缩apache-shenyu-incubating-2.4.2-admin-bin.tar.gz,修改conf/application.yml文件,指明nacos注册类型及其服务网址,注明nacos同步网址及其命名空间。注意不可注释掉websocket同步功能,这是shenyu-admin管理员与shenyu-bootstrap网关互动的唯一通道。

进入bin目录,采用默认的H2数据记录库启动apache-shenyu-admin:start.bat --spring.profiles.active=h2

浏览器中打开apache-shenyu-admin监护页面

2.3 apache-shenyu-bootstrap

解压缩apache-shenyu-incubating-2.4.2-bootstrap-bin.tar.gz,,修改conf/application.yml文件,使能nacos发现及其ribbon负载均衡,注明nacos同步网址及其命名空间。注意不可注释掉websocket同步功能,并保留eureka项但不使能[否则启动不起来]。

进入bin目录,启动apache-shenyu-bootstrap网关:start.bat

浏览器nacos管理页面,监视shenyu-bootstrap网关接入。

3 微服模块手动接入

3.1 微服模块接入nacos

启动微服模块SvcMgDbPrdcr

Nacos管理员监护接入情形

直接访问微服模块SvcMgDbPrdcr的getRsrNms

3.2 开启插件模块

这里必须用到上下文路径ContextPath和微服形式SpringCloud,可选网络应用防火墙Waf

3.3 SpringCloud插件配置

选择器selector

路由规则rule

添加配置后的情形

3.4 ContextPath插件配置

选择器selector

路由规则rule

添加配置后的情形

3.5 Waf插件配置[可选]

选择器selector

路由规则rule

添加配置后的情形

3.6 配置服务元数据

配置情形

添加配置后的情形

3.7 浏览器中通过网关访问

此时网关bootstrap路由情况记录如下

这篇关于神禹网关Shenyu[Soul]的简易运用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/824341

相关文章

poj 2431 poj 3253 优先队列的运用

poj 2431: 题意: 一条路起点为0, 终点为l。 卡车初始时在0点,并且有p升油,假设油箱无限大。 给n个加油站,每个加油站距离终点 l 距离为 x[i],可以加的油量为fuel[i]。 问最少加几次油可以到达终点,若不能到达,输出-1。 解析: 《挑战程序设计竞赛》: “在卡车开往终点的途中,只有在加油站才可以加油。但是,如果认为“在到达加油站i时,就获得了一

计算机网络基础概念 交换机、路由器、网关、TBOX

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VLAN是什么?二 、交换机三、路由器四、网关五、TBOXTelematics BOX,简称车载T-BOX,车联网系统包含四部分,主机、车载T-BOX、手机APP及后台系统。主机主要用于车内的影音娱乐,以及车辆信息显示;车载T-BOX主要用于和后台系统/手机APP通信,实现手机APP的车辆信息显示与控

海龟绘图简易教程|Turtle for Python

turtle 是 python 内置的一个比较有趣味的模块,俗称 海龟绘图,它是基于 tkinter 模块打造,提供一些简单的绘图工具,海龟作图最初源自 20 世纪 60 年代的 Logo 编程语言,之后一些很酷的 Python 程序员构建了 turtle 库,让其他程序员只需要 import turtle,就可以在 Python 中使用海龟作图。 原文链接|海龟绘图简易教程 1. 基本

Java后端微服务架构下的服务网关设计:Spring Cloud Zuul

Java后端微服务架构下的服务网关设计:Spring Cloud Zuul 大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿! 在微服务架构中,服务网关是微服务系统与外部世界的入口点,它负责请求路由、负载均衡、认证、监控等任务。Spring Cloud Zuul是一个基于Spring Boot的网关服务,它为微服务架构提供了一种灵活、高效的网关解决方案。 服务

使用jetty和mongodb做个简易文件系统

使用jetty和mongodb做个简易文件系统 - ciaos 时间 2014-03-09 21:21:00   博客园-所有随笔区 原文   http://www.cnblogs.com/ciaos/p/3590662.html 主题  MongoDB  Jetty  文件系统 依赖库: 1,jetty(提供http方式接口) 2,mongodb的java驱动(访问mo

ElasticSearch 6.1.1运用代码添加索引及其添加,修改,删除文档

1、新建一个MAVEN项目:ElasticSearchTest 2、修改pom.xml文件内容: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.or

HarmonyOS】ArkTS学习之基于TextTimer的简易计时器的elapsedTime最小时间单位问题

本文旨在纪录自己对TextTimer使用过程的疑惑问题 我在查看教程时候,发现很多博客在onTimer(event: (utc: number, elapsedTime: number) => void) 这里提到elapsedTime:计时器经过的时间,单位为毫秒。我不清楚是否为版本问题。 在我查看version11和version10的api时候,说的都是设置格式的最小单位。 经过个人检验的

微服务之网关安全基于Zuul并实现网关限流

微服务网关安全 微服务架构下的问题 处理安全和业务逻辑耦合,增加了复杂性和变更成本 随着业务节点增加,认证服务器压力增大 多个微服务同时暴露,增加了外部访问的复杂性 通过网关处理流程 1、请求令牌。2、转发请求。3、返回令牌。4、转发令牌各客户端应用。5、携带令牌发送请求。6、校验令牌。7、返回校验结果信息。8、访问微服务。 实例 引入依赖 <dependencies><depe

巧妙的运用Floyd算法

题目大概意思:输入n,m,n代表n个点,接着输入n个点之间的距离(n*n的矩阵),接下来m次询问,输入a,b,c如果a,b之间的最短路径中存在c点则输出Yes,否则输出No 比赛的时候没有做出来,赛后帆哥一点播就知道了。。。。我写的时候直接用floy算法求距离并记录路径。。然后TLE到死。。。我就奇怪了数据n,m都小于100,怎么会TLE啊。。。坑爹啊。。。我一直怀疑是不是用别的算法。。。。。帆

【kubernetes】配置管理中心Configmap运用

一,介绍 Configmap(简写 cm)是k8s中的资源对象,用于保存非机密性的配置的,数据可以用key/value键值对的形式保存,也可通过文件的形式保存。 【局限性】:在ConfigMap不是用来保存大量数据的,其数据量不可超过1 MiB。 kubectl get cm 二,功能 Configmap资源对象,可以有一个或者多个Configmap,通过 volume 形式映射到容器