Spring Cloud环境搭建

  • 🎥 个人主页:Dikz12
  • 🔥个人专栏:Spring学习之路
  • 📕格言:吾愚多不敏,而愿加学
  • 欢迎大家👍点赞✍评论⭐收藏

目录

1. 开发环境安装

1.1 安装JDK 

​1.2 安装MySQL

2. 案列介绍

2.1 需求

2.2 服务拆分


1. 开发环境安装

1.1 安装JDK 

⽬前⻓期维护的版本有: JDK8,JDK11,JDK17,JDK21。在JDK版本的选择上,尽量选择⻓期维护的版本.这里使用的是JDK17.

为什么使用JDK17 ?

Spring Cloud是基于Spring Boot进⾏开发的,SpringBoot3.X以下的版本,Spring官⽅已不再进⾏维护(还可以继续使⽤),Spring Boot3.X的版本,使⽤的JDK版本基线为JDK17.鉴于JDK21是2023.09⽉发布的,很多功能还没有在⽣产环境验证。
Windows环境

下载JDK:Java Downloads | Oracle 

 下载完成后,双击运行.exe文件,选择自己的安装目录,一路next就行了。

配置环境变量

 1. 配置JAVA_HOME

变量名变量值
JAVA_HOMED:\ProgramFiles\Java\jdk-17

 

2.在Path中添加 JAVA_HOME 的值

在系统环境变量中找到Path,点击编辑->新建,加上变量值 %JAVA_HOME%\bin

3.验证.

在cmd中输⼊ java -version ,确认JDK是否安装和配置成功.

 LInux环境(Ubuntu 20.4) 

1.更新软件包

sudo apt update

2.安装JDK命令

sudo apt install openjdk-17-jdk

 1.2 安装MySQL

 Ubuntu 20.4

1. 查找安装包

apt list |grep "mysql-server"

2.安装mysql

sudo apt install mysql-server

3. 查看mysql状态

sudo systemctl status mysql


 4. 连接mysql服务器

sudo mysql

5. 使⽤alter user 命令修改密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY
'******';

2. 案列介绍

2.1 需求

一个电商平台包含的内容⾮常多,以京东为例,仅从⾸⻚上就可以看到巨多的功能.


如果把这些功能全部写在⼀个服务⾥,这个服务将是巨⼤的.
巨多的会员,巨⼤的流量,微服务架构是最好的选择.
微服务应⽤开发的第⼀步,就是服务拆分.拆分后才能进⾏"各⾃开发".

2.2 服务拆分

拆分微服务—般遵循如下原则:

1. 单一职责原则.

 单⼀职责原则原本是⾯向对象设计中的⼀个基本原则,它指的是⼀个类应该专注于单⼀功能。不要存在多于⼀个导致类变更的原因。⼀个微服务也应该只负责⼀个功能或业务领域,每个服务应该有清晰的定义和边界,只关注⾃⼰的特定业务领域.
2.服务自治

服务⾃治是指每个微服务都应该具备⾼度⾃治的能⼒,即每个服务要能做到独⽴开发,独⽴测试,独⽴构建,独⽴部署,独⽴运⾏.
以上⾯的电商系统为例,每⼀个微服务应该有⾃⼰的存储,配置,在进⾏开发,构建,部署,运⾏和测试时,并不需要过多关注其他微服务的状态和数据。

 3. 单向依赖 

微服务之间需要做到单向依赖,严禁循环依赖,双向依赖
循环依赖:A-> B -> C -> A
双向依赖:A-> B,B -> A

如果⼀些场景确实⽆法避免循环依赖或者双向依赖,就会考虑使⽤消息队列等其他⽅式来实现 

微服务架构并⽆标准架构,合适的就是最好的,不然架构师⼤会也不会各个系统架构百花⻬放了.

在架构设计的过程中,坚持"合适优于业界领先",避免"过度设计"(为了设计⽽设计).

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

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

相关文章

C语言指针超详解——进阶篇

C语言指针系列文章目录 入门篇 强化篇 进阶篇 文章目录 C语言指针系列文章目录1. 字符指针变量2. 数组指针变量2. 1 概念2. 2 数组指针变量的初始化 3. 二维数组传参的本质4. 函数指针变量4. 1 函数指针变量的创建4. 2 指针变量的使用4. 3 两个有趣的代码4. 3. 1 代码一4. 3. …

汽车底盘控制系统Autosar初步接触

最近接触到汽车底盘控制部分,作为小白,原以为汽车底盘也是要自己手敲代码,结果发现完全不是。记录一下最近的学习心得,初步接触东西不全,但可以当作参考。 对于底盘控制部分的简单理解:simulink做汽车底盘的…

大数据技术基础

一、大数据平台 1.大数据平台方案步骤: ①市场上有哪些大数据平台 ②硬件、系统、业务增长等方面 ③方案是否通过 通过后:按照一期目标投入 先虚拟环境部署联系,再实际部署 《大数据架构介绍》《Hadoop架构解析》《Hadoop集群规划》 《H…

PX4 运行 make px4_sitl_default gazebo 报错

报错原因:最开始我把依赖一直都是在base环境下安装的,没有conda deactivate,而pip install的东西应该装在系统环境,不能装在base环境下,sudo apt 是装在系统环境的 1.检查ros 用鱼香ros安装 wget http://fishros.…

南平建网站公司推荐 好用的b2b独立站模板

