谷粒商城学习笔记-05-项目微服务划分图

文章目录

  • 一,商城业务服务-前端服务
  • 二,商城业务服务-后端服务
  • 三,存储服务
  • 四,第三方服务
  • 五,服务治理
  • 六,日志
  • 七,监控预警系统
    • 1,Prometheus
    • 2,Grafana
    • 3,Prometheus + Grafana 的结合

这一节介绍了谷粒商城的服务划分,从不同功能的服务的角度介绍了整个项目。

原图如下。
在这里插入图片描述

一,商城业务服务-前端服务

这部分服务是学习过程中需要从0到1编码实现的,包括:

  • 后台管理系统,即图中admin-vlue,是给商城管理人员使用的
  • 商城系统,即图中的shop-vue,是面向消费者的

前端的请求通过网关转发个以后台服务。

二,商城业务服务-后端服务

这部分服务是学习过程中需要从0到1编码实现的,包括:

  • 商品服务,提供商品的增删改查
  • 优惠服务,管理各种优惠活动,比如秒杀、优惠券、满减等等
  • 仓储服务
  • 订单服务
  • 中央认证服务
  • 支付服务
  • 用户服务
  • 秒杀服务
  • 检索服务
  • 购物车服务

三,存储服务

这个项目中,存储服务选用多个中间件。

  • 持久化存储选用了MySQL,搭建了MySQL集群,采用读写分离的策略。
  • 缓存选用了Redis,搭建了Redis集群。
  • 消息中间件选用了RabbitMQ。
  • 日志存储选用了Elasticsearch。
  • 商品搜索存储选用了Elasticsearch。
  • 图片存储使用阿里云的OSS。

四,第三方服务

第三方服务是指第三方提供的服务,不需要我们开发,通过调用接口的方式使用第三方开发好的服务。如:

  • 短信服务,调用通信运营商提供的短信服务。
  • 金融服务,调用金融机构的支付服务。
  • 身份认证服务,比如微信的身份认证。
  • 物流服务,调用物流或者快递的服务,给物流企业下订单,由物流企业将商品运输、分发到消费者。

五,服务治理

服务治理是指管理、监控所有的业务服务的服务。

包括:

  • 网关
  • 注册中心
  • 配置中心
  • Seata分布式事务
  • Sentinel服务容错
  • feign服务远程调用
  • Sleuth服务追踪
  • Zipkin可视化追踪

六,日志

日志记录了系统运行过程中的各种信息,是排查线上问题的必备资料。

这个项目使用ELK作为日志采集、管理、查询系统。

  • Logstash收集日志
  • 存储到Elasticsearch中
  • 用可视化工具Kibana作为前端工具搜索、展示日志

在这里插入图片描述

日志查询界面如下。

在这里插入图片描述

七,监控预警系统

使用Prometheus收集系统信息,配合Grafana可视化信息。

Prometheus 和 Grafana 是在现代监控系统中经常被一起使用的两个开源工具,它们各自具有独特的优势,当它们结合起来时,能够提供全面且强大的监控解决方案。下面简要说明它们如何配合完成系统监控工作:

1,Prometheus

Prometheus 是一个开源的监控系统和时间序列数据库,它专注于实时监控,特别适合于云原生环境。Prometheus 的优势包括:

  1. 主动抓取数据:Prometheus 主动从被监控的目标抓取数据,这称为“拉”模式。这使得 Prometheus 能够监控任何提供 HTTP 接口的系统,无需额外的 SDK 或集成。

  2. 高性能时间序列数据库:Prometheus 内置了一个高效的时间序列数据库,能够存储大量的监控数据,并支持快速查询。

  3. 灵活的查询语言:PromQL(Prometheus Query Language)是一种强大的查询语言,允许用户进行复杂的查询和聚合操作,以便对监控数据进行深入分析。

  4. 警报管理:Prometheus 提供了丰富的警报规则和通知机制,可以及时发现并应对系统异常。

2,Grafana

