Redian新闻
>
一站式解决方案:基于 Arthas 实现服务发现和权限控制

一站式解决方案:基于 Arthas 实现服务发现和权限控制

公众号新闻

👉 这是一个或许对你有用的社群

🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入芋道快速开发平台知识星球。下面是星球提供的部分资料: 

👉这是一个或许对你有用的开源项目

国产 Star 破 10w+ 的开源项目,前端包括管理后台 + 微信小程序,后端支持单体和微服务架构。

功能涵盖 RBAC 权限、SaaS 多租户、数据权限、商城、支付、工作流、大屏报表、微信公众号、CRM 等等功能:

  • Boot 仓库:https://gitee.com/zhijiantianya/ruoyi-vue-pro
  • Cloud 仓库:https://gitee.com/zhijiantianya/yudao-cloud
  • 视频教程:https://doc.iocoder.cn
【国内首批】支持 JDK 21 + SpringBoot 3.2.2、JDK 8 + Spring Boot 2.7.18 双版本 

来源:juejin.cn/post/
7281849496983994383


Arthas 是阿里巴巴开源的在线诊断工具,提供了 Dashboard 负载总览Thread 线程占用Stack 堆栈查看Watch 性能观测 等功能。

  1. 服务发现: 自动获取接入的应用列表 IP 和端口,无须手动输入 AgentId
  2. 权限控制: 基于 Spring Security 实现登录控制,并支持 Nacos 动态绑定账号与服务

您可以访问 GitHub 查阅源码。

演示图例

改造前

改造后

登录控制

配置管理

arthas:
  tunnel:
    users:
      - name: admin
        password: 123456
        roles: '*' # 全部授权
      - name: user
        password: 123456
        roles:
          - eden-gateway # 特定服务授权

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 视频教程:https://doc.iocoder.cn/video/

如何构建

本项目默认使用 Maven 来构建,最快的使用方式是 git clone 到本地。在项目的根目录执行 mvn package -T 4C 完成本项目的构建。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/yudao-cloud
  • 视频教程:https://doc.iocoder.cn/video/

如何启动

IDEA 启动

本项目不依赖外部组件,可以直接启动运行。

  1. 在项目目录下运行 mvn install(如果不想运行测试,可以加上 -DskipTests 参数)。
  2. 进入 tunnel-server 目录,执行 mvn spring-boot:run 或者启动 ArthasTunnelApplication 类。运行成功的话,可以看到 Spring Boot 启动成功的界面。
  3. 进入 web-ui 目录,执行 yarn run dev:tunnel 或者 yarn run dev:ui。运行后控制台日志输出 http://localhost:8000 地址,点击访问。

镜像启动

本项目已发布到 Docker Hub [2],请执行参考命令运行。

docker run -p 8080:8080 --name=arthas-tunnel-server -d shiyindaxiaojie/arthas-tunnel-server

如何部署

FatJar 部署

执行 mvn clean package 打包成一个 fat jar,参考如下命令启动编译后的控制台。

java -Dserver.port=8080 -jar target/arthas-tunnel-server.jar

Docker 部署

本项目使用了 Spring Boot 的镜像分层特性优化了镜像的构建效率,请确保正确安装了 Docker 工具,然后执行以下命令。

docker build -f Dockerfile-Tunnel -t arthas-tunnel-server:{tag} .

Helm 部署

以应用为中心,建议使用 Helm 统一管理所需部署的 K8s 资源描述文件,请参考以下命令完成应用的安装和卸载。

helm install arthas-tunnel-server ./helm # 部署资源
helm uninstall arthas-tunnel-server # 卸载资源

如何接入

为了减少客户端集成的工作,您可以使用 eden-architect [3] 框架,只需要两步就可以完成 Arthas 的集成。

  1. 引入 Arthas 依赖
<dependency>
    <groupId>io.github.shiyindaxiaojie</groupId>
    <artifactId>eden-arthas-spring-boot-starter</artifactId>
</dependency>
  1. 开启 Arthas 配置
