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

面试题--SpringCloud

SpringCloud

 SOA 和微服务的区别?(必会)

谈到 SOA 和微服务的区别, 那咱们先谈谈架构的演变

1. 集中式架构 项目功能简单, 一个项目只需一个应用, 将所有功能部署在一起, 这样的架构好处是减 少了部署节点和成本. 缺点: 代码耦合,开发维护困难

2. 垂直拆分架构 当访问量逐渐增大,单一应用无法满足需求,此时为了应对更高的并发和业务需求,我 们根据业务功能对系统进行拆分

优点:  系统拆分实现了流量分担,解决了并发问题  可以针对不同模块进行优化, 方便水平扩展,负载均衡,容错率提高 缺点:  系统间相互独立,会有很多重复开发工作,影响开发效率

3.分布式服务 当垂直应用越来越多, 随着项目业务功能越来越复杂, 并非垂直应用这一条线进行数据 调用, 应用和应用之间也会互相调用, 也就是完成某一个功能,需要多个应用互相调用, 这就 是将功能拆完来完成的分布式架构.

优点: 将基础服务进行了抽取,系统间相互调用,提高了代码复用和开发效率 缺点: 系统间耦合度变高,调用关系错综复杂,难以维护.

服务治理架构 SOA SOA 

面向服务的架构 当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调 度中心基于访问压力实时管理集群容量,提高集群利用率。此时,用于提高机器利用率的资 源调度和治理中心(SOA)是关键, 而最初的服务治理基石是 Dubbo 服务治理

以前分布式服务的问题?

 服务越来越多,需要管理每个服务的地址, 调用关系错综复杂,难以理清依赖关系  服务过多,服务状态难以管理,无法根据服务情况动态管理 SOA 服务治理架构的优点:  服务注册中心,实现服务自动注册和发现,无需人为记录服务地址  服务自动订阅,服务列表自动推送,服务调用透明化,无需关心依赖关系  动态监控服务状态监控报告,人为控制服务状态

SOA 服务治理架构的缺点: 服务间依然会有依赖关系,一旦某个环节出错会影响较大(容错机制)  服务关系复杂,运维、测试部署困难,不符合开发-运维一站式维护的思想

微服务

前面说的 SOA,英文翻译过来是面向服务。

微服务,似乎也是服务,都是对系统进行 拆分。因此两者非常容易混淆,但其实缺有一些差别: 微服务的特点:

 单一职责:微服务中每一个服务都对应唯一的业务能力,做到单一职责.

 微:微服务的服务拆分粒度很小,例如一个用户管理就可以作为一个服务。每个服 务虽小,但“五脏俱全”。

 面向服务:面向服务是说每个服务都要对外暴露 Rest 风格服务接口 API。并不关心 服务的技术实现,做到与平台和语言无关,也不限定用什么技术实现,只要提供 Rest 的接口即可。

 自治:自治是说服务间互相独立,互不干扰  团队独立:每个服务都是一个独立的开发团队,人数不能过多。

 技术独立:因为是面向服务,提供 Rest 接口,使用什么技术没有别人干涉

 前后端分离:采用前后端分离开发,提供统一 Rest 接口,后端不用再为 PC、 移动段开发不同接口

 数据库分离:每个服务都使用自己的数据源

 部署独立,服务间虽然有调用,但要做到服务重启不影响其它服务。有利于持 续集成和持续交付。每个服务都是独立的组件,可复用,可替换,降低耦合, 易维护. 基于 docker 容器是开发.

SpringCloud 是什么?(了解)

SpringCloud 是一系列框架的集合,集成 SpringBoot,提供很多优秀服务:服务发现 和注册,统一配置中心, 负载均衡,网关, 熔断器等的一个微服务治理框架.

SpringCloud 的优势?(了解) 

因为 SpringCloud 源于 Spring,所以它的质量,稳定性,持续性都是可以保证的。  SpringCloiud 天热支持 SpringBoot 框架,就可以提高开发效率,能够实现需求。  SpringCloud 更新很快,后期支持很给力。  SpringCloud 可以用来开发微服务。

相关文章:

面试题--SpringCloud

SpringCloud SOA 和微服务的区别?(必会) 谈到 SOA 和微服务的区别, 那咱们先谈谈架构的演变 1. 集中式架构 项目功能简单, 一个项目只需一个应用, 将所有功能部署在一起, 这样的架构好处是减 少了部署节点和成本. 缺点: 代码耦合,开发维护困难 2. 垂直拆分架构 …...

Qt windeployqt 打包的Qt动态库介绍

前言 在 Windows 平台,通常使用 Qt 的工具 windeployqt 将可执行文件的相关 Qt 依赖项部署到当前路径下。 Windows windeployqt 部署工具 Windows 部署工具 windeployqt 旨在自动化创建一个可部署文件夹的过程,该文件夹包含运行应用程序所需的 Qt 相关…...

