一、ShenYu快速开始
前戏
先大体介绍一下我们项目使用的架构,网关ShenYu
,注册中心/配置中心:nacos
,微服务框架:dubbo
首先ShenYu
是由 ShenYu Admin
和 ShenYu Bootstrap
两块组成。
ShenYu Admin
是网关的后台管理系统,能够可视化管理所有插件、选择器和规则,设置用户、角色,控制资源。ShenYu Bootstrap
这部分才是网关核心部分,引入各个插件包。官方给出的一个网关demo,你也可以自己取其他名字作为网关羡慕,引入自己需要的插件包,以及插件的拓展。
快速开始
博主这边是使用的源码编译的方式来启动服务的。
环境准备
本地正确安装JDK1.8+
本地正确安装Git
本地正确安装Maven
选择一款开发工具,比如IDEA
设置git配置项
因为shenyu源码文件命名较长,git限制了文件名不能超过 260 个字符。
git config --global core.longpaths true
检出源码,并进行编译
git clone git@github.com:apache/shenyu.git
cd shenyu
mvn clean install -Dmaven.javadoc.skip=true -B -Drat.skip=true -Djacoco.skip=true -DskipITs -DskipTests
启动admin
- 更改后台存储方式,
ShenYu
提供了多种存储方式,我们选择适合的一种,这里我们选择mysql
修改同步方式
shenyu:sync:nacos:url: localhost:8848namespace: 1c10d748-af86-43b9-8265-75f487d20c6c
修改
application-mysql.yml
配置信息
数据源信息修改为自己本地测试数据库即可,启动时会自动创建表。
- 运行
ShenyuAdminBootstrap
- 访问
http://localhost:9095/
,admin/123456
登录 - 设置
dubbo
插件
这里填写你的nacos
的地址,一定要注意后面的namespace
启动bootstrap
- 修改配置
application.yml
shenyu:sync:nacos:url: localhost:8848namespace: 1c10d748-af86-43b9-8265-75f487d20c6c
注意这里的namespace
与admin的同步配置保持一致
- 这里还需要注意一点,官网的
bootstrap
没有引入nacos
的同步包,所以需要手动引入一下,不然服务注册不到网关
<!-- apache shenyu data sync start use nacos--><dependency><groupId>org.apache.shenyu</groupId><artifactId>shenyu-spring-boot-starter-sync-data-nacos</artifactId><version>${project.version}</version></dependency>
- 启动
ShenyuBootstrapApplication
- 网关接口地址:
http://localhost:9195/
注册服务到网关
打开
shenyu-examples
选中pom.xml ,右键设置为maven项目。
打开
shenyu-examples
找到shenyu-examples-apache-dubbo-service-annotation
,主要修改注册的配置为nacos,以及dubbo注册中心同步改为nacos即可。
shenyu:register:registerType: nacos #zookeeper #etcd #nacos #consulserverLists: localhost:8848 #localhost:2181 #http://localhost:2379 #localhost:8848props:username: adminpassword: 123456client:dubbo:props:contextPath: /dubboappName: dubbodubbo:application:name: test-dubbo-serviceregistry:address: nacos://127.0.0.1:8848protocol:name: dubboport: 20888scan:base-packages: org.apache.shenyu.examples.apache.dubbo.service.annotation.impl
- 启动
TestApacheDubboAnnotationApplication
通过网关访问dubbo
接口
启动服务以后,你可以在admin
后台能看到你的服务注册到网关上了
随意访问一个接口即可看到返回结果,则表示网关正常使用。http://localhost:9195/dubbo/findAll
一、ShenYu快速开始相关推荐
- 微服务 API 网关架构演进 Spring Cloud Gateway ShenYu APISIX
目录 后台服务网关 Spring Cloud Gateway 遇到问题 Apache ShenYu Higress fizz-gateway-community 企业案例 前台流量网关 APISIX ...
- 快速排查feign.FeignException: status 500 …
feign.FeignException: status 500 - 总结一下feign报500的时候快速排查问题的方法, 这个bug容易出现的地方分别为: 1. 远程调用的时候feign的注册信息有 ...
- python中如何对复杂的json数据快速查找key对应的value值(使用JsonSearch包)
前言 之前在实际的项目研发中,需要对一些复杂的json数据进行取值操作,由于json数据的层级很深,所以经常取值的代码会变成类似这样: value = data['store']['book'][0] ...
- 如何利用python的newspaper包快速爬取网页数据
文章目录 前言 一个爬取新闻网页数据的神器 小试牛刀 如何快速安装 windows安装 Debian / Ubuntu安装 OSX安装 体验更多的功能 前言 随着越来的进行自然语言处理相关方面的研究, ...
- 【快速上手mac必备】常用优质mac软件推荐(音视频、办公、软件开发、辅助工具、系统管理、云存储)
本文章的主要内容是我作为一名大四学生.准程序员.up主这三种身份来给大家推荐一下 mac 上好用的软件以及工具.本人也是从去年9月份开始从windows阵营转移到了mac阵营,刚开始使用的时候,也曾主 ...
- 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- 面试高频——JUC并发工具包快速上手(超详细总结)
目录 一.什么是JUC 二.基本知识 2.1.进程和线程 2.2.Java默认有两个进程 2.3.Java能够开启线程吗? 2.4.并发和并行 2.5.线程的状态 2.6.wait和sleep的区别 ...
- Shiro第一个程序:官方快速入门程序Qucickstart详解教程
目录 一.下载解压 二.第一个Shiro程序 1. 导入依赖 2. 配置shiro配置文件 3. Quickstart.java 4. 启动测试 三.shiro.ini分析 四.Quickstart. ...
- 快速上手MyBatisPlus~(基友搭配,效率翻倍)
目录 一.简介 二.快速入门 1. 创建数据库及数据表 2. 新建项目,导入依赖 3. 编写数据库配置文件&连接 4. 创建pojo实体类 5. 编写mapper&扫描 6. 测试类简 ...
- NVIDIA GPU的快速傅立叶变换
NVIDIA GPU的快速傅立叶变换 cuFFT库提供GPU加速的FFT实现,其执行速度比仅CPU的替代方案快10倍.cuFFT用于构建跨学科的商业和研究应用程序,例如深度学习,计算机视觉,计算物理, ...
最新文章
- 言论丨李开复:2018中国最大AI红利是政策
- jdbc-connect-oracle12c-pdb/cdb(jdbc连接oracle12c的pdb和cdb)
- oracle job 时间间隔,关于job的时间间隔的一个问题
- java调用方法的变量_JAVA类的方法调用和变量(全套)
- [转]iis7.5+win2008 出现 HTTP Error 503. The service is unavailable.
- 10位photoshop顶尖设计大师
- eclipse使用不需要配置jdk的环境变量
- Java阻塞队列的实现
- afnetworking 和 asihttprequest 强制修改http连接的host地址
- 三坐标测量机(CMM)测头初步了解
- 微信小程序下拉刷新功能--onPullDownRefresh
- linux进阶-PHP加速器
- Dispatch简介
- 工作英语: Meetings
- 时间序列预测系列文章总结(代码使用方法)
- 购物网站的商品推荐算法有哪些?
- 实验十 文件读写 1. 文件排版(文本文件读写)
- python 东方财富接口_Python从东方财富网站获取数据,python,的
- 弘辽科技:拼多多发货中途改地址可以吗?怎么改?
- Text to face:寻找黛玉-从语言描述到人脸图像生成
热门文章
- 阿里云 OSS图片处理
- 如何将1080P的腾讯视频QLV格式转换成MP4视频呢
- PS第一集 证件照换底色
- Java 如何保证线程安全,你真的清楚吗
- AbstractQueuedSynchronizer浅析
- python导入表格数据混乱_Python按行打乱Excel表格数据
- 搭建kettle 源码工程报[ui/spoon.xul]找不到错误的解决方案
- 1.3.1 计算机的主要性能指标 (机器字长、数据通路带宽、主存容量、运算速度、吞吐量、响应时间、主频和时钟周期、CPI、CPU执行时间、MIPS、MFLOPS、GFLOPS、TFLOPS)
- 【更新】VMware虚拟机黑群晖7.1.1 RC(懒人包)
- 张正友标定算法原理详解