spring:
  arthas: 
    enabled: false # 默认关闭,请按需开启

arthas: # 在线诊断工具
  agent-id: ${spring.application.name}@${random.value}
  tunnel-server: ws://localhost:7777/ws # Arthas 地址
  session-timeout: 1800
  telnet-port: 0 # 随机端口
  http-port: 0 # 随机端口

笔者提供了两种不同应用架构的示例,里面有集成 Sentinel 的示例。

  • 面向领域模型的 COLA 架构 ,代码实例可以查看 eden-demo-cola [4]
  • 面向数据模型的 分层架构 ,代码实例请查看 eden-demo-layer [5]

欢迎加入我的知识星球,全面提升技术能力。

👉 加入方式,长按”或“扫描”下方二维码噢

星球的内容包括:项目实战、面试招聘、源码解析、学习路线。

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
恭喜绿卡小客人离境4年+丝滑入境美国和小伙伴们一起参加夏令营!美之信旅游一站式服务协助绿卡超期客人保留身份、安全入境美国!SEMICON China 2024 | 格创东智半导体智能工厂软硬融合整体解决方案惊艳亮相!恭喜客人绿卡身份境外停留7年顺利入境美国!美之信旅游一站式服务协助绿卡超期客人保留身份、安全入境美国!火爆!纽约美业人的培训基地!全美高端院线产品批发!一站式美容美体服务就在这!AI早知道|ChatGPT免注册可使用;阿里云AI001号员工上岗;支付宝发布AI就医助理解决方案【职场】雇员在奥运期间可能会面临的状况与解决方案海外营收占比超80%,合川医疗为全球客户提供微流控CDMO一站式服务2024通信会|迈向智慧配电网建设新时代,锐捷网络发布双平面配电通信解决方案澳洲看房神器3.0重磅升级!各种神级功能颠覆传统!最懂140万华人的找房顾问,买房痛点一站式为你解决马伯庸新书,美食X权谋X悬疑,[hào]吃有多了不起?混合云架构下,灵活可靠的 DNS 解析解决方案——火山引擎 PrivateZoneMySQL忘记root密码解决方案《巴郞笔谈》005:杨家花园新生免费!【美高入学指导公开课】一站式解锁 Offer 选择、学业管理、活动规划、美本升学全攻略BCG工具及解决方案 | Growth AI,最大限度发掘消费品企业的增长潜力广汽发布全固态电池与无图纯视觉智驾;腾讯会议发布国内首个裸眼3D视频会议解决方案丨智能制造日报首发基于征程®6的中高阶智驾解决方案!轻舟智航再「抢跑」雇主品牌研究所:2024一站式DEI解决方案《甲辰龙年元宵五联》巴郞从青光眼微支架到射频能量平台,朗目医疗打造医工融合创新下的眼科微创治疗完整解决方案携手全球儿童专注力权威专家“哈洛韦尔”创立,思欣跃打造闭环式数字化注意力解决方案快、准、稳!NextSeq 1000/2000外显子组测序解决方案,开启下一个测序革新!《辛苦》巴郞【首发】康爱医疗完成数千万元A+轮融资,加速打造临床肿瘤支持治疗解决方案「安声科技」获过亿元战略轮及C轮融资,提供终端嵌入式智能声学系统化解决方案|36氪首发“不止有光”锐捷极简以太全光3.X解决方案发布会邀您线上参与!登Nature子刊,「机器人+AI+MD模拟」加速材料发现和设计,发现全天然塑料替代品就在明天!一起见证极客邦科技 AIGC 产品与解决方案重磅首发 | 极客时间企业版一地鸡毛(5)祈求MATLAB生物制药系列:轻松实现药物发现和开发全流程的AI应用【动脉严选公开课】爱因斯坦成为Salesforce的解决方案Windows格式化对话框是一个使用了30年的 “临时解决方案”德国大陆集团子公司 Elektrobit 开源基于 Ubuntu 的 Linux 车载操作系统解决方案它来了!“不止有光”锐捷极简以太全光3.X解决方案发布会邀您线上参与!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。