分享好友 最新资讯首页 最新资讯分类 切换频道
springboot与区块链交互
2024-12-29 10:51


springboot与区块链交互

  • Config 分布式配置中心
  • Bus 消息总线
  • Stream 消息驱动
  • Sleuth+Zipkin 链路追踪

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k3TmRxbF-1598533951804)(img/1587795739754.png)]

• Spring Cloud Config 解决了在分布式场景下多环境配置文件的管理和维护。
• 好处:
集中管理配置文件
不同环境不同配置,动态化的配置更新
配置信息改变时,不需要重启即可更新配置信息到服务

2.2.1-gitee搭建远程仓库

1.编写仓库名称、仓库路径、公开(公开的比较方便)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fqfnuQMr-1598533951806)(img/1587796233360.png)]

2.语言和模板可以不选,一般使用单分支模型,只创建master分支

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FxTvzVNU-1598533951808)(img/1587796290872.png)]

3.使用小乌龟工具,将远程仓库clone到本地

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xp2znSBl-1598533951810)(img/1587796447003.png)]

4.使用小乌龟工具将配置文件提交到远程仓库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nn5iDc2d-1598533951811)(img/1587796545052.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iDSVdcL1-1598533951812)(img/1587796586956.png)]

2.2.2-config server搭建

config server:

  1. 使用gitee创建远程仓库,上传配置文件
  2. 搭建 config server 模块
  3. 导入 config-server 依赖
  1. 编写配置,设置 gitee 远程仓库地址
  1. 测试访问远程配置文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pmnl6X7o-1598533951813)(img/1587797404156.png)]

2.2.3-config client搭建

config client:

  1. 导入 starter-config 依赖
  1. 配置config server 地址,读取配置文件名称等信息
    创建配置文件bootstrap.yml
  1. 获取配置值
  1. 启动测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iReGSt8s-1598533951814)(img/1587797821512.png)]

2.2.4-config client刷新

  1. 在 config 客户端引入 actuator 依赖
  1. 获取配置信息类上,添加 @RefreshScope 注解
  1. 添加配置management.endpoints.web.exposure.include: refresh
  1. 使用curl工具发送post请求
    curl -X POST http://localhost:8001/actuator/refresh

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ysKQrUJC-1598533951815)(img/1587798535633.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rohEQ04x-1598533951815)(img/1587798585588.png)]

1.config-server pom.xml中引入eureka-client 坐标

2.配置文件中配置eureka地址

3.启动类中添加注解

4.config-provider 工程中bootstrap.yaml中注掉写死的地址,改为从Eureka中获取

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kgPgpady-1598533951816)(img/1587799845708.png)]

• Spring Cloud Bus 是用轻量的消息中间件将分布式的节点连接起来,可以用于广播配置文件的更改或者服务的监控管理。关键的思想就是,消息总线可以为微服务做监控,也可以实现应用程序之间相通信。

• Spring Cloud Bus 可选的消息中间件包括 RabbitMQ 和 Kafka

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2pizGyzg-1598533951817)(img/1587800000865.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2RKWvItk-1598533951818)(img/1587800012091.png)]

RabbitMQ 提供了 6 种工作模式:简单模式、work queues、Publish/Subscribe 发布与订阅模式、Routing
路由模式、Topics 主题模式、RPC 远程调用模式(远程调用,不太算 MQ;暂不作介绍)。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2I62F5DZ-1598533951818)(img/1587800088435.png)]

RabbitMQ Window 安装参考资料中RabbitMQ Windows 安装.md

  1. 分别在 config-server 和 config-client中引入 bus依赖:bus-amqp
  1. 分别在 config-server 和 config-client中配置 RabbitMQ
    bootstrap.yml

OrderController上添加@RefreshScope注解

  1. 在config-server中设置暴露监控断点:bus-refresh
    application.yml
  1. 启动测试
    curl结果中没有信息,说明成功了
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-raY8OCBX-1598533951819)(img/1587801187953.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-12iS7XoT-1598533951820)(img/1587799845708.png)]

• Spring Cloud Stream 是一个构建消息驱动微服务应用的框架。
• Stream 解决了开发人员无感知的使用消息中间件的问题,因为Stream对消息中间件的进一步封装,可以做
到代码层面对中间件的无感知,甚至于动态的切换中间件,使得微服务开发的高度解耦,服务可以关注更多
自己的业务流程。
• Spring Cloud Stream目前支持两种消息中间件RabbitMQ和Kafka

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LDWGYCVv-1598533951821)(img/1587801268585.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ObOa8HYw-1598533951821)(img/1587801281505.png)]

