神禹网关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

相关文章

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

使用Python实现一个简易计算器的新手指南

《使用Python实现一个简易计算器的新手指南》计算器是编程入门的经典项目,它涵盖了变量、输入输出、条件判断等核心编程概念,通过这个小项目,可以快速掌握Python的基础语法,并为后续更复杂的项目打下... 目录准备工作基础概念解析分步实现计算器第一步:获取用户输入第二步:实现基本运算第三步:显示计算结果进

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

python运用requests模拟浏览器发送请求过程

《python运用requests模拟浏览器发送请求过程》模拟浏览器请求可选用requests处理静态内容,selenium应对动态页面,playwright支持高级自动化,设置代理和超时参数,根据需... 目录使用requests库模拟浏览器请求使用selenium自动化浏览器操作使用playwright

基于Python实现简易视频剪辑工具

《基于Python实现简易视频剪辑工具》这篇文章主要为大家详细介绍了如何用Python打造一个功能完备的简易视频剪辑工具,包括视频文件导入与格式转换,基础剪辑操作,音频处理等功能,感兴趣的小伙伴可以了... 目录一、技术选型与环境搭建二、核心功能模块实现1. 视频基础操作2. 音频处理3. 特效与转场三、高

Zabbix在MySQL性能监控方面的运用及最佳实践记录

《Zabbix在MySQL性能监控方面的运用及最佳实践记录》Zabbix通过自定义脚本和内置模板监控MySQL核心指标(连接、查询、资源、复制),支持自动发现多实例及告警通知,结合可视化仪表盘,可有效... 目录一、核心监控指标及配置1. 关键监控指标示例2. 配置方法二、自动发现与多实例管理1. 实践步骤

Swagger在java中的运用及常见问题解决

《Swagger在java中的运用及常见问题解决》Swagger插件是一款深受Java开发者喜爱的工具,它在前后端分离的开发模式下发挥着重要作用,:本文主要介绍Swagger在java中的运用及常... 目录前言1. Swagger 的主要功能1.1 交互式 API 文档1.2 客户端 SDK 生成1.3

CSS引入方式和选择符的讲解和运用小结

《CSS引入方式和选择符的讲解和运用小结》CSS即层叠样式表,是一种用于描述网页文档(如HTML或XML)外观和格式的样式表语言,它主要用于将网页内容的呈现(外观)和结构(内容)分离,从而实现... 目录一、前言二、css 是什么三、CSS 引入方式1、行内样式2、内部样式表3、链入外部样式表四、CSS 选

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详