当前位置: 首页 > news >正文

Cloud 微服务

架构

一 单体架构

1 概念

将项⽬所有模块(功能)打成jar或者war,然后部署⼀个进程。

互联网早期,一般的网站应用流量较小,只需一个应用,将所有功能代码都部署在一起就可以,这样可以减少开发、部署和维护的成本。 比如说一个电商系统,里面会包含很多用户管理,商品管理,订单管理,物流管理等等很多模块,我们会把它们做成一个web项目,然后部署到一台tomcat服务器上。

2 优点:

1:部署简单: 由于是完整的结构体,可以直接部署在⼀个服务器上即可。

2:技术单⼀: 项⽬不需要复杂的技术栈,往往⼀套熟悉的技术栈就可以完成开发。

3:⽤⼈成本低: 单个程序员可以完成业务接⼝到数据库的整个流程。

3 缺点:

1:系统启动慢, ⼀个进程包含了所有的业务逻辑,涉及到的启动模块过多,导致系统的启动重启时间周期过⻓;

2:系统错误隔离性差、可⽤性差,任何⼀个模块的错误均可能造成整个系统的宕机;

3:可伸缩性差:系统的扩容只能只对这个应⽤进⾏扩容,⽆法结合业务模块的特点进⾏伸缩。

4:线上问题修复周期⻓:任何⼀个线上问题修复需要对整个应⽤系统进⾏全⾯升级。

5:跨语⾔程度差

6:不利于安全管理,所有开发⼈员都拥有全量代码

二 微服务架构

1 概念

微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

2 优势

1.易于开发和维护

⼀个微服务只关注⼀个特定的业务功能,所以它的业务清晰、代码量较少。开发和维护单个微服务相对⽐较简单,整个应⽤是由若⼲个微服务构建⽽成,所以整个应⽤也会维持在可控 状态;

2.单个微服务启动较快

单个微服务代码量较少,所以启动会⽐较快;

3.局部修改容易部署

单体应⽤只要有修改,就要重新部署整个应⽤,微服务解决了这样的问题。⼀般来说,对某 个微服务进⾏修改,只需要重新部署这个服务即可;

4.技术栈不受限

在微服务中,我们可以结合项⽬业务及团队的特点,合理地选择技术栈

5.按需伸缩

3 缺点

1、服务太多,导致服务间的依赖错综复杂,运维难度⼤

2、微服务放⼤了分布式架构的系列问题

  • 分布式事务(seata)、

  • 分布式锁怎么处理(redisson),

  • 服务注册与发现(微服务)、

  • 依赖服务不稳定(sentinel)导致服务雪崩怎么办?

3 运维复杂度陡增,部署数量多、监控进程多导致整体运维复杂度提升。

三 Cloud

1 SpringCloud与微服务关系

Springcloud为微服务思想提供了完美的解决⽅案

2 SpringBoot和SpringCloud关系

  • SpringBoot专注于快速⽅便的开发单个个体微服务。

  • SpringCloud是关注全局的微服务协调、整理、治理的框架,它将SpringBoot开发的单体整合并管理起来。

  • SpringBoot可以离开SpringCloud独⽴使⽤开发项⽬,但是SpringCloud离不开 SpringBoot,属于依赖关系。

3 Springcloud与springcloud-alibaba关系

◆ 我们通常说的SpringCloud,泛指Spring Cloud Netflix,也是springcloud第⼀代

◆ SpringCloud Alibaba是SpringCloud的⼦项⽬,是阿⾥巴巴结合⾃身微服务实践,

◆ SpringCloud Alibaba符合SpringCloud标准,依赖于springcloud

四 版本

springboot的版本查看地址:Spring Boot

springcloud的版本查看地址:Spring Cloud

详细版本对应信息 https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

相关文章:

Cloud 微服务

架构 一 单体架构 1 概念 将项⽬所有模块(功能)打成jar或者war,然后部署⼀个进程。 互联网早期,一般的网站应用流量较小,只需一个应用,将所有功能代码都部署在一起就可以,这样可以减少开发、…...

若依前后端分离版,快速上手

哈喽~大家好,这篇来看看若依前后端分离版,快速上手(肝了挺久的)。 🥇个人主页:个人主页​​​​​ 🥈 系列专栏:【Springboot和Vue全栈开发】…...

Java-抽象类、抽象方法

【1】抽象类和抽象方法的关系: 抽象类中可以定义0-n个抽象方法。 【2】抽象类作用: 在抽象类中定义抽象方法,目的是为了为子类提供一个通用的模板,子类可以在模板的基础上进行开发,先重写父类的抽象方法&#xff0c…...

南京--ChatGPT/GPT4 科研实践应用

