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

Springcloud笔记(1)-微服务和springcloud介绍

微服务简介


就是将一个大的应用,拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以
进行交互,这就是微服务对于微服务,业界没有严格统一的定义,但是作为“微服务”这名词的发明人,Martin Fowler对微服务的定义似乎更具有权威性和指导意义,他的理解如下:
简而言之,微服务架构的风格,就是将单一程序开发成一个微服务,每个微服务运行在自己的进程中,并使用轻量级通信机制,通常是HTTP RESTFUL API。这些服务围绕业务能力来划分构建的,并通过完全自动化部署机制来独立部署这些服务可以使用不同的编程语言,以及不同数据存储技术,以保证最低限度的集中式管理。

微服务是一个理念,不是专指springcloud。

微服务架构的常见解决方案

 ServiceComb-华为

SpringCloud

SpringCloud Alibaba

微服务部署自动化

微服务架构的程序有多个服务,使得手动部署很复杂。

微服务一般采用CICD持续集成进行自动化部署。

Springcloud简介

Spring cloud是Java语言的微服务框架,它依赖于Spring Boot,有快速开发、持续交付和容易部署等特点。Spring cloud的组件非常多,涉及微服务的方方面面,井在开源社区Spring和Netfilx、Pivotal两大公司的推动下越来越完善,如今alibaba也加入到其中。

Spring Cloud在开发部署上继承了Spring Boot的一些优点,提高其在开发和部署上的效
率。Spring cloud的首要目标就是通过提供一系列开发组件和框架,帮助开发者迅速搭建
一个分布式的微服务系统。

Spring Cloud是通过包装其他技术框架来实现的,例如包装开源的Netflix×oss组件,实现了一套通过基于注解、Java配置和基于模版开发的微服务框架。

Spring cloud提供了开发分布式微服务系统的一些常用组件,例如服务注册和发现、配置中心、熔断器、远程调用,智能路由、微代理、控制总线、全局锁、分布式会话等。

Springcloud常用组件

有多个是因为spring、netflix、alibaba不同公司的
服务的注册和发现。(eureka,nacos,consul)
服务的负载均衡。(ribbon,dubbo)
服务的相互调用。(openFeign)
服务的容错。(hystrix,sentinel)
服务网关。(gateway,zuul)
服务配置的统一管理。(config-server,nacos,apollo)
服务消息总线。(bus)
服务安全组件。(security,Oauth2.0)
服务监控。(admin)(jvm)
链路追踪。(sleuth、zipkin、skywalking)

springcloud alibaba

SpringCloudAlibaba | Spring Cloud Alibaba (aliyun.com)

Spring Cloud Alibaba是一个基于Spring Boot和Spring Cloud的分布式微服务框架,用于构建高性能、高可用性的微服务应用程序。它提供了丰富的中间件和扩展组件,如Nacos、Sentinel、Dubbo、RocketMQ等,以及一些最佳实践和规范,帮助开发者快速搭建和扩展微服务架构。

Spring Cloud Alibaba的主要特点包括:

  1. 快速集成:Spring Cloud Alibaba可以快速集成到现有的Spring Boot项目中,只需添加相关依赖和配置即可。
  2. 丰富的中间件:Spring Cloud Alibaba提供了丰富的中间件和扩展组件,包括服务注册与发现(Nacos)、熔断器(Sentinel)、分布式事务(Seata)、分布式消息(RocketMQ)等。
  3. 微服务支持:Spring Cloud Alibaba支持多种微服务架构,包括Dubbo、Spring Cloud、gRPC等,可以灵活地根据项目需求选择合适的微服务框架。
  4. 高性能:Spring Cloud Alibaba基于Netty、Hessian等高性能框架,具备高并发、低延迟的特点。
  5. 最佳实践和规范:Spring Cloud Alibaba提供了大量的最佳实践和规范,帮助开发者更好地设计和开发微服务应用程序。

总之,Spring Cloud Alibaba是一个非常优秀的分布式微服务框架,适用于Java开发者构建高性能、高可用性的微服务应用程序。

总结

SpringCloud是微服务理念的一种具体落地实现方式,帮助微服务架构提供了必备的功能
目前开发中常用的落地实现有三种:
Dubbo+Zookeeper半自动化的微服务实现架构(别的管理没有)
SpringCloud Netflix一站式微服务架构
SpringCloud Alibaba新的一站式微服务架构
三大公司
Spring Netflix Alibaba

