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

0x04.若依框架微服务开发(含AI模块运行)

微服务本地开发硬件资源有限,所以会将核心微服务组件先部署在服务器上比如:mysql,redis,注册中心Nacos,网关Gateway,认证中心Auth和upms模块以及低代码生成模块。

mysql、redis部署前篇已讲,这里不再赘述。

一、后端jar包准备

直接在IntelliJ上 点击运行 Maven clean package,将以下jar包上传至服务器

二、初始化数据库

远程连接mysql数据库,运行1-999的sql文件。

三、修改hosts文件

四、使用docker的openjdk17 运行核心jar包

    docker pull eclipse-temurin:17-jdk

# 运行nacos
docker run -d --name peer-register   -v $PWD/peer-register.jar:/app/peer-register.jar   --net host   eclipse-temurin:17-jdk   java -Dfile.encoding=utf-8 -jar /app/peer-register.jar# 非常重要:登陆注册中心修改其他微服务的配置文件连接数据库信息# 运行upms
docker run -d --name peer-upms-biz   -v $PWD/peer-upms-biz.jar:/app/peer-upms-biz.jar   --net host   eclipse-temurin:17-jdk   java -Dfile.encoding=utf-8 -jar /app/peer-upms-biz.jar# 运行网关
docker run -d --name peer-gateway   -v $PWD/peer-gateway.jar:/app/peer-gateway.jar   --net host   eclipse-temurin:17-jdk   java -Dfile.encoding=utf-8 -jar /app/peer-gateway.jar# 运行权限管理模块(前端验证滑块等需要的接口
docker run -d --name peer-auth   -v $PWD/peer-auth.jar:/app/peer-auth.jar   --net host   eclipse-temurin:17-jdk   java -Dfile.encoding=utf-8 -jar /app/peer-auth.jar# 运行低代码平台
docker run -d --name peer-codegen   -v $PWD/peer-codegen.jar:/app/peer-codegen.jar   --net host   eclipse-temurin:17-jdk   java -Dfile.encoding=utf-8 -jar /app/peer-codegen.jar

五、前后端跨域问题

http://${ip1}:8888/ 是前端运行地址,前端代码路径 /home/xxx/data/code/java/pig-ai/frontend。但是后端运行在${ip2}:9999 。

当前场景:前端 10.168.131.19:8888,后端 10.168.112.229:9999(前端处于开发状态)

前端 Vue 开发环境已经做了代理:

在开发时,可以在 Vue 项目的配置文件(通常是 vue.config.js)中配置 devServer.proxy,使得 Vue 开发服务器的端口8888在接收请求会自动转发到后端服务器${ip2}:99999999。不需要额外的 Nginx 容器。

如果使用 Nginx 容器:

你可以启动一个 Nginx 容器,让它同时处理静态资源和 API 代理。由于你目前没有打包成 dist(即前端仍在开发状态),有两种选择:

配置 Vue 开发服务器代理

在 vue.config.js 中加入类似如下配置:

module.exports = {devServer: {proxy: {'/api': {target: 'http://10.168.112.229:9999',changeOrigin: true,  // 根据需要设置pathRewrite: { '^/api': '' } // 如果后端不需要 /api 前缀,则重写路径}},port: 8888  // 确保开发服务器运行在 8888 端口}
};

六、AI模块

1.pigx-register/PigxNacosApplication.java
2.pigx-upms-biz/PigxAdminApplication   [注意启动完毕输出路由初始化完毕再去启动其他模块]
3.pigx-auth/PigxAuthApplication
4.pigx-gateway/PigxGatewayApplication
5.pigx-knowledge/PigxKnowledgeApplication# 如需 Chat2SQL 功能,启动
- pigx-visual/pigx-codegen/PigxCodeGenApplication# 如需要业务联动智能流程,启动 
- pigx-flow/PigxFlowEngineApplication
- pigx-flow/PigxFlowTaskApplication
  1. nacos查看服务配置:mysql连接是否正确
  2. 准备jar包:peer-knowledge.jar
  3. 运行程序
docker run -d --name peer-knowledge   -v $PWD/peer-knowledge.jar:/app/peer-knowledge.jar   --net host   eclipse-temurin:17-jdk   java -Dfile.encoding=utf-8 -jar /app/peer-knowledge.jar

相关文章:

0x04.若依框架微服务开发(含AI模块运行)

微服务本地开发硬件资源有限,所以会将核心微服务组件先部署在服务器上比如:mysql,redis,注册中心Nacos,网关Gateway,认证中心Auth和upms模块以及低代码生成模块。 mysql、redis部署前篇已讲,这…...

数据库管理-第302期 国产类RAC架构数据库网络连接方式(20250314)

数据库管理302期 2025-03-14 数据库管理-第302期 国产类RAC架构数据库网络连接方式(20250314)1 Oracle RAC2 DMDSC3 YAC4 KES RAC总结 数据库管理-第302期 国产类RAC架构数据库网络连接方式(20250314) 作者:胖头鱼的鱼…...

ctf web入门知识合集

文章目录 01做题思路02信息泄露及利用robots.txt.git文件泄露dirsearch ctfshow做题记录信息搜集web1web2web3web4web5web6web7web8SVN泄露与 Git泄露的区别web9web10 php的基础概念php的基础语法1. PHP 基本语法结构2. PHP 变量3.输出数据4.数组5.超全局变量6.文件操作 php的命…...

CSS3-流星雨

1. 绘制标签 <div class"container"><span></span> </div>2. 设置div背景 在百度上搜索一幅星空的图片 <style>* {/* 初始化 */margin: 0;padding: 0;}body {/* 高度100% */height: 100vh;/* 溢出隐藏 */overflow: hidden;}.contai…...

【leetcode hot 100 199】二叉树的右视图

解法一&#xff1a;层级遍历&#xff0c;右侧看到的节点就是每一层最后一个元素 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }…...

Unity进阶课程【二】Mask 组件的使用 UI遮罩效果以及透明抠图效果

Unity组件讲解 Mask 时隔多年&#xff0c;今天咱们继续进阶课程&#xff0c;这几年变化很大&#xff0c;但是一直还是从事Unity行业&#xff0c;行业虽难&#xff0c;依旧坚持&#xff0c;以后会养成习惯&#xff0c;定期更新&#xff0c;希望小伙伴们监督&#xff0c;有想学习…...

本地部署Jina AI Reader:用Docker打造你的智能解析引擎

本地部署Jina AI Reader&#xff1a;用Docker打造你的智能解析引擎 &#x1f31f; 引言&#xff1a;为什么需要本地部署&#xff1f;&#x1f4cc; 场景应用图谱&#x1f527; 部署指南&#xff08;Linux环境&#xff09;1. 环境准备2. Docker部署3. 验证服务状态 &#x1f680…...

【MyBatis Plus 逻辑删除详解】

文章目录 MyBatis Plus 逻辑删除详解前言什么是逻辑删除&#xff1f;MyBatis Plus 中的逻辑删除1. 添加逻辑删除字段2. 实体类的配置3. 配置 MyBatis Plus4. 使用逻辑删除5. 查询逻辑删除的记录 MyBatis Plus 逻辑删除详解 前言 MyBatis Plus 是一个强大的持久化框架&#xf…...

Unity--GPT-SoVITS接入、处理GPTAPI的SSE响应流

GPT-SoVITS GPT-SoVITS- v2&#xff08;v3也可以&#xff0c;两者对模型文件具有兼容&#xff09; 点击后 会进入新的游览器网页 ----- 看了一圈&#xff0c;发现主要问题集中在模型的训练很需要CPU&#xff0c;也就是模型的制作上&#xff0c;问题很多&#xff0c;如果有现有…...

一次Linux下 .net 调试经历

背景&#xff1a; Xt160Api, 之前在windows下用.net调用&#xff0c;没有任何问题。 但是移植到Linux去后&#xff0c;.net程序 调用 init(config_path) 总是报错 /root/test 找不到 traderApi.ini (/root/test 是程序目录) 然后退出程序 解决过程: 于是考虑是不是参数传错了&…...

Manus 技术探索 - 使用 gVisor 在沙箱内运行 Ubuntu 容器并通过远程浏览器访问

在容器化技术中&#xff0c;gVisor 为运行不信任的工作负载提供了额外的安全隔离。本文将详细介绍如何利用 gVisor 运行带 GUI 的 Ubuntu 容器&#xff0c;并通过 VNC/NoVNC 实现远程浏览器访问&#xff0c;从而轻松控制容器内的桌面环境。 1. 安装 gVisor 如果你还没有安装 …...

PentestGPT 下载

PentestGPT 下载 PentestGPT 介绍 PentestGPT&#xff08;Penetration Testing GPT&#xff09;是一个基于大语言模型&#xff08;LLM&#xff09;的智能渗透测试助手。它结合了 ChatGPT&#xff08;或其他 GPT 模型&#xff09;与渗透测试工具&#xff0c;帮助安全研究人员自…...

Day07 -实例 非http/s数据包抓取工具的使用:科来 wrieshark 封包监听工具

引入&#xff1a;由于我们day06正确为模拟器配置好了抓包环境&#xff0c;现在用bp去抓取模拟器web包是可以抓取到的&#xff0c;但是某些小程序 & pc端的app 都是有走非http/https协议的数据包的&#xff0c;那么我们就需要用不同的工具去抓取这些其他协议的数据包。 工具…...

机器学习 [白板推导](三)[线性分类]

4. 线性分类 4.1. 线性分类的典型模型 硬分类&#xff1a;输出结果只有0或1这种离散结果&#xff1b; 感知机线性判别分析 Fisher 软分类&#xff1a;会输出0-1之间的值作为各个类别的概率&#xff1b; 概率生成模型&#xff1a;高斯判别分析GDA、朴素贝叶斯&#xff0c;主要…...

c# 查找相似颜色算法

下是一个基于欧几里得距离的C#颜色相似度查找算法实现,包含详细注释和优化策略: using System; using System.Collections.Generic;public class ColorMatcher {// 颜色容器 - 使用字典存储颜色ID到RGB的映射private readonly Dictionary<int, byte[]> _colorDictiona…...

【数据分析】读取文件

3. 读取指定列 针对只需要读取数据中的某一列或多列的情况&#xff0c;pd.read_csv()函数提供了一个参数&#xff1a;usecols&#xff0c;将包含对应的columns的列表传入该参数即可。 上面&#xff0c;我们学习了读取 "payment" 和 "items_count" 这…...

全星研发管理APQP软件系统:助力汽车零部件企业高效研发,打造核心竞争力

在竞争日益激烈的汽车零部件行业&#xff0c;产品质量和研发效率直接影响企业的生存与发展。APQP&#xff08;先期产品质量策划&#xff09;作为行业的研发管理框架&#xff0c;能够有效提升产品质量和研发效率。然而&#xff0c;传统的APQP管理方式往往面临流程繁琐、信息分散…...

ccf3501密码

//密码 #include<iostream> #include<cstring> using namespace std; int panduan(char a[]){int lstrlen(a);int s0;int zm0,sz0,t0;int b[26]{0},c[26]{0},d[10]{0},e0,f0;while(s<l&&l>6){if(a[s]<Z&&a[s]>A){b[a[s]-A];zm;}if(a[s…...

kali之netdiscover

kali之netdiscover Netdiscover 是 Kali Linux 中一款用于网络发现和主机扫描的工具。它通过主动发送 ARP 请求来识别局域网中的活动主机&#xff0c;并显示它们的 IP 地址、MAC 地址和网卡厂商信息。Netdiscover 特别适用于局域网内的主机发现和网络映射。 1. Netdiscover 的…...

Leetcode-2272. Substring With Largest Variance [C++][Java]

目录 一、题目描述 二、解题思路 【C】 【Java】 Leetcode-2272. Substring With Largest Variancehttps://leetcode.com/problems/substring-with-largest-variance/description/2272. 最大波动的子字符串 - 力扣&#xff08;LeetCode&#xff09;2272. 最大波动的子字符串…...

【AI】技术人如何系统学习AI大模型应用开发?

从理论认知到全栈落地的完整指南 一、认知突破&#xff1a;理解大模型的技术本质&#xff08;1-2周&#xff09; 1.1 基础理论筑基 必学内容 大模型演进脉络&#xff1a;从Transformer到GPT-4的技术跃迁核心机制解析&#xff1a;注意力机制、位置编码、自监督学习关键能力边界…...

级联树SELECTTREE格式调整

步骤&#xff1a; 1、将全部列表设置成Map<Long, List<Obejct>> map的格式&#xff0c;方便查看每个父级对应的子列表&#xff0c;减少循环次数 2、对这个map进行递归&#xff0c;重新进行级联树的集合调整&#xff0c;将子集放置在对应的childs里面。 public Dyna…...

深入理解静态与动态代理设计模式:从理论到实践

静态代理设计模式 1.为什么需要代理设计模式&#xff1f; javaEE分层开发中&#xff0c;哪个层次对于我们来讲最重要 DAO---->Service---->Controller JavaEE分层中&#xff0c;最为重要的是Service层 Service层包含了那些代码 Service层核心功能(几十行 上百代码) 额外…...

NET进行CAD二次开发之二

本文主要针对CAD 二次开发入门与实践:以 C# 为例_c# cad-CSDN博客的一些实践问题做一些补充。 一、DLL介绍 在 AutoCAD 中,accoremgd.dll、acdbmgd.dll 和 acmgd.dll 都是与.NET API 相关的动态链接库,它们在使用.NET 语言(如 C#、VB.NET)进行 AutoCAD 二次开发时起着关…...

PyTorch 实现 Conditional DCGAN(条件深度卷积生成对抗网络)进行图像到图像转换的示例代码

以下是一个使用 PyTorch 实现 Conditional DCGAN&#xff08;条件深度卷积生成对抗网络&#xff09;进行图像到图像转换的示例代码。该代码包含训练和可视化部分&#xff0c;假设输入为图片和 4 个工艺参数&#xff0c;根据这些输入生成相应的图片。 1. 导入必要的库 import …...

c#:使用Modbus RTU协议

Modbus是一种广泛应用于工业自动化领域的通信协议&#xff0c;支持多种传输方式&#xff0c;如RTU、TCP等。其中&#xff0c;Modbus RTU是一种基于串行通信的协议&#xff0c;具有高效、可靠的特点。本文将详细介绍Modbus RTU协议的基本原理&#xff0c;并重点解析功能码0x03&a…...

设计模式(行为型)-备忘录模式

目录 定义 类图 角色 角色详解 &#xff08;一&#xff09;发起人角色&#xff08;Originator&#xff09;​ &#xff08;二&#xff09;备忘录角色&#xff08;Memento&#xff09;​ &#xff08;三&#xff09;备忘录管理员角色&#xff08;Caretaker&#xff09;​…...

基于yolo11+flask打造一个精美登录界面和检测系统

这个是使用flask实现好看登录界面和友好的检测界面实现yolov11推理和展示&#xff0c;代码仅仅有2个html文件和一个python文件&#xff0c;真正做到了用最简洁的代码实现复杂功能。 测试通过环境&#xff1a; windows x64 anaconda3python3.8 ultralytics8.3.81 flask1.1.…...

【软考-架构】13.1、软件架构概述-构件技术

✨资料&文章更新✨ GitHub地址&#xff1a;https://github.com/tyronczt/system_architect 文章目录 ✨【重点】系统架构设计软件架构概述软件架构设计与生命周期构件&#x1f31f;软件架构风格数据流风格调用/返回风格独立构件风格虚拟机风格仓库风格闭环控制风格C2体系结…...

RabbitMQ(补档)

RabbitMQ 是一个开源的消息队列软件&#xff08;有时也被称为消息代理&#xff09;&#xff0c;它实现了高级消息队列协议&#xff08;AMQP&#xff09;。它主要用于应用程序之间&#xff0c;或者软件组件之间的消息通信。通过使用 RabbitMQ&#xff0c;可以实现异步的、可靠的…...

仿“东方甄选”直播商城小程序运营平台

在公域直播流量红利趋于饱和、流量成本大幅攀升的当下&#xff0c;私域直播为企业开辟了新的流量聚集和转化渠道&#xff0c;特别是对于那些希望在私域流量领域取得突破的品牌商家来说&#xff0c;直播场景以其独特的高频互动氛围&#xff0c;相比其他运营方式&#xff0c;展现…...

增量数据同步怎么做

增量数据同步怎么做&#xff1f;比如A系统里有母猪数据&#xff0c;新增了一头母猪&#xff0c;这条母猪数据要低延迟地同步到B系统。而不是A系统全表扫描一遍&#xff0c;然后全部同步到B系统。这种全扫描同步方法延迟非常大&#xff0c;尤其涉及到母猪大数据时&#xff0c;会…...

LeetCode 解题思路 18(Hot 100)

解题思路&#xff1a; 继承 LinkedHashMap&#xff1a; 内置双向链表&#xff0c;自动维护节点的插入顺序和访问顺序。LRU 淘汰逻辑&#xff1a; 覆盖 removeEldestEntry&#xff0c;当元素数量超过 capacity 时&#xff0c;移除最旧条目。removeEldestEntry 方法提供钩子&…...

基于Spring Boot的民宿租赁系统的设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…...

Go红队开发—web网络编程

文章目录 web网络编程Req快速请求 调试DevModeDebugLogTraceInfo瓶颈分析 控制请求与响应控制请求的字段内容控制调试打印的内容分开dump请求与响应部分请求体设置 作用范围级别设置参数查询URL 路径参数表单请求设置请求头设置 判断响应状态码解析数据SetSuccessResultgjson响…...

ollama不安装到c盘,安装到其他盘

ollama 安装包默认安装到c盘&#xff0c;安装程序并没有提供选择文件夹安装功能&#xff0c;本来c盘就快满了&#xff0c;下几个模型c盘都快爆了&#xff0c;如何将ollma安装到其他盘呢&#xff1f; ollama 默认安装位置 C:\Users\Admin\.ollama 是 Ollama 用来放大模型的文件夹…...

【HTML】一、基础标签

文章目录 1、开发环境准备2、html介绍3、html基本骨架4、标签的关系5、常用标签5.1 标题5.2 段落5.3 换行与水平线5.4 文本格式化标签5.5 图像标签5.6 超链接标签5.7 音频标签5.8 视频标签 6、路径7、网页制作 1、开发环境准备 在编辑器中写代码&#xff0c;在浏览器中看效果 …...

NPU、边缘计算与算力都是什么啊?

考虑到灵活性和经济性&#xff0c;公司购置一台边缘计算机&#xff0c;正在尝试将PCGPU的计算机视觉项目转到边缘计算机NPU上。本文简单整理了三个概念&#xff0c;并试图将其做个概要的说明。 一、算力&#xff1a;数字世界的“基础能源” 1.1 算力是什么 **算力&#xff08…...

spring声明式事务原理01-调用第1层@Transactional方法(事务访问入口)

文章目录 【README】【步骤1】UserAppService调用userSupport.saveNewUser()【步骤2】获取到TransactionInterceptor【步骤3】chain不为空&#xff0c;接着执行CglibMethodInvocation#proceed方法【补充】AopContext作用 【步骤4】CglibMethodInvocation#proceed方法【步骤5】调…...

[MoeCTF 2021]babyRCE

打开题目在线环境可以看到&#xff1a; <?php$rce $_GET[rce]; if (isset($rce)) {if (!preg_match("/cat|more|less|head|tac|tail|nl|od|vi|vim|sort|flag| |\;|[0-9]|\*|\|\%|\>|\<|\|\"/i", $rce)) {system($rce);}else {echo "hhhhhhacke…...

【leetcode hot 100 114】二叉树展开为链表

解法一&#xff1a;执行一次先序遍历&#xff0c;把元素放入list中&#xff0c;然后放回root中 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { th…...

嵌入式八股,为什么单片机中不使用malloc函数

1. 资源限制 单片机的内存资源通常非常有限&#xff0c;尤其是RAM的大小可能只有几KB到几十KB。在这种情况下&#xff0c;使用 malloc 进行动态内存分配可能会导致内存碎片化&#xff0c;使得程序在运行过程中逐渐耗尽可用内存。 2. 内存碎片问题 malloc 函数在分配和释放内…...

基于Python的selenium入门超详细教程(第1章)--WebDriver API篇

学习路线 自动化测试介绍及学习路线-CSDN博客 ​自动化测试之Web自动化&#xff08;基于pythonselenium&#xff09;-CSDN博客 参照博文&#xff1a;selenium入门超详细教程——网页自动化操作-CSDN博客 目录 前言 一、WebDriver API介绍 1.1 什么是WebDriver? 1.2 工…...

IIC通信协议详解与STM32实战指南

IIC通信协议详解与STM32实战指南 引言 IIC&#xff08;Inter-Integrated Circuit&#xff09;是Philips公司开发的串行通信协议&#xff0c;广泛应用于传感器、EEPROM、RTC等低速外设的连接。本文深入解析IIC协议原理&#xff0c;并提供基于STM32的GPIO模拟实现方案&#xff…...

【算法】数组、链表、栈、队列、树

⭐️个人主页&#xff1a;小羊 ⭐️所属专栏&#xff1a;Linux 很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~ 目录 持续更新中...数组、链表点击消除环形链表环形链表 II 栈、队列树 持续更新中… 数组、链表 点击消除 AB5 点击消除 这个题很容…...

vscode 配置golang开发环境

vscode 配置golang开发环境 在go1.20环境中需要指定工具的安装版本 go install golang.org/x/tools/goplsv0.15.3 go install github.com/go-delve/delve/cmd/dlvv1.21.0使用go Install/Update tool安装工具会报错 go版本太低, 而很多时候为了项目稳定或风险太高, 我们不太希…...

uniapp APP使用web-view内嵌 h5 解决打包发版浏览器有缓存需要清除的问题

1.在当前项目根节点下的public目录下的index.html里面写入禁止缓存的 meta <!-- 解决前端发版缓存问题 start --><meta http-equiv"pragma" content"no-cache"><meta http-equiv"cache-control" content"no-cache, no-stor…...

机器学习与深度学习中模型训练时常用的四种正则化技术L1,L2,L21,ElasticNet

L1正则化和L2正则化是机器学习中常用的两种正则化方法&#xff0c;用于防止模型过拟合。它们的区别主要体现在数学形式、作用机制和应用效果上。以下是详细对比&#xff1a; 1. 数学定义 L1正则化&#xff08;也叫Lasso正则化&#xff09;&#xff1a; 在损失函数中加入权重参…...

LLM自动化评测

使用的数据集&#xff1a;ceval-exam import requests from datasets import load_dataset, concatenate_datasets import re from tqdm import tqdm import re, time, tiktoken, ollama from ollama import ChatResponse from ollama import Optionsdef llm(model, query, te…...

Android 英文文章选词

点击文章中的一个单词&#xff0c;获取它。 通过点击的坐标y来获取行数&#xff0c;通过x坐标获取字符偏移量&#xff0c;向前遍历匹配&#xff0c;向后遍历匹配&#xff0c;匹配不成功则跳出循环。截取开始位置和最后位置的字符串。 主要代码 public String getSelectText…...