开发订单微服务与注册调用|学习笔记(一)

本文涉及的产品
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
注册配置 MSE Nacos/ZooKeeper,182元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 快速学习开发订单微服务与注册调用

开发者学堂课程【5天突破 Spring Cloud开发订单微服务与注册调用】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/781/detail/13701


开发订单微服务与注册调用

 

内容介绍:

一、引入 Spring Cloud 微服务 API

二、把 Spring Cloud 微服务 API 发布到注册中心

三、结语

 

一、引入 Spring Cloud 微服务 API

image.png

1、基础知识

现已有注册中心,上图中的Eureka可以使用,但是后续的更新维护基本上停掉了,可以作为学习的一个入门点,其中很多经典的思想影响了后续类似的技术,包括concern网络、阿里出的功能实际可以认为是增强版的Eureka,它的功能更强更丰富,但在基础功能两者之间事有很多相似点的。现在有了注册中心,加入单点用于开发和测试环节,正式环境时推荐多点模式,当只有一个注入中心、一个程序的时候,以防程序挂掉,无法提供注册服务、参与服务。

2、微服务基本构架

开发一个服务程序并构建起基本架构。服务程序可以参照训练营课程中的技术去改造,回顾之前课程中提到的问题:做简单的网站开发或者简单的网站后台技术开发,实际上升到微服务架构的问题上。如果公司业务架构具有架构升级的发展需要,典型代表就是微服务架构,微服务程序主要是基于HTTP协议的具有API风格的应用程序后台接口,之前的某些概念依然适用,比如像集群的概念。

拆体现了很重要的分割思想,大型的互联网平台中的很多功能会拆分出来,比如订单、支付、快递、评论、点赞、会员、营销、用户行为数据等接口都可以拆分出来,但是有些接口在后台进行部署的时候,可能会进行数量的更改,可能早期部署两台,后期随着业务增长可能部署100台甚至1000台。

3、典型案例

典型案例就是淘宝,淘宝在创业公司阶段的时候可能只有一两台服务器,业务发展到今天,它的服务器数量达到了上万台,这和其业务规模有很大的关系。同样的,有很多游戏公司也会出现这种典型的场景,发布一款游戏,前期可能只需要几十台游戏服务器,一旦用户量暴增需要随时扩容,比如游戏的接口、游戏语音聊天的接口,接口可以随着用户量的增长而增加。像腾讯开发的一款游戏穿越火线,而腾讯的游戏部门上线了很多游戏,前期可能只有几台服务器,如果没有太多人玩这款游戏,后期就没必要为这款游戏分配服务器,根据业务的不断变化去进行集群规模的提升与伸缩,即弹性集群,可以做到张弛有度,这就是比较好的集群架构。

微服务架构同样如此,开发一个订单服务,前期没有用户的时候,几台服务器就可以满足需求,节约服务器资源,后期用户较多的时候可以进行集群数量的提升,随时需要随时加服务器也可以,如今服务器实例的启动、部署是十分便捷高效的快,这应用了一个很重要的技术doccer,互联网公司普遍使用这种模式。

客户端严格来说实际是不限制程序类型的,可以是APP,也可以是网页小程序或者是其他语言的程序,因为接口写好以后数据格式的协议都是固定的,大家按照这种模式进行交互就可以了。

 

二、把 Spring Cloud 微服务 API 发布到注册中心

1、开发 Spring Cloud 微服务 API

下面进行模拟订单服务,订单服务可以拿之前实战训练营三层架构的订单例子做实验,甚至可以把数据库连接起来,一步步将工作组合。但之前写的spring boot程序和spring cloud 有一部分的区别。

image.pngspring boot是微服务架构学习很重要的基础,如果不理解spring boot,在后面开发的话也很困难,很多功能、组件无法使用,不论三层架构还是五层架构,还是N层架构,架构的分法后期可以根据业务情况进行动态的升级改造,升级改造很重要的一点是要体现出和注册中心的联系,作为一个程序需要完成注册。

以现实生活为例,所有的居民如果实现自治,比如原始部落,大家都不登记,也不注册,通过数人数就可以知道本部落的人口,一旦人口数量增多,就需要通过登记来管理。