• Spring Cloud Stream 构建的应用程序与消息中间件之间是通过绑定器 Binder相关联的。绑定器对于应用程序而言起到了隔离作用, 它使得不同消息中间件的实现细节对应用程序来说是透明的。

• binding 是我们通过配置把应用和spring cloud stream 的 binder 绑定在一起

• output:发送消息 Channel,内置 Source接口

• input:接收消息 Channel,内置 Sink接口

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a8Iyj6Lb-1598533951822)(img/1587801301281.png)]

  1. 创建消息生产者模块,引入依赖 starter-stream-rabbit
  1. 编写配置,定义 binder,和 bingings
  1. 定义消息发送业务类。添加 @EnableBinding(Source.class),注入
    MessageChannel output ,完成消息发送

MessageProducer

ProducerController

  1. 编写启动类,测试
  1. 创建消息消费者模块,引入依赖 starter-stream-rabbit
  1. 编写配置,定义 binder,和 bingings
  1. 定义消息接收业务类。添加 @EnableBinding(Sink.class),使用
    @StreamListener(Sink.INPUT),完成消息接收。
  1. 编写启动类,测试

• Spring Cloud Sleuth 其实是一个工具,它在整个分布式系统中能跟踪一个用户请求的过程,捕获这些跟踪数
据,就能构建微服务的整个调用链的视图,这是调试和监控微服务的关键工具。
• 耗时分析
• 可视化错误
• 链路优化
• Zipkin 是 Twitter 的一个开源项目,它致力于收集服务的定时数据,以解决微服务架构中的延迟问题,包
括数据的收集、存储、查找和展现。

  1. 安装启动zipkin。 java –jar zipkin.jar
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gxVywdS4-1598533951823)(img/1587802288137.png)]

启动成功日志

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3PW5kgf8-1598533951824)(img/1587802360854.png)]

  1. 访问zipkin web界面。 http://localhost:9411/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b7pmSD21-1598533951824)(img/1587802457833.png)]

  1. 在服务提供方和消费方分别引入 sleuth 和 zipkin 依赖
  1. 分别配置服务提供方和消费方。

sleuth-provider application.yaml

sleuth-consumer application.yaml

  1. 启动,测试 http://localhost:9411/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F7J98oQ6-1598533951825)(img/1587802777145.png)]

详细信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RP17ZWiZ-1598533951825)(img/1587802821502.png)]

最新文章
【GN700W淘宝下载】金立GN700W淘宝10.41.12免费下载
淘宝是一个好逛、丰富、有趣的消费生活社区,每天有亿万消费者来淘宝“逛街”:发现好物、找到乐趣、表达体验……淘宝能满足人们
百度百科回应编辑收费
近日多为网友投诉称,有人自称是百度百科代理商,只要交钱就能为用户编写百科词条。日前,百度百科官网回应称,不法分子打着百度
竞价推广推广代运营 今年Zui新攻略
1995年11月01日今日头条巨量引擎,快-手磁力智投和磁力金牛,小红书,广点通,视频号等等信息流广告投流开户代运营,直-播带货推
利用js查找页面中的内链,外链
起初没听说过内链外链,只有链接锚文本,在面试中被问到如何查找到页面中的内链和外链,就在想,什么是内链和外链啊??????
拿着 iQOO 5 打了一个月的游戏,之后它替代了 iPhone 成了我的主力手机
在手机行业竞争日趋白热化的今天,为了讨好更垂直的细分用户群体,越来越多的手机厂商贴上了类似「超强拍照手机」、「极致视听音
【山西早知道】-2024.12.15
..........................................●朔州:一分钱乘公交啦!岁末将至,敬颂冬绥。12月12日至12月31日,朔州公交联合支
天河二号超级计算机(国自行生产的天河二号计算机属于)
国自行生产的天河二号计算机属于超级计算机系统。根据查询相关公开资料,天河二号是由国防科学技术大学研制的超级计算机系统,曾
浮梁400电话申请开通及企业网站建设与微信公众号小程序开发运营价格详解
富良400电话号码申请开通【富良企业网站建设】富良微信公众号小程序开发运营价格、富良微信公众号APP软件客户端设计运营、富良网
百度网盟推广官方网站
百度网盟推广官方网站是一个专注于网络广告推广的平台,提供多种广告形式和精准的定向投放服务。该网站拥有丰富的广告资源和营销
极致CMS建站系统 开源PHP版 V2.0
极致CMS建站系统一款不错的的PHP 建站 CMS 系统,无商业授权,完全开源免费需要的朋友快来下载使用吧!1、官方手把手指导教学2、