Grafana 是一个开源的数据可视化平台,它提供了一个直观的界面来展示和分析来自多个数据源的数据。Grafana 的优势包括:

  1. 数据可视化:Grafana 支持多种图表类型和面板,如折线图、直方图、表格、热图等,可以创建复杂的仪表板,将监控数据可视化。

  2. 多数据源支持:除了 Prometheus,Grafana 还能连接到其他数据源,如 InfluxDB、Elasticsearch、MySQL 等,这使得它成为一个通用的可视化工具。

  3. 交互式探索:Grafana 允许用户进行实时数据探索,可以动态调整时间范围、过滤条件和图表类型,以获得更深入的洞察。

  4. 共享和协作:Grafana 支持仪表板的共享和协作,用户可以轻松地与其他团队成员分享监控结果。

如下图,Grafana可以非常直观、形象的图表形式展示系统信息。

在这里插入图片描述

3,Prometheus + Grafana 的结合

Prometheus 和 Grafana 的结合提供了以下优势:

  • 完整的监控解决方案:Prometheus 负责数据的收集和存储,Grafana 负责数据的可视化和呈现,两者结合形成了一个完整的监控和可视化解决方案。

  • 高效的故障检测和响应:Prometheus 的警报机制可以迅速通知管理员系统异常,而 Grafana 的可视化功能则帮助快速定位问题根源。

  • 灵活的扩展性:由于 Prometheus 和 Grafana 都是模块化的,它们可以很容易地集成到现有的监控架构中,或者随着需求的增长进行扩展。

综上所述,Prometheus 和 Grafana 的配合使用能够提供实时的监控数据收集、存储、查询、可视化和警报功能,非常适合用于大规模系统和云原生环境的监控。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/369010.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQLite

1、SQLite简介 轻量化、易用的嵌入式数据库,用于设备端的数据管理,可以理解成单点的数据库。传统服务器型数据库用于管理多端设备,更加复杂。 SQLite是一个无服务器的数据库,是自包含的。这也称为嵌入式数据库,这意味着…

数据分析三剑客-Matplotlib

数据分析三剑客 数据分析三剑客通常指的是在Python数据分析领域中,三个非常重要的工具和库:Pandas、NumPy和Matplotlib。Pandas主要负责数据处理和分析,NumPy专注于数值计算和数学运算,而Matplotlib则负责数据可视化。这三个库相…

【安全攻防】网络安全中的序列化与反序列

1.序列化与反序列化 首先要了解序列化与反序列化的定义,以及序列化反序列化所用到的基本函数。 序列化:把对象转换为字节序列的过程称为对象的序列化,相当于游戏中的存档。 PHP中的序列化函数serialize() **serialize()**函数用于序列化对…

Appium自动化测试框架3

滑动与拖拽 swipe 滑动时间的长短会影响最后的结果的 是有一定误差的 from appium import webdriver import time # 启动一个字典 包装相应的启动参数 desired_caps dict() # 平台的名字,安卓还是IOS 大小写无所谓 desired_caps[platformName] Android # 平台的…

【串口通信】之TTL电平

1. 什么是串口 串口,全称为串行通信端口,是一种计算机硬件接口,用于实现数据的串行传输。与并行通信不同,串口通信一次只传输一个比特,数据通过串行线按顺序传输。串口通信在嵌入式系统、工业控制、计算机与外围设备通信等领域非常常见 2. 什么是串口通信 串口通信是指通过…

Docker 部署 Minio 对象存储服务器

文章目录 Github官网文档简介dockerdocker-compose.ymlmc 客户端mc 基础命令Golang 示例创建 test 账号密钥文件上传示例 Github https://github.com/minio/minio 官网 https://min.io/https://www.minio.org.cn/ 文档 https://www.minio.org.cn/docs/minio/kubernetes/up…

刚办理的手机号被停用,你可能遇到这些问题了!

很多朋友都会遇到手机号被停用的情况,那么你知道你的手机号为什么会被停用吗?接下来,关于手机号被停用的问题,跟着小编一块来了解一下吧。 ​停机的两种形态: 1、第一个是局方停机,即语音、短信和流量都不…

C++|哈希应用->布隆过滤器

目录 一、概念 二、模拟实现 三、布隆过滤器扩展应用 上一篇章学习了位图的使用,但它只适用于整数,对于要查询字符串是否在不在,位图并不能解决。所以针对这一问题,布隆过滤器可以派上用场,至于布隆过滤器是什么&am…

Java支付宝沙箱支付环境配置及简单测试

Java支付宝沙箱环境配置(测试) 1. 沙箱配置环境 沙箱应用 - 开放平台 (alipay.com) 2. 需要用到的基本信息 3. Pom文件添加依赖 <!--支付宝依赖 --><dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-easysdk</artifactId…