参考:动力节点SpringCloud实战视频教程|自学必备的springcloud+springcloudAlibaba教程_哔哩哔哩_bilibili

相关文章:

Springcloud笔记(1)-微服务和springcloud介绍

微服务简介 就是将一个大的应用,拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以 进行交互,这就是微服务对于微服务,业界没有严格统一的定义,但是作为“微服务”这名词的发明人,…...

十六、代码校验(4)

本章概要 调试 使用 JDB 调试图形化调试器 调试 尽管聪明地使用 System.out 或日志信息能给我们带来对程序行为的有效见解,但对于困难问题来说,这种方式就显得笨拙且耗时了。 你也可能需要更加深入地理解程序,仅依靠打印日志做不到。此时…...

【已解决】No Python at ‘D:\Python\python.exe‘

起因,我把我的python解释器,重新移了个位置,导致我在Pycharm中的爬虫项目启动,结果出现这个问题。 然后,从网上查到了这篇博客: 【已解决】No Python at ‘D:\Python\python.exe‘-CSDN博客 但是,按照上述…...

蓝桥杯双周赛算法心得——数树数(dfs)

大家好,我是晴天学长,一个简单的dfs思想,需要的小伙伴可以关注支持一下哦!后续会继续更新的。 1) .数树数 2) .算法思路 代码的主要逻辑是: 1.使用Scanner读取输入的整数n和q,其中n表示测试用例的数量&am…...

综述:大规模小目标检测

论文地址: Towards Large-Scale Small Object Detection: Survey and Benchmarks​arxiv.org/abs/2207.14096 目录 摘要 1.Introduction 1.1 与之前综述的比较 1.2 总结 2.小目标检测回顾 2.1 问题定义 2.2 主要挑战 2.3 小目标检测算法回顾 3.小目标检测的数据集 …...

ORACLE XXX序列 goes below MINVALUE 无法实例化的处理办法

--序列增加区分 --删除未使用序列表 DECLARE V_CNT INT; BEGINSELECT COUNT(*) INTO V_CNT FROM USER_SEQUENCES WHERE SEQUENCE_NAME SEQ_INTELLECT_BIZ_DETAIL_ID;IF V_CNT1 THEN BEGINEXECUTE IMMEDIATE DROP SEQUENCE SEQ_INTELLECT_BIZ_DETAIL_ID;END;END IF; END; / ---…...

6款流程图制作软件:一站式指南

流程图是一种常用的图示工具,可以帮助我们更清晰地表达和展示流程、流程图等内容。在今天已经变得非常普及和便捷,接下来本文将于大家分享6款好用的流程图软件,一起来看看吧! 博思白板boardmix 博思白板boardmix是一款基于浏览器…...

第三章:Python中的序列(上)

Python中的序列 是一种有序的数据结构,通常用于存储一组相关的元素。Python中的序列包括列表(list)、元组(tuple)和字符串(string)。 1. 列表 是最常用的序列类型,它是可变的(即可以添加、删除和修改元素)。列表中的元素可以是任何类型,包括其他列表或元组。列表…...

使用.NET实现WOL唤醒远程开机

文章目录 1. 背景2. 关于 WOL2.1 WOL 工作原理2.2 开启网卡唤醒功能 3. 快速验证3.1 局域网 Wake on Lan 应用3.2 Ubuntu 的 etherwake 命令4. 代码实现4.1 创建.NET控制台应用程序4.2 编写代码4.3 运行应用程序 5. 最后 1. 背景 家居自动化是现代智能家居的重要组成部分&…...

适用于 Golang 的任务调度程序 AGScheduler

以前一直使用 Python 的任务调度库 APScheduler(支持任务持久化,支持多种存储方式),但由于没有找到和它功能和使用方式类似的 Golang 库,所以模仿 APScheduler 3.x 写了个简易版本的 AGScheduler。 AGScheduler Advan…...

【HCIP】HCIA复习

