分布式部署①

📑打牌 : da pai ge的个人主页
🌤️个人专栏 : da pai ge的博客专栏
☁️宝剑锋从磨砺出,梅花香自苦寒来
1. 需要部署的服务
Nacos 理论上,应该是集群的模式
MySQL 理论上,应该是集群的模式
网关服务 单例
订单服务>多例
商品服务>多例

2机器个数
1-N 都可以

3MySQL部署操作
2.1 MySQL安装
1安装MySQL
http://t.csdnimg.cn/lfrgA
CENTOS7wget https://dev.mysql.com/get/mysql80-community
release-el7-11.noarch.rpm//
安装发布包
yum -y install mysql80-community-release-el7-11.noarch.rpm
//
安装MySQL, 中间输⼊Y
systemctl start mysqld
systemctl enable mysqld首次安装成功,MySQL把root⽤⼾的默认密码保存在错误⽇志中grep "password" /var/log/mysqld.log&hpkaqO:c4oK #默认⽣成的密码mysql -uroot -p修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'yyds.666';Query OK, 0 rows affected (0.01 sec)


2. 数据初始化
直接复制
- 订单服务-- 建库
create database if not exists cloud_order charset utf8mb4;use cloud_order;
-- 订单表
DROP TABLE IF EXISTS order_detail;
CREATE TABLE order_detail (`id` INT NOT NULL AUTO_INCREMENT COMMENT '订单id',`user_id` BIGINT ( 20 ) NOT NULL COMMENT '用户ID',`product_id` BIGINT ( 20 ) NULL COMMENT '产品id',`num` INT ( 10 ) NULL DEFAULT 0 COMMENT '下单数量',`price` BIGINT ( 20 ) NOT NULL COMMENT '实付款',`delete_flag` TINYINT ( 4 ) NULL DEFAULT 0,`create_time` DATETIME DEFAULT now(),`update_time` DATETIME DEFAULT now(),
PRIMARY KEY ( id )) ENGINE = INNODB DEFAULT CHARACTER
SET = utf8mb4 COMMENT = '订单表';-- 数据初始化
insert into order_detail (user_id,product_id,num,price)
values
(2001, 1001,1,99), (2002, 1002,1,30), (2001, 1003,1,40),
(2003, 1004,3,58), (2004, 1005,7,85), (2005, 1006,7,94);-- 产品服务
create database if not exists cloud_product charset utf8mb4;-- 产品表
use cloud_product;
DROP TABLE IF EXISTS product_detail;
CREATE TABLE product_detail (`id` INT NOT NULL AUTO_INCREMENT COMMENT '产品id',`product_name` varchar ( 128 ) NULL COMMENT '产品名称',`product_price` BIGINT ( 20 ) NOT NULL COMMENT '产品价格',`state` TINYINT ( 4 ) NULL DEFAULT 0 COMMENT '产品状态 0-有效 1-下架',`create_time` DATETIME DEFAULT now(),`update_time` DATETIME DEFAULT now(),
PRIMARY KEY ( id )) ENGINE = INNODB DEFAULT CHARACTER
SET = utf8mb4 COMMENT = '产品表';-- 数据初始化
insert into product_detail (id, product_name,product_price,state)
values
(1001,"T恤", 101, 0), (1002, "短袖",30, 0), (1003, "短裤",44, 0),
(1004, "卫衣",58, 0), (1005, "马甲",98, 0),(1006,"羽绒服", 101, 0),
(1007, "冲锋衣",30, 0), (1008, "袜子",44, 0), (1009, "鞋子",58, 0),
(10010, "毛衣",98, 0);
3. 对其他服务器授权
grant 权限 on 数据库对象to ⽤⼾
修改bind-address
修改⽂件路径:/etc/mysql/mysql.conf.d/mysqld.cnf
重启MySQL服务器
systemctl restart mysql
开放3306端⼝号
测试授权结果
使⽤CMD客⼾端,连接服务器MySQL

4nacos部署
下载JDK
下载地址:https://www.oracle.com/java/technologies/downloads/#java17
centos7 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpmyum -y install jdk-17_linux-x64_bin.rpm验证 java -version
上传nacos 启动服务 开放对应端⼝号



