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

SpringCloud(H版alibaba)框架开发教程,使用eureka,zookeeper,consul,nacos做注册中心——附源码(1)

源码地址:https://gitee.com/jackXUYY/springboot-example

创建订单服务,支付服务,公共api服务(共用的实体),eureka服务

1.cloud-consumer-order80
2.cloud-provider-payment8001
3.cloud-api-commons
4.cloud-eureka-server7001
5.cloud-eureka-server7002
如图所示
在这里插入图片描述
修改本地host映射
在这里插入图片描述

修改数据库地址为自己的地址,并初始化表结构和数据

/*Navicat Premium Data TransferSource Server         : localhostSource Server Type    : MySQLSource Server Version : 50562Source Host           : localhost:3306Source Schema         : db2019Target Server Type    : MySQLTarget Server Version : 50562File Encoding         : 65001Date: 28/12/2023 15:24:40
*/SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;-- ----------------------------
-- Table structure for payment
-- ----------------------------
DROP TABLE IF EXISTS `payment`;
CREATE TABLE `payment`  (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',`serial` varchar(200) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL,PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Compact;-- ----------------------------
-- Records of payment
-- ----------------------------
INSERT INTO `payment` VALUES (1, '尚硅谷');
INSERT INTO `payment` VALUES (2, 'alibaba');
INSERT INTO `payment` VALUES (3, '京东');
INSERT INTO `payment` VALUES (4, '头条');SET FOREIGN_KEY_CHECKS = 1;

启动服务
1.cloud-consumer-order80
2.cloud-provider-payment8001
3.cloud-eureka-server7001
4.cloud-eureka-server7002

然后在浏览器输入http://localhost:7001/ 或http://localhost:7002/
看服务是否注册
在这里插入图片描述

这里eureka的服务注册与发现测试完成

多个支付服务注册进eureka,订单服务调用支付–负载均衡

创建另一个支付服务
1.cloud-provider-payment8002

在这里插入图片描述

启动服务,注册到eureka,可以看到支付服务有2个注册到eureka,接下来,使用restTemplate在订单服务中调支付服务,并且负载均衡,使用自定义的策略

在这里插入图片描述
现如今我们已经启动了5个微服务,如果电脑不行,可以使用单机版本,并且服务启动的时候指定好jvm参数,把内存限制的小一点
在这里插入图片描述
order80的自定义配置,为了演示负载均衡
在这里插入图片描述
在这里插入图片描述
访问localhost/consumer/payment/get/1

在这里插入图片描述
在这里插入图片描述

接下来我们使用zk当注册中心

使用到的服务

1.cloud-consumerzk-order80
2.cloud-provider-payment8004

在这里插入图片描述

准备zk环境,pom的zk版本要和zk的一样

在这里插入图片描述

idea安装zk插件

https://www.jianshu.com/p/5133ae3135be

启动服务后可以看到zk创建了2个服务节点

在这里插入图片描述

注册中心使用consul (省略)

链接:https://pan.baidu.com/s/1Hlkqq307hTYCWwuSM_tBHw?pwd=4t33
提取码:4t33
–来自百度网盘超级会员V7的分享

在这里插入图片描述

在这里插入图片描述

使用nacos

在这里插入图片描述

nacos环境,当注册中心,还能当配置中心

链接:https://pan.baidu.com/s/1JmzQvqAFoYL1PaFWQTsNKA?pwd=t31r
提取码:t31r
–来自百度网盘超级会员V7的分享

nacos使用教程
https://blog.csdn.net/m0_72673485/article/details/128622922
https://blog.csdn.net/weixin_60257072/article/details/128690024

我只启动了order的两个服务,看下效果

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

相关文章:

  • IntelliJ IDEA [插件 MybatisX] mapper和xml间跳转
  • 【Spring Security】AuthenticationFailureHandler 用户认证失败后处理
  • 数据特征工程 | PSO粒子群算法的特征选择原理及python代码实现
  • web component - 使用HTML Templates和Shadow DOM构建现代UI组件
  • [BUG]Datax写入数据到psql报不能序列化特殊字符
  • C# MVC +Layui侧边导航栏的收缩及展开
  • VUE——IDEA 启动前端工程VS文件启动前端工程
  • 【操作系统】虚拟存储器
  • 相比于其他流处理技术,Flink的优点在哪?
  • N 皇后 II[困难]
  • 你好!Apache Seata
  • Android--Jetpack--Paging详解
  • C#-CSC编译环境搭建
  • 千巡翼X4轻型无人机 赋能智慧矿山
  • 【 YOLOv5】目标检测 YOLOv5 开源代码项目调试与讲解实战(4)-自制数据集及训练(使用makesense标注数据集)
  • 【347天】每日项目总结系列085(2018.01.18)
  • classpath对获取配置文件的影响
  • Docker下部署自己的LNMP工作环境
  • egg(89)--egg之redis的发布和订阅
  • EventListener原理
  • HTTP请求重发
  • leetcode-27. Remove Element
  • php中curl和soap方式请求服务超时问题
  • Terraform入门 - 3. 变更基础设施
  • underscore源码剖析之整体架构
  • Vue.js源码(2):初探List Rendering
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • scrapy中间件源码分析及常用中间件大全
  • 湖北分布式智能数据采集方法有哪些?
  • !!Dom4j 学习笔记
  • # AI产品经理的自我修养:既懂用户,更懂技术!
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • (2)STM32单片机上位机
  • (C#)获取字符编码的类
  • (el-Transfer)操作(不使用 ts):Element-plus 中 Select 组件动态设置 options 值需求的解决过程
  • (第61天)多租户架构(CDB/PDB)
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • (转)jQuery 基础
  • (转)Windows2003安全设置/维护
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .net core webapi 大文件上传到wwwroot文件夹
  • [20160902]rm -rf的惨案.txt
  • [Angular 基础] - 指令(directives)
  • [ANT] 项目中应用ANT
  • [C++] 如何使用Visual Studio 2022 + QT6创建桌面应用
  • [EFI]Atermiter X99 Turbo D4 E5-2630v3电脑 Hackintosh 黑苹果efi引导文件
  • [Godot] 3D拾取
  • [hdu 4552] 怪盗基德的挑战书
  • [hive] 窗口函数 ROW_NUMBER()
  • [Qt桌面开发]一个Qt简单界面的开发