目录 大纲 情景代入 访问百度/谷歌服务器的准备工作 1、计算机网络发展第一阶段人机交互的加工过程 2、OSI参考模型 3、TCP/IP参考模型 访问谷歌(百度)服务器的流程 1、主机需要一个IP地址才能上网(本场景中通过DHCP服务获取IP地址&a…...

【Python小项目之Tkinter应用】【实用工具】实现手写签名器,可选线条粗细,支持清空、撤销、恢复功能,可将写好的签名保存成图片

文章目录 前言一、实现思路二、关键代码三、完整代码总结同系列项目文章:前言 老规矩,先看效果: 在手写签名窗口中,用户可以选择线条粗细来签名,点击清空按钮可以清空画布,点击撤销按钮可以撤销一笔,点击恢复按钮可以撤销上一步进行的清空或撤销操作,点击保存按钮可以…...

Jenkins集成newman

一、Docker环境准备 二、Jenkins环境准备 三、登录Jenkins 安装NodeJs插件 四、Jenkins全局工具配置Nodejs 五、创建Jenkins自由风格项目 构建步骤1:选择Execute NodeJS script构建步骤2:选择执行shell脚本 六、将postman相关的脚本、环境变量数据、全局…...

Excel——对其他工作表和工作簿的引用

一、引用其他sheet页表区域 若希望在公式中引用其他工作表的单元格区域,可以在公式编辑状态下,通过鼠标单击相应的工作表标签,然后选择相应的单元格区域。 例1 跨sheet页引用其他工作表区域 如图1所示的工作表Sheet2为工资表。 在Sheet1表…...

如何正确的防止服务器被攻击?103.216.153.x

网站服务器被攻击是新建网站常常发生的事情,对于新手来说这也是非常棘手的问题。那么一旦遇到这样的情况,我们需要如何解决呢?怎么才能防止服务器被攻击,怎么保障自己网站信息的安全,如果发现被攻击又该怎么做呢&#…...

本地生活将成快手新的营收增长点

监制 | 何玺 排版 | 叶媛 快手本地生活开始强化B端市场。 据了解,快手 “本地商家”APP已经正式上线。这是快手为本地生活商家推出的独立工作平台,有助于商家提升经营效率。 新APP的上线,标志着快手本地生活业务布局,正从过去侧…...

信息化工程测试验收管理制度

1、总则 1.1、目的 为规范XXXXX单位的信息系统建设和工程项目测试验收准则,特制订本管理制度。 1.2、范围 本制度适用于XXXXX单位工程测试验收管理。 1.3、职责 信息系统建设和其他信息系统工程类项目的测试和验收主要由项目负责人负责,必要的时候…...

解决vue2设置cross-env设置环境变量不起作用问题

1. 配置package.json package.json的scripts里增加打包脚本 "build-app": "cross-env VUE_APP_LOGIN_VALUEapp NODE_OPTIONS--max_old_space_size4096 node build/build.js",2.配置webpack.prod.conf.js webpack.prod.conf.js的plugins里增加脚本 new …...

Pandas 入门指南

当涉及到数据处理和分析的任务时,Pandas(Python Data Analysis Library)是一款不可或缺的工具。Pandas提供了强大的数据结构和数据操作功能,使得处理和分析结构化数据变得更加容易。在这篇技术博客中,我们将总结Pandas…...

单链表---结构体实现

定义 链表称为线性表的链式存储,顺序表逻辑上相邻的数据,存储位置也相邻。链表逻辑上相邻的数据,存储位置是随机分布在内存的各个位置上的。 故 对于每一个结点,定义的结构体是: typedef struct _LinkNode {int d…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...

Python Ovito统计金刚石结构数量

大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

Ubuntu Cursor升级成v1.0

0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开&#xff0c;快捷键也不好用&#xff0c;当看到 Cursor 升级后&#xff0c;还是蛮高兴的 1. 下载 Cursor 下载地址&#xff1a;https://www.cursor.com/cn/downloads 点击下载 Linux (x64) &#xff0c;…...

【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验

Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL

ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

React核心概念:State是什么?如何用useState管理组件自己的数据?

系列回顾&#xff1a; 在上一篇《React入门第一步》中&#xff0c;我们已经成功创建并运行了第一个React项目。我们学会了用Vite初始化项目&#xff0c;并修改了App.jsx组件&#xff0c;让页面显示出我们想要的文字。但是&#xff0c;那个页面是“死”的&#xff0c;它只是静态…...