测试
访问接⼝:http://110.41.51.65:8080

5产品服务,订单服务部署
下载JDK
centos7 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpmyum -y install jdk-17_linux-x64_bin.rpm验证 java -version
确认配置, 代码, 打包
注意事项


常见问题
一nacos 没找到配置项


解决方法
进入nacos


问题2
安装lrzsz即可
问题三 数据库错误


然后在重新打包上传服务器
打包完会显示相关路径
.把包上传到服务器(注意: 先把老的java进程杀掉) 启动程序 
问题四 内网IP


运行代码改成这个即可 nohup java -jar order-service-1.0-SNAPSHOT.jar --
spring.cloud.nacos.discovery.ip=162.14.71.227 >logs/order.log &
接着访问外网IP

登录服务器,上传Jar包
打包流程 
ls
order-service-1.0-SNAPSHOT.jar product-service-1.0-SNAPSHOT.jar
启动服务
nohup java -jar product-service-1.0-SNAPSHOT.jar --
spring.cloud.nacos.discovery.ip=162.14.71.227 >logs/product.log &nohup java -jar order-service-1.0-SNAPSHOT.jar --
spring.cloud.nacos.discovery.ip=162.14.71.227 >logs/order.log &
开放对应端⼝号 测试
产品服务:http://162.14.71.227:10030/product/1001
订单服务:http://162.14.71.227:10040/order/1
6⽹关服务部署
安装JDK
登录服务器,上传Jar包
启动服务
nohup java -jar gateway-1.0-SNAPSHOT.jar --server.port=8080 >logs/gateway.log &
开放对应端⼝号 测试
产品服务:http://120.78.126.148:8080/product/1001