WordPress付费进群V2主题,多种引流方法,引私域二次变现

全新前端UI界面,多种前端交互特效让页面不再单调,进群页面群成员数,群成员头像名称,每次刷新页面随机更新不重复,最下面评论和点赞也是如此随机刷新不重复 进群页面简介,群聊名称,群内展示&…...

【Linux】性能分析器 perf 详解(三):kmem、mem

上一篇:【Linux】性能分析器 perf 详解(二) 1、perf kmem 1.1 简介 kmem 用于跟踪/测量内核内存属性的工具,如分配、释放、碎片率等。可以帮助开发者和系统管理员理解内核内存的分配和释放模式,从而诊断内存泄漏、过度分配等问题。 功能: 跟踪内存分配和释放:监控内…...

微信小程序怎样跳转页面?

在微信小程序中,页面跳转通常使用 wx.navigateTo、wx.redirectTo、wx.switchTab、wx.navigateBack 以及 wx.reLaunch 等API。这些API提供了不同的页面跳转方式,适用于不同的场景。 以下是这些API的详细代码示例和说明: 1.wx.navigateTo&…...

针对SVN、GIT版本管理工具进行源代码加密保护

针对SVN、GIT版本管理工具进行源代码加密保护 在软件开发过程中,版本管理工具如SVN和GIT是不可或缺的组成部分,它们帮助团队管理源代码的变更和版本。然而,这些工具也面临着源代码泄露的安全风险。如果不针对数据进行加密保护,很…...

js条件引用

在JavaScript中,条件引用模块通常涉及到在运行时根据条件判断来决定是否加载某个模块。这在某些情况下非常有用,比如在不同环境下使用不同的模块,或者在某些特定条件下才需要某个模块的功能。 以下是几种在JavaScript中实现条件引用的方法&a…...

帝国CMS(EmpireCMS)漏洞复现

简介 《帝国网站管理系统》英文译为Empire CMS,简称Ecms,它是基于B/S结构,且功能强大而帝国CMS-logo易用的网站管理系统。 帝国CMS官网:http://www.phome.net/ 参考相关漏洞分析文章,加上更详细的渗透测试过程。 参考…...

DP:解决路径问题

文章目录 二维DP模型如何解决路径问题有关路径问题的几个问题1.不同路径2.不同路径Ⅱ3.下降路径最小和4.珠宝的最高价值5.地下城游戏 总结 二维DP模型 二维动态规划(DP)模型是一种通过引入两个维度的状态和转移方程来解决复杂问题的技术。它在许多优化和…...

Halcon OCR字符识别(极坐标转换,字符识别)