2023年随着OpenAI开发者大会的召开,最重磅更新当属GPTs,多模态API,未来自定义专属的GPT。微软创始人比尔盖茨称ChatGPT的出现有着重大历史意义,不亚于互联网和个人电脑的问世。360创始人周鸿祎认为未来各行各业如果不能搭上这班车…...

【VRTK】【VR开发】【Unity】7-配置交互能力和向量追踪

【前情提要】 目前为止,我们虽然设定了手模型和动画,还能够正确根据输入触发动作,不过还未能与任何物体互动。要互动,需要给手部设定相应的Interactor能力。 【配置Interactor的抓取功能】 在Hierarchy中选中[VRTK_CAMERA_RIGS_SETUP] ➤ Camera Rigs, Tracked Alias ➤ …...

【JS】Chapter14-深入面向对象

站在巨人的肩膀上 黑马程序员前端JavaScript入门到精通全套视频教程,javascript核心进阶ES6语法、API、js高级等基础知识和实战教程 (十四)深入面向对象 1. 编程思想 1.1 面向过程介绍 面向过程就是分析出解决问题所需要的步骤&#xff0c…...

RabbitMQ消息队列快速入门

RabbitMQ消息队列快速入门 初始MQ MQ全称为Message Queue,即消息队列,是在消息的传输过程中保存消息的容器。它是典型的生产者-消费者模型。 生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。消息的生产和消费都是异步的&am…...

django DRF认证组件