周鸿祎:大模型不是风口和泡沫,将引领新工业革命

7月2日&#xff0c;2023全球数字经济大会人工智能高峰论坛举行。360集团创始人周鸿祎在论坛发表《构建“安全可信可控易用”的企业级AI大模型》主题演讲。他表示&#xff0c;大模型不是风口和泡沫&#xff0c;将引领新工业革命。在城市、行业、企业数字化转型到智能化的过程中&…

#### golang中【堆】的使用及底层 ####

声明&#xff0c;本文部分内容摘自&#xff1a; Go: 深入理解堆实现及应用-腾讯云开发者社区-腾讯云 数组实现堆 | WXue 堆&#xff08;Heap&#xff09;是实现优先队列的数据结构&#xff0c;Go提供了接口和方法来操作堆。 应用 package mainimport ("container/heap&q…

C++:类型转换

目录 一、C语言中的类型转换 二、为什么C要新的转换格式 三、 C强制类型转换 1.static_cast 2.reinterpret_cast 3.const_cast 4.dynamic_cast 一、C语言中的类型转换 在C语言中&#xff0c;如果赋值运算符左右两侧类型不同&#xff0c;或者形参与实参类型不匹配&…

Land survey boundary report (template)

Land survey boundary report (template) 土地勘测定界报告&#xff08;模板&#xff09;.doc

可视化学习之pytorch可视化工具visdom

文章摘自详解PyTorch可视化工具visdom&#xff08;一&#xff09;-CSDN博客 模型训练过程中需要实时监听并可视化一些数据&#xff0c;如损失值loss&#xff0c;正确率acc等。在tensorflow中&#xff0c;使用的工具为tensorboard&#xff1b; 安装一下试试 1.安装 pip inst…

Android的课程学习助手APP-计算机毕业设计源码19307

基于Android的课程学习助手APP 摘 要 在数字化、信息化的时代背景下&#xff0c;移动学习已成为现代教育发展的重要趋势。为了满足广大学生对高效、便捷学习方式的迫切需求&#xff0c;一款基于Android平台的课程学习助手APP应运而生。这款APP巧妙地将先进的信息技术与学习体验…

通过一个单相逆变器仿真深度学习PR控制器

目录 前言 ​编辑 PR控制器的理论 PR控制器不同表达式及其建模 PR控制器连续积分组合及模型 PR控制器连续传递函数及模型 PR控制器离散积分及模型 PR控制器离散传递函数及模型 PR控制器差分方程及模型 系统仿真效果 总结 前言 在项目开发中常用PI控制器&#xff0c;这次在…

解读 Amazon Q | 用 AI 聊天机器人连接你与未来的无限可能

在美国当地时间11月28日&#xff0c;亚马逊云科技在拉斯维加斯举办了 re:Invent 大会&#xff0c;大会介绍了许多今年来新增的核心产品与功能&#xff0c;着重讲解了生成式 AI 引领人工智能未来的前进方向&#xff0c;亚马逊作为云计算领域的龙头&#xff0c;相信会继续给我们的…

基于路径长度的样条插补算法(自动驾驶和路径跟踪控制适用)

以前在做车辆跟踪控制的时候发现在针对有多个X和多个Y对应的路径插补时候&#xff0c;总是报错&#xff0c;因为MATLAB里面的interp1插补函数它要求x要唯一对应一个y&#xff0c;当路径以单独的x或者y来求插补时候的时候就报错。由于在使用Matlab的interp1函数进行插值时&#…

重生之算法刷题之路之链表初探(三)

算法刷题之路之链表初探&#xff08;三&#xff09; 今天来学习的算法题是leecode2链表相加&#xff0c;是一道简单的入门题&#xff0c;但是原子在做的时候其实是有些抓耳挠腮&#xff0c;看了官解之后才恍然大悟&#xff01; 条件 项目解释 有题目可以知道&#xff0c;我们需…

C#Modbus专题

1&#xff0c;辅助工具。 1&#xff0c;虚拟串口工具&#xff08;vspd.exe&#xff09; 2&#xff0c;Modubus模拟主站(Modbus Poll) 3&#xff0c;Modbus模拟从站(Modbus Slave) 4&#xff0c;OPC服务软件(KEPServerEx V4.0)。 下载链接&#xff1a;https://download.csdn.n…