第一节:微服务介绍和项目搭建

SpringCloud微服务第1章之项目搭建 高可用:与传统的单机系统比,它的可用性高。举个例子说明下:单机系统如果挂了,那么整个系统的服务就不能提供服务了,这给使用它的商家带来很大的经济损失。而微服务不同,某个服务挂了,可能并不会影响其它微服务继续对外提供服务。而且新开发的功能点或更改的功能点集中在一个服务上面,即使部署上线出了问题,也不会影响其它服务的业务。 松耦合:无论是在开发阶段或部署阶段都是独立的,富有单一职责原则之称,从而保障高可用。 模块化:它将一个整体应用程序分解成一系列服务,每个模块都有它相应的职责,提高了维护与扩展性。在分工方面也有 阅读详情

学习资料来源于视频:https://www.bilibili.com/video/BV1LQ4y127n4


微服务技术对比

DubboSpringCloudSpringCloudAlibaba
注册中心zookeeper、RedisEureka、ConsulNacos、Eureka
服务远程调用Dubbo协议Feign(http协议)Dubbo、Feign
配置中心无SpringCloudConfigSpringCloudConfig、Nacos
服务网关无SpringCloudGateway、ZuulSpringCloudGateway、Zuul
服务监控和保护dubbo-admin,功能弱Hystrix(服务保护技术)Sentinel

Dubbo早在2012年开源的,不是一个完善的微服务技术,主要用于远程调用,配置中心、服务网关都没有实现。

SpringCloud整合了很多著名的微服务技术,形成了一套完整的微服务技术体系,有完善的服务注册中心,还实现了专业的配置中心SpringCloudConfig,也提供了Hystrix服务保护技术(隔离,熔断、降级)。

SpringCloudAlibaba是在SpringCloud的基础上的,实现了自己的注册中心Nacos,支持了Dubbo和Feign两种方式的调用。

认识SpringCloud

Spring Cloud provides tools for developers to quickly build some of the common patterns in distributed systems (e.g. configuration management, service discovery, circuit breakers, intelligent routing, micro-proxy, control bus, one-time tokens, global locks, leadership election, distributed sessions, cluster state).

官方介绍:Spring Cloud为开发者提供了工具,可以快速构建分布式系统中的一些常见模式(例如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态)。

SpringCloud集成了各种微服务功能组件,并基于Springboot实现了这些组件的自动装配,从而提供了良好的开箱即用体验

微服务拆分注意事项

1.不同的微服务,不要重复开发相同的业务

2.微服务数据独立,不要访问其他微服务的数据库

3.微服务可以将自己的业务暴露为接口,供其他微服务调用。

项目初始化

导入项目:https://gitee.com/lookoutthebush/cloud-demo

在这里插入图片描述

导入项目,项目中只有两个子项目,order-service和user-service,我把他上传到了gitee

创建数据库表:

需要创建2个数据库,cloud_user和cloud_order。两个数据库的初始化sql放到了sql文件夹下。