Halcon OCR字符识别(极坐标转换,字符识别) 代码 * 1.加载图片 *************************************************** dev_close_window () read_image (Image, ./img) get_image_size (Image, Width, Height) dev_get_window (WindowHandle…...

【管理咨询宝藏139】某大型快消集团公司多渠道销售管理体系方案

本报告首发于公号“管理咨询宝藏”,如需阅读完整版报告内容,请查阅公号“管理咨询宝藏”。 【管理咨询宝藏139】某大型快消集团公司多渠道销售管理体系方案 【格式】PDF版本 【关键词】罗兰贝格、营销咨询、战略规划 【核心观点】 - 销售体系建设主要需…...

大模型提问中包括时间的实战方案

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…...

【算法】(C语言):堆排序

堆(二叉树的应用): 完全二叉树。最大堆:每个节点比子树所有节点的数值都大,根节点是最大值。父子索引号关系(根节点为0):(向上)子节点x,父节点(x…...

ffmpeg下载/配置环境/测试

一、下载 1、访问FFmpeg官方网站下载页面:FFmpeg Download Page; 2、选择适合Windows的版本(将鼠标移动到windows端)。通常,你会找到“Windows builds from gyan.dev”或者“BtbN GitHub Releases”等选项&#xff0…...

C# 异步编程详解(Task,async/await)

文章目录 1.什么是异步2.Task 产生背景3.Thread(线程) 和 Task(异步)的区别3.1 几个名词3.2 Thread 与 Task 的区别 4.Task API4.1 创建和启动任务4.2 Task 等待、延续和组合4.3 task.Result4.4 Task.Delay() 和 Thread.Sleep() 区别 5.CancellationToken 和 CancellationToken…...

qt结合vs2022安装

进入清华大学开源软件: 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 下载完成后,双击进行安装: 进入邮箱进行验证: 可能是因为网络问题,无法安装。 重新安装5.12.12版本。 安装后启动失败,重新…...

Kafka集群部署(手把手部署图文详细版)

1.1.1 部署zookpeer 在node02下载并解压zookeeper软件包 cd /usr/local wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz 或者:scp cat192.168.28.100:/home/cat/zookeeper-3.4.6.tar.gz /tmp(注意目录&#xf…...

阿里Qwen2-72B大模型已是开源榜的王者,为什么还要推出其他参数模型,被其他模型打榜?

6 月 27 日,全球知名的开源平台 Hugging Face 的联合创始人兼首席执行官 Clem 在社交平台激动宣布,阿里 Qwen2-72B 成为了开源模型排行榜的王者。 这是一件大好事,说明了我们在大模型领域从先前的追赶,逐渐走向了领导,…...

7.基于SpringBoot的SSMP整合案例-表现层开发

目录 1.基于Restfu1进行表现层接口开发 1.1创建功能类 1.2基于Restful制作表现层接口 2.接收参数 2使用Apifox测试表现层接口功能 保存接口: 分页接口: 3.表现层一致性处理 3.1先创建一个工具类,用作后端返回格式统一类:…...

【server】3、注册中心与配置中心

1、服务注册与发现 1.1、consul 1.1.1 是什么 官网: Consul by HashiCorp spring-cloud-consul: Spring Cloud Consul :: Spring Cloud Consul gitHub 官网 :GitHub - hashicorp/consul: Consul is a distributed, highly available, and data cent…...

【大数据】—量化交易实战案例(海龟交易策略)

声明:股市有风险,投资需谨慎!本人没有系统学过金融知识,对股票有敬畏之心没有踏入其大门,今天用另外一种方法模拟炒股,后面的模拟的实战全部用同样的数据,最后比较哪种方法赚的钱多。 海龟交易…...

014-GeoGebra基础篇-快速解决滑动条的角度无法输入问题

有客户反馈,他的Geogebra一直有个bug,那就是输入角度最大值时总不按照他设定的展示,快被气炸了~ 目录 一、问题复现(1)插入一个滑动条(2)选择Angle(3)输入90,…...

Diffusion模型的微调和引导

留意后续更新,欢迎关注微信公众号:组学之心 Diffusion模型的微调和引导 微调(fine-tuning): 从一个已经训练过的模型开始训练,我们就可以从一个学会如何“去噪”的模型开始训练,相对于随机初始…...

零基础学MySQL:从入门到实践的完整指南

引言: MySQL,作为全球最受欢迎的开源关系型数据库管理系统之一,以其高性能、易用性和灵活性,在Web开发、数据分析等领域占据着举足轻重的地位。如果你是一位编程新手,想要踏入数据库管理的大门,本文将从零…...

澳蓝荣耀时刻,6款产品入选2024年第一批《福州市名优产品目录》

近日,福州市工业和信息化局公布2024年第一批《福州市名优产品目录》,澳蓝自主研发生产的直接蒸发冷却空调、直接蒸发冷却组合式空调机组、间接蒸发冷水机组、高效间接蒸发冷却空调机、热泵式热回收型溶液调湿新风机组、防火湿帘6款产品成功入选。 以上新…...

Frrouting快速入门——OSPF组网(一)

FRR简介 FRR是FRRouting的简称,是一个开源的路由交换软件套件。其作者源自老牌项目quaga的成员,也可以算是quaga的新版本。 使用时一般查看此文档:https://docs.frrouting.org/projects/dev-guide/en/latest/index.html FRR支持的协议众多…...

记录通过Cloudflare部署属于自己的docker镜像源

引言 由于最近国内无法正常拉取docker镜像,然而找了几个能用的docker镜像源发现拉取回来的docker镜像不是最新的版本,部署到Cloudflare里Workers 和 Pages,拉取docker 镜像成功,故记录部署过程。 部署服务 登录Cloudflare后&…...

波动方程 - 在三维图中动态显示二维波动方程的解就像水面波澜起伏

波动方程 - 在三维图中动态显示二维波动方程的解就像水面波澜起伏 flyfish 波动方程的求解结果通常不是一个单一的数值,而是一个函数或一组函数,这些函数描述了波随时间和空间的传播情况。具体来说,波动方程的解可以是关于时间和空间变量的…...

yum命令提示 错误:rpmdb: BDB0113 Thread/process 4153/139708200269632

一、报错信息 [rootDawn yum.repos.d]# yum clean all 错误:rpmdb: BDB0113 Thread/process 4153/139708200269632 failed: BDB1507 Thread died in Berkeley DB library 错误:db5 错误(-30973) 来自 dbenv->failchk:BDB0087 DB_RUNRECOVE…...

欢乐钓鱼大师游戏攻略:在什么地方掉称号鱼?云手机游戏辅助!

《欢乐钓鱼大师》是一款融合了休闲娱乐和策略挑战的钓鱼游戏。游戏中的各种鱼类不仅各具特色,而且钓鱼过程充满了挑战和乐趣。下面将为大家详细介绍如何在游戏中钓鱼,以及一些有效的钓鱼技巧,帮助你成为一个出色的钓鱼大师。 实用工具推荐 为…...