一、学习DRF的认证类; 设计:LoginView不登录就可以访问,UserView和OrderView需要通过认证后才能访问; 1、urls.py urlpatterns [path(login/, views.LoginView.as_view()),path(user/, views.UserView.as_view()),path(order/,…...

操作系统(三)| 进程管理上 进程状态 同步 互斥

目录 1 进程和程序区别 2 进程状态 2.1 进程的5种基本状态 2.2 进程状态之间转换 2.3 七状态模型 3 进程描述 3.1 进程控制块 PCB 3.2 进程块组织方式 4 进程控制 5 进程同步 互斥 5.1 区分进程互斥和同步 5.2 核心方案 5.3 其他方案 方案1 设置锁变量 方案2 严…...

Postman插件如何安装(一)

我们chrome插件网热门推荐的软件之一就是postman。但是postman的适应平台分为:postman chrome应用程序,postman应用程序,postman插件。谷歌应用商店从2018年3月开始停止chrome应用程序的更新。除非继续使用老版本的postman chrome应用程序&am…...

在回调之间共享数据

可以在 App 中为 UI 组件编写回调函数,以指定用户与其交互时的行为方式。 在具有多个相互依赖的 UI 组件的 App 中,回调函数通常必须访问主 App 函数中定义的数据,或与其他回调函数共享数据。例如,如果创建一个具有列表框的 App&a…...

我在CSDN开组会1-蒙特卡洛模拟在矿床学的应用展望

各位老师、同学们,大家好。今天组会的内容是蒙特卡洛模拟在矿床学的应用展望。 为什么要讲蒙特卡洛模拟呢,因为我发现在地质学方面已经有不少应用,但是蒙特卡洛模拟延伸的知识太晦涩了,劝退了很多探究者们。因此,计划…...

Jmeter 性能测试基础!

压力测试 压力测试分两种场景:一种是单场景,压一个接口的;第二种是混合场景,多个有关联的接口。压测时间,一般场景都运行10-15分钟。如果是疲劳测试,可以压一天或一周,根据实际情况来定。 压测任…...

【赠书第6期】MATLAB科学计算从入门到精通

文章目录 前言 1 安装与配置 2 变量定义 3 数据处理 4 绘图 5 算法设计 6 程序调试 7 推荐图书 8 粉丝福利 前言 MATLAB 是一种高级的科学计算和数据可视化平台。它由 MathWorks 公司开发,是科学研究、数据分析和工程实践中非常常用的一种软件工具。本文将…...

Java语言基础第五天

精华笔记: 循环结构: for结构:应用率最高,与次数相关的循环 三种结构如何选择: 先看循环是否与次数相关: 若相关-----------------------------直接上for 若无关,再看要素1与要素3的代码是否相…...

linux网络——HTTPS加密原理

目录 一.HTTPS概述 二.概念准备 三.为什么要加密 四.常⻅的加密⽅式 1.对称加密 2.⾮对称加密 五.数据摘要,数字签名 六.HTTPS的加密过程探究 1.方案一——只使用对称加密 2.方案二——只使⽤⾮对称加密 3.方案三——双⽅都使⽤⾮对称加密 4.方案四——⾮…...

shell 各种括号作用总结

技巧小结: 字符串比较用双中括号[[ ]] 算数比较用单中括号[ ]——左右留空格 算数运算用双小括号(( )) shell命令及输出用小括号( )——左右不留空格 快速替换用花括号{ }——左右留空格 反单引号起着命令替换的作用 一、单括号(): 1、另开命令组——小…...

2023-11-18 mysql-sysbench压测TPS/QPS-记录

摘要: 2023-11-18 mysql-sysbench压测TPS/QPS sysbench压测TPS/QPS 使用 sysbench 压测 TPS/QPS 的基础测试数据是 6 张表,每张表写入 10 万行数据,然后在此基础测试数据上分别进行 300 秒的混合写、更新、删除压测。 sysbench --mysql-host=192.168.41.xxx --mysql-port=3…...

树与二叉树堆:树

目录 树: 树的概念: 树的相关概念: 1、结点的度: 2、叶节点:度为0的节点 3、非终端节点或分支节点: 4、父节点和子节点: 5、兄弟节点: 6、树的度: 7、树的层次或…...

【监控系统】日志可视化监控体系ELK搭建

1.ELK架构是什么 ELK是ElasticsearchLogstashKibana的简称。 Elasticsearch是一个开源的分布式搜索和分析引擎,可以用于全文检索、结构化检索和分析,它构建在Lucene搜索引擎库之上,是当前使用较为广泛的开源搜索引擎之一。 Logstash是一个…...

技术项目学习指南:从初学者到高级开发者的实战项目推荐

技术项目学习指南:从初学者到高级开发者的实战项目推荐 一、项目概述 本文精选了10个不同难度层次的技术项目,涵盖前端、后端、数据分析、移动开发等多个技术领域。每个项目都包含明确的学习目标、核心技术栈、适合阶段以及预期学习成果,帮助…...

AI新闻完整摘要与链接汇总-2026年5月8日

在这个AI技术日新月异的时代,每一天都可能诞生改变世界的突破。2026年5月7日,全球AI领域再次传来重磅消息——欧盟简化AI监管规则、科技巨头资本支出创历史新高、大模型密集更新……让我们一起回顾过去24小时内最值得关注的AI新闻,洞察这场正…...

H公司装配线平衡改进间歇泉算法优化方法【附FlexSim仿真】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,可以私信,或者点击《获取方式》 (1)改进间歇泉喷发策略与逻辑…...

智能体管理系统架构设计:从容器化到消息队列的工程实践

1. 项目概述:从开源项目标题看智能体管理的核心价值 最近在GitHub上看到一个挺有意思的项目,叫“stainlu/openclaw-managed-agents”。光看这个标题,就能嗅到一股浓浓的“智能体管理”和“自动化”的味道。作为一个在自动化运维和智能体开发领…...

杀戮尖塔 1 手机版下载分享2026最新版

《杀戮尖塔》(Slay the Spire)是由 Mega Crit Games 开发的现象级卡牌 Roguelike 游戏,其手机版由官方完整移植,安卓与 iOS 平台均已上线,安卓版曾由腾讯极光计划代理发行,定名《尖塔奇兵》,核心…...

零代码RAG构建与向量数据库操作:从文档到知识的自动化之路

如果你接触过大语言模型(LLM),大概率听过RAG(Retrieval-Augmented Generation,检索增强生成)这个词。简单来说,RAG就是让AI在回答问题之前,先去翻一翻你提供的资料库,找到…...

在Node.js后端服务中接入Taotoken并实现异步聊天补全调用

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在Node.js后端服务中接入Taotoken并实现异步聊天补全调用 对于需要在Node.js后端服务中集成大模型能力的开发者而言,直…...

NeMo AutoModel:基于PyTorch DTensor与SPMD的工业级大模型分布式训练框架

1. 项目概述:NeMo AutoModel,一个为PyTorch大模型训练而生的“工业级加速器”如果你正在用PyTorch和Hugging Face做LLM或VLM的微调、预训练,并且被“如何高效地扩展到多卡、多机”这个问题困扰过,那么NeMo AutoModel就是你一直在找…...

别只盯着ChatGPT,这5款国产AI工具更适合中国开发者

当全球AI竞赛如火如荼,国内大模型生态已悄然完成从追赶到并跑的跨越。对于软件测试从业者而言,选择一款响应迅速、功能精准的AI助手,往往比盲目追随国际品牌更能提升日常生产力。ChatGPT固然强大,但在中文语境理解、本土生态整合、…...

低成本超声波传感器智能化改造:基于PIC12F1840的I2C适配板设计

1. 项目概述:用3美元的传感器实现55美元的功能如果你正在捣鼓一个机器人项目,尤其是那种需要全方位感知周围环境的全向移动平台,那么超声波测距传感器多半在你的采购清单上。市面上最常见的选择无非两种:一种是像SRF04这样&#x…...