记得改写各自项目下的数据库配置。\color{#ff0000}{记得改写各自项目下的数据库配置。}记得改写各自项目下的数据库配置。

启动项目:

在这里插入图片描述

在services下,选中两个启动项,然后启动。

访问

两个项目的端口号分别是8080和8081,分别访问http://localhost:8081/user/2和http://localhost:8080/order/101验证项目构建成功。

SpringCloud微服务入门:使用idea搭建第一个微服务项目 (一)什么是微服务? 在了解什么是SpringCloud之前,我们有必要去了解一下什么是微服务。在传统的项目中,我们都是把所有的代码都放在一个单体应用中,这种方式配置方便,可以很好的运行部署,但是随着项目越来越大,这个单体应用就会越来越臃肿,再加上一个项目中融合了许多人不同的代码,可维护性越来越低。以至于现在一些企业的项目中所用到的代码还是很早期的框架和代码风格。这个时候,一种叫做微服务的架构方式出现了。 有人对微服务做了这样一个定义:“微服务架构是一种将单个应用程序开发为一组小服务的方法,每个小服务都 阅读详情

相关推荐

详细对比模型训练和模型精调

当我们进行模型精调(Fine-Tuning)和模型训练时,我们需要考虑到不同的步骤和目标。

pumpkin84514的博客 1852

SpringCloud分布式微服务新零售电商平台项目实战教程(附源码)

该项目是采用目前比较流行的SpringBoot/SpringCloud构建微服务电商项目,项目叫 《果然新鲜》,实现一套串联的微服务电商项目。完全符合一线城市微服务电商的需求,对学习微服务电商架构,有非常大的帮助,该项目涵盖从微服务电商需求讨论、数据库设计、技术选型、互联网安全架构、整合SpringCloud各自组件、分布式基础设施等实现一套完整的微服务解决方案。 项目使用分布式微服务框架,涉及后台管理员服务、地址服务、物流服务、广告服务、商品服务、商品类别服务、品牌服务、订单服务 、购物车服务、首页频道服务、公告服务、留言服务、搜索服务、会员服务等。  系统架构图   SpringBoot+SpringCloud+SSM构建微服务电商项目使用SpringCloud Eureka作为注册中心,实现服务治理使用Zuul网关框架管理服务请求入口使用Ribbon实现本地负载均衡器和Feign HTTP客户端调用工具使用Hystrix服务保护框架(服务降级、隔离、熔断、限流)使用消息总线Stream RabbitMQ和 Kafka微服务API接口安全控制和单点登录系统CAS+JWT+OAuth2.0分布式基础设施构建分布式任务调度平台XXL-JOB分布式日志采集系统ELK分布式事务解决方案LCN分布式锁解决方案Zookeeper、Redis分布式配置中心(携程Apollo)高并发分布式全局ID生成(雪花算法)分布式Session框架Spring-Session分布式服务追踪与调用链Zipkin项目运营与部署环境分布式设施环境,统一采用Docker安装使用jenkins+docker+k8s实现自动部署微服务API管理ApiSwagger使用GitLab代码管理(GitHub  GitEE)统一采用第三方云数据库使用七牛云服务器对静态资源实现加速 开发环境要求JDK统一要求:JDK1.8Maven统一管理依赖 统一采用Docker环境部署编码统一采用UTF-8开发工具IDEA 或者 Eclipse 

DataWorks数据安全治理最佳实践

DataWorks基于数据安全治理的常见思路,针对资产梳理、技术体系建设和运营体系建设,提供了一系列数据安全产品能力,您可通过“基础防护建设、数据安全防护措施及策略增强建设、数据安全持续运营”三个阶段在DataWorks上落地数据安全治理项目。参考本文启动数据安全治理项目前,建议您先了解DataWorks数据安全产品相关能力了解DataWorks数据安全产品能力后,您可参考如下三个阶段在DataWorks上落地数据安全治理项目。

soso1968的博客 1437

微服务知识以及项目实战

01-Spring Boot 快速入门 Spring Boot 简介 Spring 作为一个软件设计层面的框架,在 Java 企业级开发中应用非常广泛,但是 Spring 框架的配置非常繁琐,且大多是重复性的工作,Spring Boot 的诞生就解决了这一问题,通过 Spring Boot 可以快速搭建一个基于 Spring 的 Java 应用程序。Spring Boot 对常用的第三方库提供了配置方案,可以很好地与 Spring 进行整合,如 MyBatis、Spring Data JPA 等,可以一键式

qq_44774200的博客 6713

分子模拟入门教程 | 低调使用 建议收藏

该方法只需要原子的核电荷和少数模拟的环境参数作为输入,所有的性质都是通过求解薛定谔方程得到的,不需要使用任何经验参数。经典的原子水平的分子模拟已经成为提高我们对材料科学和生命系统中分子过程理解的最流行的方法之一。全原子模拟是一种非常强大的以原子分辨率呈现信息的方法,因为在原子模拟中,一个粒子代表一个特定的原子。随着计算机硬件和模拟技术的快速发展,分子模拟不仅可以解决基本的、常规的化学问题,还可以应用于各种复杂体系。然而,由于问题的复杂性以及严重依赖于现象的现实情况,最好是逐案确定合适的模拟方法。

pysonger的博客 782

【详细】芯片设计全流程(包括每个流程需要用到的工具以及需要参与的工作人员)

一颗芯片的诞生经历了设计、制造和测试(分别对应集成电路产业链的设计业、制造业和封测业),而每一步都包含了复杂的步骤和流程。 图0-1 集成电路产业链 现在,我们重点介绍芯片设计的全流程以及每个流程需要用到的设计工具和需要参与的工作人员。 一、IC设计分类 首先对IC设计的分类做个介绍,如图1-1所示。 图1-1 IC设计分类 如图1-1所示,IC设计可以粗分为数字IC设计和射频/模拟IC设计,数字IC设计又可分为ASIC设计和FPGA/CPLD设计,此外还有一部分IC设计.

qq_36045093的博客 8万+

【推荐】6款热门的SpringCloud微服务开源项目

新手学习-推荐-微服务项目开源-6款热门的SpringCloud微服务开源项目

不抛弃、不放弃:Aaron莫言 3408

单细胞拟时序分析实战:用monocle2从Seurat对象构建细胞轨迹(附完整代码)

本文提供了一套完整的单细胞拟时序分析实战教程,详细讲解了如何将Seurat对象转换为Monocle2的CellDataSet,并构建细胞命运轨迹。内容涵盖数据转换、轨迹定义基因选择、降维参数调优、可视化技巧及结果生物学验证,旨在帮助研究者解决实际分析中的常见问题,从静态细胞图谱中挖掘动态发育过程。

weixin_29251337的博客 342

SpringCloud微服务项目实战(一)---搭建SpringBoot项目

问题:新建子模块后,pom文件的图标是xml文件标识,而不是m标识,而且目录结构是com-xxx-xxx这样一层一层的,而不是package包名一起的解决:idea工作台左侧右键pom文件,点击Add As Maven Project,如下图问题:删除子模块后,再新增同样名称的子模块,pom文件不生效且出现了删除线。解决:File–Settings–Build–Maven–IgnoredFiles中将对勾取消,如下图。

xiaobai178的博客 6019

GEE 案例分析:利用Landsat数据进行FAI、NDVI及CHLA分析并统计平均值(巢湖为例)

浮游藻类指数(FAI)、归一化植被指数(NDVI)及叶绿素a(CHLA)是水体环境监测的重要指标。本文利用Google Earth Engine(GEE)平台,基于Landsat 5和Landsat 8数据,进行水体藻类及植被监测。

此星光明博客 1336

SOME/IP协议详解「1.1·面向服务与面向信号」

面向信号和面向服务的区别,和举例子

雪云飞星的博客 5651

微服务项目搭建流程

项目使用微服务架构搭建的优点: 1. 大型应用程序的复杂性 当应用程序变得越来越复杂时,单体架构会变得越来越难以维护和扩展。Java微服务架构可以将应用程序分解为多个小型服务,每个服务专注于一个特定的功能,可以独立开发、测试、部署和扩展,从而降低应用程序的复杂性。 2. 高并发和高可用性 当应用程序需要处理高并发请求时,单体架构可能会出现性能问题和单点故障。Java微服务架构可以将负载均衡、故障转移、自动扩展等功能集成到服务中,从而提高应用程序的可用性和可扩展性。

qq_42715683的博客 3936

自然语言处理在智能客服系统中的应用

引言与背景 1.1 书籍的目的和内容概述 《自然语言处理在智能客服系统中的应用》旨在探讨自然语言处理(NLP)技术在智能客服系统中的应用,帮助读者理解NLP的核心概念及其在解决实际业务问题中的关键作用。随着人工智能技术的快速发展,自然语言处理成为构建智能客服系统的核心模块之一。本书将深入解析NLP

AI天才研究院 966

探索微服务架构的宝库:microservices-patterns 项目推荐

探索微服务架构的宝库:microservices-patterns 项目推荐 项目介绍 microservices-patterns 是一个开源项目,旨在为开发者提供一个全面的微服务架构实践指南。该项目不仅包含了 Chris Richardson 所著的《Microservices Patterns》一书的源代码,还整合了 Eventuate Tram 框架的个人学习笔记,为 Spring Boo...

gitblog_00093的博客 1864

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【微服务-SpringCloud】详细介绍,搭建一套微服务项目

微服务(Microservices)是一种软件架构风格,它将一个大型的应用程序分解成一系列小的、自治的服务单元。每个服务单元都围绕着特定的业务能力构建,可以独立部署、运行和扩展,它们之间通过API(通常采用HTTP RESTful API)进行轻量级通信。这种架构风格强调服务的松耦合、高内聚和业务领域的边界清晰。Spring Cloud是Spring家族中的一个项目,它为开发人员提供了一套全面的工具和框架,用于快速构建分布式系统和微服务架构。

分享学习 4219

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

20分钟上手微服务开发!GoogleCloudPlatform/microservices-demo本地环境搭建指南

GoogleCloudPlatform/microservices-demo 是 Google 开源的微服务示例项目,展示了如何使用 Google Cloud Platform 构建微服务应用。本指南将帮助你在20分钟内完成本地环境搭建,快速体验微服务架构的魅力。 ## 📋 准备工作:环境要求 在开始前,请确保你的系统已安装以下工具: - [Docker for Desktop](http

gitblog_01120的博客 975

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

开源项目教程:Microservices

开源项目教程:Microservices 项目介绍 本项目是一个基于微服务架构的开源项目,旨在帮助开发者理解和实现微服务架构。项目地址为:https://github.com/jeffbski/microservices.git。通过本项目,开发者可以学习到如何将一个大型应用拆分为多个小型、独立的服务,并实现它们之间的通信和协作。 项目快速启动 环境准备 Node.js (版本 >= 12...

gitblog_00854的博客 991

如何快速部署 microservices-demo:5分钟搭建微服务演示环境

microservices-demo 是一个微服务Demo项目,展示了微服务架构如何在实际场景中工作。此项目包含了一系列相互协作的微服务以及相应的部署、网络和数据模型示例,非常适合初学者了解和实践微服务架构。 ## 📋 准备工作 在开始部署之前,请确保你的环境中已经安装了以下工具: - Git - Docker - Docker Compose 如果你还没有安装这些工具,可以参考官方文档进

gitblog_00073的博客 446

PHP微服务新星:Jin-microservices全面解析与应用推荐

PHP微服务新星:Jin-microservices全面解析与应用推荐 随着微服务架构在软件开发界的兴起,PHP开发者也迎来了新的挑战与机遇。Jin-microservices正是在此背景下诞生,它是一个基于PHP语言和高性能的Hyperf微服务框架的实战级示例项目,旨在填补PHP微服务领域高质量示例的空白。今天,让我们深入探索这个项目,看看它是如何将PHP带入微服务的新纪元。 项目介绍 Jin-...

gitblog_01100的博客 993

Spring Cloud微服务项目搭建

在当今的企业应用开发中,微服务架构越来越受到关注。作为一个用于构建分布式系统的工具集,提供了一整套构建微服务应用的解决方案。本文将详细介绍如何从零开始搭建一个微服务项目。

洛*璃的博客 2695

Reactie Microservices 开源项目指南

Reactie Microservices 开源项目指南 项目介绍 Reactie Microservices 是一个基于现代微服务架构设计的开源项目,由 theiterators 提供并维护。该项目旨在展示如何利用 Reactive Programming(响应式编程)理念和工具构建高效、可扩展的微服务系统。通过集成流行的框架和技术,如 Spring Boot、Project Reactor ...

gitblog_00838的博客 714

Microservices-with-Go:构建高可用微服务架构

Microservices-with-Go:构建高可用微服务架构 项目介绍 Microservices-with-Go 是一本由 Packt Publishing 出版的书籍的代码仓库,旨在帮助开发者利用 Go 语言构建可扩展和可靠的微服务架构。本书深入浅出地介绍了微服务开发中的最佳实践和解决方案,通过实践案例让读者更好地理解和掌握微服务的关键技术。 项目技术分析 本书涵盖了微服务开发中的多个关键...

gitblog_00763的博客 1425

项目推荐:Reactive Microservices

项目推荐:Reactive Microservices 1. 项目基础介绍和主要编程语言 Reactive Microservices 是一个专注于微服务架构的开源项目,由 Typesafe Activator Template 提供支持。该项目的主要编程语言是 Scala,并结合了 Akka 和 Play Framework 等工具,展示了不同微服务通信风格和模式。通过这个项目,开发者可以深入了...

gitblog_00035的博客 963

SpringCloud Alibaba 微服务(一):项目搭建

作为一名开发者,记录学习过程并分享心得是提升自己并帮助他人的有效方式。本文是我学习Spring Cloud Alibaba的第一篇博客,旨在通过记录微服务工程搭建的过程,理解和使用Spring Cloud Alibaba。一、单体应用的痛点难以维护:项目代码量庞大,任何一个小的改动都可能影响整个系统,维护成本高。难以扩展:单体应用难以做到按需扩展,资源利用率低。部署复杂:每次发布都需要将整个应用重新部署,发布周期长且风险大。开发效率低:团队协作开发时,各个模块之间的耦合度高,开发效率受到影响。

分享是一种积极的生活态度~~ 3113

monorepo-microservices:构建微服务架构的核心功能

monorepo-microservices:构建微服务架构的核心功能 项目介绍 在当今微服务架构日益流行的趋势下,如何高效地构建和维护多个服务成为开发者的关注焦点。monorepo-microservices 项目是一个使用 Go 语言实现的示例,展示了如何利用单一代码仓库构建多个微服务。该项目不专注于代码本身,而是侧重于使用 Kubernetes 作为容器编排平台进行服务的部署。项目还尝试引入...

gitblog_00210的博客 1141

探索Go微服务构建的艺术:GitCode上的go-microservices项目详解

探索Go微服务构建的艺术:GitCode上的go-microservices项目详解 在现代软件开发中,微服务架构已经成为分布式系统的首选模式。它将单一应用拆分成一组小型、独立的服务,每个服务都在其自身的进程中运行,并通过轻量级机制(如HTTP/REST)相互通信。今天,我们将会深入探讨一个名为的开源项目,这是一个使用Go语言构建微服务的优秀示例。 项目简介 go-microservices是由开...

gitblog_00023的博客 436
上一篇: Java程序员的重启人生-5.毒丹-选择排序丹
下一篇: 第二节:使用Eureka注册发现
七号公园的忧伤
七号公园的忧伤 新星创作者: Java技术领域 新星创作者: Java技术领域
博客等级 码龄6年 4857粉丝 79原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七号公园的忧伤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值