微服务建构思想

微服务架构思想

微服务架构优点

1、易于开发和维护:一个微服务只会关注一个特定的业务功能。所以它业务清晰。代码量较少。开发和维护

单个微服务相对简单。而整个应用是由若干个微服务构建而成的。

2、单个微服务启动较快:单个微服务代码量较少,所以启动比较快。

3、局部修改容易部署:单体应用只要有修改,就得重新部署整个应,微服务解决了该问题。如果想对某个微

服务进行修改,只需要重新部署这个服务即可。

4、技术栈不受限:可以结合项目业务和团队的特点,合理地选择技术。

5、按需伸缩:可根据需求,实现细粒度的扩展。

微服务架构的挑战

运维要求较高:

部署问题:更多的服务意味着更多的运维投入。

分布式固有的复杂性:

使用微服务构建的是分布式系统。对于一个分布式系统来说问题:

1、分布式日志

2、分布式事务

3、分布式Session

4、系统容错

5、网络延迟

微服务自动化部署

Nexus+Jenkins+Git|Gitee|Gitlab+Docker+K8s

1、私有仓库搭建 Nexus

2、持续集成 Jenkins+Maven

3、灰度发布

微服务日志收集与性能监控

1、日志收集工作 日志输出----日志收集-----日志分析 -----ELK
2、性能监控-----Zabbix

3、链路追踪-----sleuth+Zipkin

通过Sleuth可以很清楚的了解到一个服务请求经过了哪些服务,每个服务处理花费了多长。从而让我们可以很方便的理清各微服务间的调用关系。

zipkin是一种分布式的跟踪系统,由Twitter公司开源,它致力于收集服务的定时数据,以解决微服务架构中的延迟问题,包括数据的收集、存储、查找和展现。

微服务自动化测试与质量管理

SonarQube

整体架构

前面给我们项目的微服务应用都加上监控告警。Spring Boot Actuator的引入只是第一步

  • 如何集成监控告警系统Prometheus和图形化界面Grafana
  • 如何自定义监控指标,做应用监控埋点 Prometheus
  • 如何集成Alertmanager 进行告警

数据收集器,它以配置的时间间隔定期通过HTTP提取指标数据。

一个时间序列数据库,用于存储所有指标数据。

一个简单的用户界面,您可以在其中可视化,查询和监视所有指标。

相关推荐
眠りたいです2 小时前
基于脚手架微服务的视频点播系统-播放控制部分
c++·qt·ui·微服务·云原生·架构·播放器
叫我阿柒啊2 小时前
Java全栈开发工程师的实战面试经历:从基础到微服务
java·微服务·typescript·vue·springboot·前端开发·后端开发
Aczone284 小时前
硬件(五) 存储、ARM 架构与指令系统
arm开发·嵌入式硬件·架构
闲看云起4 小时前
从 GPT 到 LLaMA:解密 LLM 的核心架构——Decoder-Only 模型
gpt·架构·llama
Jerry&Grj5 小时前
SpringBoot埋点功能技术实现方案深度解析:架构设计、性能优化与扩展性实践
java·微服务·性能优化·springboot·架构设计·埋点技术
大咖分享课5 小时前
架构性能优化三板斧:从10秒响应到毫秒级的演进之路
性能优化·架构
echoyu.6 小时前
消息队列-初识kafka
java·分布式·后端·spring cloud·中间件·架构·kafka
程序猿阿伟7 小时前
《云原生微服务治理进阶:隐性风险根除与全链路能力构建》
微服务·云原生·架构
小马哥编程8 小时前
【软考架构】第五章 软件工程基础知识:5.1软件工程概述
架构·软件工程