相关文章:
分布式部署①
📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 1. 需要部署的服务 Nacos 理论上,应…...
开源可视化大屏superset Docker环境部署
superset 开源可视化大屏Docker环境部署 前言 superset是俄罗斯开源的一款可视化大屏,用于数据可视化探索,含有丰富的图表组件,可以支持接入各种数据源。 接触superset就是想体验下可视化大屏功能,想最快速度安装成功ÿ…...
tomato靶场通关攻略
1.御剑2014找到IP地址 2.dirb扫描目录 3.再次详细扫描目录 4.访问找到的目录文件 进入antibots中 5.搜寻一会再info.php里面发现有东西 6.这个地方貌似可以进行利用 7.查看源代码发现包含include文件上传漏洞 8.网址后面跟?image../../../../../../../etc/passwd 9.既然可以查…...
【Spring Boot 3】【Web】处理跨域资源共享 CORS
【Spring Boot 3】【Web】处理跨域资源共享 CORS 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术…...
HUAWEI华为MateBook B5-420 i5 集显(KLCZ-WXX9,KLCZ-WDH9)原装出厂Windows10系统文件下载
适用型号:KLCZ-WXX9、KLCZ-WDH9 链接:https://pan.baidu.com/s/12xnaLtcPjZoyfCcJUHynVQ?pwdelul 提取码:elul 华为原装系统自带所有驱动、出厂主题壁纸、系统属性联机支持标志、系统属性专属LOGO标志、华为浏览器、Office办公软件、华为…...
算法练习题10:leetcode76最小覆盖子串-滑动窗口
目录 题目 题目描述 约束条件 解决思路 代码 getOrDefault(c, 0) 方法 方法签名 参数 返回值 示例 getOrDefault 与 get 的主要区别 Integer 题目 题目描述 给定两个字符串 s 和 t,请你在字符串 s 中找到包含 t 中所有字符的最小子串。 要求…...
Svn常用操作技巧详细说明
TortoiseSVN是一个Windows操作系统下的Subversion客户端,它为用户提供了直观易用的界面,方便进行版本控制操作。下面是一些TortoiseSVN的常用操作技巧的详细说明: 检出代码: 在Windows资源管理器中,选择一个空文件夹&a…...
六、MySQL高级—架构介绍(1)
🌻🌻 目录 一、Mysql 简介1.1 概述1.2 Mysql 高手是怎样炼成的 二、Mysql Linux 版的安装2.1 mysql5.52.2 mysql5.7 三、Mysql 的用户与权限管理3.1 MySQL的用户管理3.2 权限管理3.3 通过工具远程访问 四、 Mysql的一些杂项配置(了解)五、 Mysql 逻辑架构…...
TensorRT-For-YOLO-Series项目:实现yolov10模型的python-tensorrt推理(对比int8与fp16推理差异)
项目地址:https://github.com/Linaom1214/TensorRT-For-YOLO-Series/tree/cuda-python 算法支持状态: 2024.6.16 Support YOLOv9, YOLOv10, changing the TensorRT version to 10.0 2023.8.15 Support cuda-python 2023.5.12 Update 2023.1.7 support YO…...
码上君量化互助社群介绍
写在前面 量化投资是一个漫长的过程,一个人单打独斗会走很多弯路,所以建立一个交流沟通互助群是有必要的。 无论是加入我的这个量化互助社群,还是加入其他的社群,首先要想想自己加入社群的目的是什么,自己想从中获得…...
Qt使用小技巧之按钮动态变化
前言 最近写小demo中无意发现的,是想实现当鼠标悬停到按钮上面的时候,按钮实现动态变化,让人知道鼠标经过了按钮,效果如下 hoverDynamicPushButton 正文 首先是将按钮的边框给去掉,然后设置下它的悬停伪状态就行了 格…...
MySQL——事务与存储过程(三)存储过程的使用(1)调用存储过程
使用存储过程可以使程序执行效率更高、安全性更好,增强程序的可重用性和维护性。接下来将针对存储过程的使用进行详细的讲解。 存储过程有多种调用方法。存储过程必须使用CALL语句调用,并且存储过程和数据库相关,如果要执行其他数据库…...
基于VUE2-dataV和echarts实现的可视化大屏,百分比适配PC端
可视化平台中,数据分别通过仪表盘、环状图、柱形图、曲线图、 滚动表格等多种形式展示数据变化。 可视化平台大致分为左、中、右三部分,左侧由能耗总览、耗能 占比、库存预警构成,中间由数据总览、销售计划完成率构成,右侧 由销售…...
FastAPI模块化:为复杂应用程序提供清晰的结构
开题描述: 在现代软件开发中,随着应用程序规模的扩大和功能的增加,传统的单体架构逐渐暴露出其局限性。FastAPI,作为一款高性能的现代Web框架,通过其模块化设计提供了一种解决方案。本文将探讨FastAPI模块化如何为构建…...
【Hot100】LeetCode—215. 数组中的第K个最大元素
目录 1- 思路快速选择 2- 实现⭐215. 数组中的第K个最大元素——题解思路 3- ACM实现 原题连接:215. 数组中的第K个最大元素 1- 思路 快速选择 第 k 大的元素的数组下标: int target nums.length - k 1- 根据 partition 分割的区间来判断当前处理方式…...
pycharm如何安装selenium
在pycharm中打开一个项目后,点击Setting(ALTCtrlS快捷键) 然后点击install package完成后点击关闭这个窗口,就可以在代码中使用selenium了 成功后出现如下界面 编写一段正常可以运行操作chorme浏览器的 from selenium import webdriver # 指定ChromeDriver的路径driver we…...
css三点闪烁(可用于加载样式、标题等)
代码案例 HTML <div class"flexAlign loading"><div class"loading_item"></div><div class"loading_item"></div><div class"loading_item"></div> </div> <div class"ot…...
支持向量机 (Support Vector Machines, SVM)
支持向量机 (Support Vector Machines, SVM) 通俗易懂算法 支持向量机(SVM)是一种用于分类和回归任务的机器学习算法。在最简单的情况下,SVM是一种线性分类器,适用于二分类问题。它的基本思想是找到一个超平面(在二维…...
上海市计算机学会竞赛平台2024年8月月赛丙组调和级数
题目描述 给定一个整数 nn,记 ⌊x⌋⌊x⌋ 表示不超过实数 xx 的最大整数,请求出 ⌊n1⌋⌊n2⌋⌊n3⌋⋯⌊nn−1⌋⌊nn⌋⌊1n⌋⌊2n⌋⌊3n⌋⋯⌊n−1n⌋⌊nn⌋ 输入格式 单个整数:表示 nn 输出格式 单个整数:表示答…...
【重学 MySQL】二十、运算符的优先级
【重学 MySQL】二十、运算符的优先级 MySQL 运算符的优先级(由高到低)注意事项示例 在 MySQL 中,运算符的优先级决定了在表达式中各个运算符被计算的先后顺序。了解运算符的优先级对于编写正确且高效的 SQL 语句至关重要。以下是根据高权威性…...
别再为GPU发愁了!手把手教你用Kaggle免费GPU跑YOLOv7(附完整避坑清单)
零成本玩转YOLOv7:Kaggle GPU资源深度优化指南 当我在大学实验室第一次尝试训练YOLOv7模型时,那台老旧的GTX 1060显卡发出的轰鸣声至今难忘。36小时后,它终于完成了1/3的训练进度——这个经历让我深刻理解到,对于大多数个人开发者…...
基于zlmediakit的RTSP流媒体服务器嵌入式开发指南
1. 为什么选择zlmediakit作为嵌入式RTSP服务器 第一次接触流媒体开发时,我试过用FFmpeg直接搭建服务,结果被复杂的协议栈和线程管理折腾得够呛。后来发现zlmediakit这个宝藏项目,它把RTSP/RTMP/HTTP-FLV等协议封装得特别友好,特别…...
ROS2实战:用hdl_localization+Velodyne激光雷达实现室内机器人实时3D定位(环境配置与调参心得)
ROS2实战:hdl_localization与Velodyne激光雷达的室内3D定位调优指南 在机器人自主导航领域,实时精准定位始终是核心挑战之一。当你的移动机器人搭载着Velodyne激光雷达在复杂室内环境中穿行时,hdl_localization提供的3D点云匹配方案能带来令…...
别再手动改Hosts了!用K8S Gateway API轻松搞定基于请求头的AB测试(OpenResty实战)
告别手动配置:基于K8S Gateway API的智能AB测试实战指南 每次功能迭代时,你是否还在反复修改本地Hosts文件来切换测试环境?或是为了验证某个接口在不同版本间的表现差异,不得不频繁重启服务或调整代理配置?这种低效的手…...
FanControl完全指南:5分钟掌握Windows风扇智能控制
FanControl完全指南:5分钟掌握Windows风扇智能控制 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/Fa…...
效率翻倍,一键生成企业级vue3+ts+pinia项目脚手架,告别重复环境配置
最近在搭建一个企业级中后台管理系统时,发现从零开始配置Vue3项目环境特别耗时。传统方式需要手动安装各种依赖、配置代码规范、设计目录结构,经常因为版本兼容问题卡住半天。后来尝试用InsCode(快马)平台生成项目脚手架,效率直接翻倍&#x…...
立创·地阔星开发板开箱测评:除了点灯,STM32F103C8T6还能怎么玩?(附资源下载与避坑指南)
立创地阔星开发板深度探索:从开箱到创意项目实战 拆开快递包装的那一刻,这块蓝色PCB板安静地躺在防静电袋里——这就是最近在创客圈备受关注的立创地阔星开发板。作为一款基于STM32F103C8T6芯片的高性价比开发平台,它不仅适合初学者入门&…...
LightRAG架构解析:从图索引到双层检索的工程实现
1. LightRAG架构概览:为什么需要双层检索? 在传统RAG系统中,我们常常遇到两个核心痛点:信息碎片化和上下文缺失。想象一下,当你问"电动汽车的普及对城市空气质量有何影响"时,传统系统可能分别检索…...
【王阳明】《泛海》
王阳明《泛海》:证道诗与心学宣言原诗险夷原不滞胸中, 何异浮云过太空? 夜静海涛三万里, 月明飞锡下天风。一、创作背景:九死一生的逃亡 这首诗写于王阳明人生最险峻的时刻,背景远比字面所呈现的更为惊心动…...
THE LEATHER ARCHIVE快速体验:一键生成杂志级AI皮衣大片,小白也能当设计师
THE LEATHER ARCHIVE快速体验:一键生成杂志级AI皮衣大片,小白也能当设计师 1. 项目介绍与核心价值 想象一下,你不需要专业的设计技能,就能创造出媲美时尚杂志封面的皮衣设计作品。THE LEATHER ARCHIVE正是这样一个让创意触手可及…...