床品毛巾wordpress独立站模板 床单、被套、毛巾、抱枕、靠垫、围巾、布艺、枕头、乳胶枕、四件套、浴巾wordpress网站模板。 https://www.jianzhanpress.com/?p4065 打印耗材wordpress自建独立站模板 色带、墨盒、碳粉、打印纸、硒鼓、墨盒、墨水、3D打印机、喷头wordpress…

Pr 2024下载安装,Adobe Premiere pro2024剪辑软件下载合集获取

Premiere Pro 2023中文版简称Pr,pr2023是一款视频编辑软件。 pr 2023不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理,还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效…

Sentinel规则持久化Push模式两种实现方式

文章目录 sentinel持久化push推模式微服务端的实现具体实现源码分析读数据源写数据源的实现 微服务端解析读数据源流程 修改源码的实现官方demo修改源码实现配置类flowauthoritydegreadparamsystemgateway修改源码 测试补充 前置知识 pull模式 sentinel持久化push推模式 pull拉…

Pycharm 导入 conda 环境

使用时经常在此处卡壳,在此做个记录。 这个位置选择 conda 安装路径下的 python.exe 文件即可

自学鸿蒙HarmonyOS的ArkTS语言<十>@BuilderParam装饰器

作用:当子组件多处使用时,给某处的子组件添加特定功能 一、初始化 1、只能被Builder装饰的方法初始化 2、使用所属自定义组件的builder方法初始化 3、使用父组件的builder方法初始化 - 把父组件的builder传过去,参数名和子组件的builderPar…

ESP32部署TensorFlow Lite

本来是想找一篇中文教程,不过只看到一个英文官方的,也行吧,虽然效率会慢丢丢。 GitHub - espressif/esp-tflite-micro: TensorFlow Lite Micro for Espressif Chipsets 看了一圈,有个中文的: esp-dl/README_cn.md a…

TS 入门(七):TypeScript模块与命名空间

目录 前言回顾泛型编程1. 模块a. 导入和导出b. 默认导出c. 重命名导入和导出 2. 命名空间a. 定义命名空间b. 嵌套命名空间 3. 动态导入与条件导入a. 动态导入b. 条件导入 结语 前言 在前几章中,我们学习了 TypeScript 的基础知识、函数与对象类型、接口与类、以及泛…

K8S 上部署 Emqx

文章目录 安装方式一:快速部署安装方式二:定制化部署1. 使用 Pod 直接部署 EMQX Broker2. 使用 Deoloyment 部署 Pod3. 使用 Services 公开 EMQX Broker Pod 服务4. 通过 kubernetes 自动集群 EMQX MQTT 服务器5. 修改 EMQX Broker 的配置 安装方式一&am…

Large Language Model系列之二:Transformers和预训练语言模型

Large Language Model系列之二:Transformers和预训练语言模型 1 Transformer模型 Transformer模型是一种基于自注意力机制的深度学习模型,它最初由Vaswani等人在2017年的论文《Attention Is All You Need》中提出,主要用于机器翻译任务。随…

【ollama】ollama运行GLM4-9B和CodeGeeX4-ALL-9B

一、下载GGUF模型 glm-4-9b-chat-GGUFcodegeex4-all-9b-GGUF 使用modelscope下载 先安装 pip install modelscope 命令1 modelscope download --modelLLM-Research/glm-4-9b-chat-GGUF --local_dir . glm-4-9b-chat.Q5_K.gguf命令2 modelscope download --modelLLM-Researc…

昇思25天学习打卡营第02天|张量 Tensor

一、什么是张量 Tensor 张量是一种特殊的数据结构,与数组和矩阵非常相似。张量(Tensor)是MindSpore网络运算中的基本数据结构。 张量可以被看作是一个多维数组,但它比普通的数组更加灵活和强大,因为它支持在GPU等加速…

【D3.js in Action 3 精译_015】1.3 D3 视角下的数据可视化最佳实践(下)

当前内容所在位置 第一部分 D3.js 基础知识 第一章 D3.js 简介 ✔️ 1.1 何为 D3.js?1.2 D3 生态系统——入门须知 1.2.1 HTML 与 DOM1.2.2 SVG - 可缩放矢量图形1.2.3 Canvas 与 WebGL1.2.4 CSS1.2.5 JavaScript1.2.6 Node 与 JavaScript 框架1.2.7 Observable 记事…

<数据集>猫狗识别数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:3686张 标注数量(xml文件个数):3686 标注数量(txt文件个数):3686 标注类别数:2 标注类别名称:[cat, dog] 序号类别名称图片数框数1cat118811892dog24982498 使用标…

美团看向7亿老铁的钱包,王莆中还有底牌吗?

文:互联网江湖 作者:刘致呈 7月12日,快手、美团宣布战略合作全面升级,未来三年快手美团合作范围将扩大至全国的“百城万店”。 数据上,过去双方的合作是有正向结果的。 美团商家在快手平台的GMV同比提升超38倍&…

FPGA CFGBVS 管脚接法

说明 新设计了1个KU040 FPGA板子,回来之后接上JTAG FPGA不识别。做如下检查: 1、电源测试点均正常; 2、查看贴片是否有漏焊,检查无异常,设计上NC的才NC; 3、反复检查JTAG接线是否异常,贴片是…

关于R语言单因素与多因素线性回归的平均值.

🏆本文收录于《CSDN问答解答》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&…