Eureka就是充当这种角色。大家到公司入职需要进行入职登记,像我们国家现有的制度——居住证,可以证明你在某个城市居住过,这也是类似与Eureka的模式。

服务器集群数量可以多可以少,现实生活中也是一样的,有的城市人口数量呈爆炸性增长,属于人口迁入城市,有的城市人口可能下降,属于人口迁出城市。一个普通的程序要想做到注册,比较简单的方式是可以通过添加依赖的方式扩展程序,让它具备注册功能,利用了Eureka客户端的依赖.

image.png在spring boot基础上稍作改造就成为了订单微服务,spring boot属于微服务的垫脚石,也是十分重要的,大家需要系统地了解学习。

相关文章
|
5月前
|
人工智能 安全 Java
智慧工地源码,Java语言开发,微服务架构,支持分布式和集群部署,多端覆盖
智慧工地是“互联网+建筑工地”的创新模式,基于物联网、移动互联网、BIM、大数据、人工智能等技术,实现对施工现场人员、设备、材料、安全等环节的智能化管理。其解决方案涵盖数据大屏、移动APP和PC管理端,采用高性能Java微服务架构,支持分布式与集群部署,结合Redis、消息队列等技术确保系统稳定高效。通过大数据驱动决策、物联网实时监测预警及AI智能视频监控,消除数据孤岛,提升项目可控性与安全性。智慧工地提供专家级远程管理服务,助力施工质量和安全管理升级,同时依托可扩展平台、多端应用和丰富设备接口,满足多样化需求,推动建筑行业数字化转型。
189 5
|
5月前
|
人工智能 Java 数据库
飞算 JavaAI:革新电商订单系统 Spring Boot 微服务开发
在电商订单系统开发中,传统方式耗时约30天,需应对复杂代码、调试与测试。飞算JavaAI作为一款AI代码生成工具,专注于简化Spring Boot微服务开发。它能根据业务需求自动生成RESTful API、数据库交互及事务管理代码,将开发时间缩短至1小时,效率提升80%。通过减少样板代码编写,提供规范且准确的代码,飞算JavaAI显著降低了开发成本,为软件开发带来革新动力。
|
2月前
|
IDE Java API
Java 17 新特性与微服务开发的实操指南
本内容涵盖Java 11至Java 17最新特性实战,包括var关键字、字符串增强、模块化系统、Stream API、异步编程、密封类等,并提供图书管理系统实战项目,帮助开发者掌握现代Java开发技巧与工具。
144 1
|
4月前
|
人工智能 数据可视化 JavaScript
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
Juggle是国内首个开源的微服务编排框架,专注于解决企业微服务进程中接口重复开发、系统对接复杂等问题。它提供零代码、低代码和AI增强功能,通过可视化拖拽快速组装简单API为复杂接口,支持多协议、多语言脚本和流程多版本管理。相比国外框架如Conductor,Juggle更贴合国内需求,具备高效开发、企业级可靠性及信创适配等优势,助力企业实现敏捷创新与数字化转型。
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
|
3月前
|
Java API 微服务
Java 21 与 Spring Boot 3.2 微服务开发从入门到精通实操指南
《Java 21与Spring Boot 3.2微服务开发实践》摘要: 本文基于Java 21和Spring Boot 3.2最新特性,通过完整代码示例展示了微服务开发全流程。主要内容包括:1) 使用Spring Initializr初始化项目,集成Web、JPA、H2等组件;2) 配置虚拟线程支持高并发;3) 采用记录类优化DTO设计;4) 实现JPA Repository与Stream API数据访问;5) 服务层整合虚拟线程异步处理和结构化并发;6) 构建RESTful API并使用Springdoc生成文档。文中特别演示了虚拟线程配置(@Async)和StructuredTaskSco
371 0
|
10月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
525 6
|
10月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
244 1
|
9月前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
670 70
从单体到微服务:如何借助 Spring Cloud 实现架构转型
|
12月前
|
安全 应用服务中间件 API
微服务分布式系统架构之zookeeper与dubbo-2
微服务分布式系统架构之zookeeper与dubbo-2
|
12月前
|
负载均衡 Java 应用服务中间件
微服务分布式系统架构之zookeeper与dubbor-1
微服务分布式系统架构之zookeeper与dubbor-1