【系统架构师】2025论文《WEB系统性能优化技术》
😊你好,我是小航,一个正在变秃、变强的文艺倾年。
🔔本文分享【系统架构师】2025论文《系统可靠性设计》,期待与你一同探索、学习、进步,一起卷起来叭!
目录
- 项目介绍
- 背景介绍
- 系统模块
- 技术栈
- 性能优化技术
- 摘要
- 正文
项目介绍
背景介绍
- 时间:2021年3月启动,2022年3月上线
- 参与方:我单位与某省公安厅联合研发
- 目标:解决数据全生命周期(存储/传输/使用/共享)安全问题
- 核心价值:通过性能优化保障系统高并发处理能力
- 用户群体:省市县三级公务员
系统模块
模块名称 | 功能描述 |
---|---|
资源模块 | 数据源管理(Oracle/Flink/Spark/文件),支持数据接入、导出及脱敏任务调度 |
敏感属性模块 | 自动发现敏感字段,支持自定义敏感属性与人工复核 |
脱敏规则模块 | 策略组合配置(含算法版本控制),支持DES/AES/RSA/遮掩/移位等原子脱敏算法 |
脱敏模块 | 执行可逆/不可逆脱敏,支持同步/异步任务处理 |
权限模块 | RBAC权限控制(省市县三级用户角色分级) |
审计模块 | 操作日志记录与合规审查 |
技术栈
- 核心框架:Spring Cloud
- 缓存中间件:Redis(LRU淘汰策略)
- 数据库:Oracle/Neo4j/Spark + RAID6固态硬盘阵列
性能优化技术
2.1 负载均衡技术
技术组件 | 实现方案 | 效果 |
---|---|---|
Nginx集群 | 前置反向代理+路由模式隔离内外网 | 支持1000+并发连接 |
最小连接算法 | 动态分配请求至空闲节点 | 提升资源利用率30% |
故障转移 | 自动隔离异常节点 | 服务可用性达99.9% |
2.2 缓存技术
- 缓存策略:
- 数据类型:脱敏规则/用户登录信息/字典配置
- 淘汰机制:LRU(最近最少使用)
- 一致性保障:读时回填、写时淘汰
- 性能提升:
- 数据库访问量减少60%
- 页面加载时间缩短至200ms以内
2.3 数据库优化
优化措施 | 技术实现 | 性能指标 |
---|---|---|
主从复制 | 一主三从架构,读写分离 | 写压力降低70% |
RAID6阵列 | 固态硬盘+双盘容错 | 随机读写IOPS提升4倍 |
连接池管理 | 封装读写分离连接池 | 事务响应时间≤50ms |
摘要
2021年3月,我单位联合某省公安厅研发《数据脱敏管理系统》。系统以数据脱敏功能为核心,分为资源模块、敏感属性模块、脱敏规则模块、脱敏模块、权限模块、审计模块。在项目中,我担任系统架构师职务,负责架构设计工作。
本文以该系统为例,主要论述了web技术性能优化在项目中的具体运用。着重介绍负载均衡技术、缓存技术以及数据库主从部署三种技术。通过负载均衡技术结合服务器集群,提高系统的并发能力;缓存技术基于redis内存数据库,降低系统数据库压力,提高数据脱敏速度;数据库主从部署实现读写分离,极大缓解了数据库的负载瓶颈。最终项目成功上线,获得用户一致好评。
正文
笔者在一个专为政企建设信息系统的集成商任职,过往成果有《某省厅网技综合平台》等。2021年3月,我单位联合某省厅研发了《数据脱敏管理系统》项目(以下简称“系统”),解决了数据在其生命周期的传输、存储、使用、共享环节的安全问题,保护了数据安全性和可用性。系统以数据脱敏功能为核心,主要分为资源模块、敏感属性模块、脱敏规则模块、脱敏模块、权限模块、审计模块等。资源模块主要负责识别和维护所有需要进行数据脱敏的数据源,支持用户根据需求接入和导出数据至不同数据源(如oracle、neo4j、spark源、文本文件等),并负责将抽取的数据发送到敏感属性模块进行属性分析;敏感属性模块负责自动发现数据中的敏感字段,支持用户自定义敏感属性等;脱敏规则模块根据不同敏感属性,灵活组合不同脱敏策略,并做好版本控制;数据脱敏模块按用户指定或预定义脱敏策略,对数据实施可逆、不可逆脱敏;权限模块主要是系统安全管理员定义不同角色对应不同模块的权限,对省市县三级用户实行权限控制;审计模块用于安全审计员对系统操作的监督核查。在这个项目中,我担任系统架构师的职务,主要负责系统的架构设计相关工作。
系统需要支撑省厅所辖公务员对数据的脱敏,为保证系统的性能和可靠性,对系统进行性能优化显得尤为重要。传统的基于单块架构的数据脱敏管理系统早已无法支撑日益增长的用户需求,存在严重的性能问题,且很难进行扩展,因此该系统在架构设计中必须考虑到Web应用系统性能优化技术的应用。常见的性能优化策略有:1.负载均衡技术。通过请求转发、监测异常实例、服务故障转移、自动隔离异常主机保障服务高可用性。通过添加实例至服务集群的方式,提高系统的可扩展性。通过负载均衡策略实现流量均衡;2.缓存技术。通过将读写比很高、很少变化的数据写入缓存中,能够起到减少数据访问时间和计算时间的作用,同时能够降低数据库访问压力;3.数据库主从部署技术。使用一主多从,实现读写分离,减轻主库访问压力,同时防止单一主机的数据丢失,提高数据安全性,还能让不同从库使用不同存储引擎,以适应不同的应用需求。
系统分为前端web服务、平台保障服务、业务服务,在开发过程中,我们运用了多种性能优化技术。这里重点以负载均衡技术、缓存技术、数据库主从部署为例,介绍本系统Web性能优化的方案和达到的效果。
-
负载均衡技术。前端web服务主要提供给用户可使用的界面,分为前置nginx负载均衡服务器、前端网站Nginx集群。当用户通过网络访问系统时,首先会访问到前置的Nginx负载均衡服务器,负载均衡服务器会将请求转发到前端网站的Nginx集群,前端网站通过发起http请求来和后端交互,具体是通过Ajax方式来调用后端REST API接口。用户访问网站通过前置的nginx负载均衡服务器来转发到前端网站集群,以起到将用户请求进行分流的作用。当前端网站集群中的部分服务发生故障时,系统仍可正常地对外提供服务。前置nginx负载均衡服务器使用软件反向代理的方式来实现负载均衡,部署为路由模式,系统内部网络与外部网络分属于不同的逻辑网络,以实现系统内部与外部网络的隔离,保护系统安全。在负载均衡算法选择上,为了实现连接最优分配,使用了最小连接法,每当用户请求来临时,任务分发单元会将任务平滑分给最小连接数的节点,这样的架构以廉价、透明的方式扩展了服务器和网络带宽,能够极大提升系统的并发量,同时保证前端整体的稳定性和可靠性。
-
缓存技术。通过对系统业务的分析,发现后端业务服务在进行相关的业务逻辑操作时,存在一部分数据使用频率很高但不会经常变化,如系统基本设置信息、用户登录信息等。这一部分数据如果每次使用都直接请求数据库,将会给数据库服务带来非常大的开销。为了解决这一问题,我们选择了redis作为缓存数据库,采用LRU缓存淘汰策略。在系统启动时,将脱敏规则从专用数据库中读出并缓存在redis中,用户登录时,也会将登录信息缓存在redis中,当服务再次使用到这部分信息时,便可直接从效率更高的redis中读取。对于部分在一定时间内不会变化的数据,如脱敏字典信息、敏感属性配置信息、脱敏策略信息、频繁脱敏的数据表等,也进行缓存。为了解决数据库和缓存一致性的问题,当读取数据时,会先读取redis缓存的数据,如果redis缓存不存在所要的数据,则从原数据库中读取,并将数据同步更新到redis缓存;当写回数据时,将数据直接写入到数据库中,并同步淘汰缓存中的数据。通过缓存技术,极大地提升了系统的性能,并且缓解了页面加载缓慢的问题。
-
数据库主从部署技术。系统使用缓存后,大部分读操作都可直接通过缓存完成,但仍然有部分读操作(未命中或缓存过期)和全部写操作需要访问数据库。当系统用户达到一定规模后,数据库因负载压力过高而成为整个系统瓶颈。对于数据脱敏系统来说,后端数据库存储的性能是极其重要的,所有用户的操作记录,所用脱敏字典策略(周期更新),部分脱敏后的数据(大部分脱敏数据对接到其他系统存储处理)都存储在数据库中。这里要求数据库读写有非常强的性能,考虑到业务读多写少,为了解决数据库的读性能瓶颈,本系统采用主从式部署数据库,实现读写分离架构。业务数据在写数据时,访问主数据库,主数据库通过主从复制机制将数据同步更新到从数据库,当业务服务需要读取数据时,就可以通过从数据库获得数据。业务服务通过使用专门的数据持久层访问模块(封装了读写连接池,读连接池能够实现故障自动转移)来访问读写分离后的数据库,使数据库读写分离对应用透明。为了缓解由磁盘硬件带来的性能瓶颈,数据库所依赖的硬件存储采用raid6的固态硬盘阵列,能够在硬件方面提升数据库的随机读写性能。通过主从数据库设计,提高数据库的运行效率。
在这次系统性能优化设计中,还使用了很多性能优化策略,如使用消息队列进行削峰,使用hystrix组件实现服务降级等,这里就不再一一赘述。系统经过性能测试、负载测试、压力测试、稳定性测试后,自2022年3月上线已运行三年有余,在数据生命周期的存储、传输、使用和共享环节投入使用,截至目前已脱敏3万余次,脱敏数据量达到103T,获得了单位领导同事和客户的一致好评。日常使用过程中最高出现过300余用户同时进行脱敏的情况,基本未出现请求超时,拒绝服务的情况,满足了数据脱敏系统的基本性能需求。
实践证明,数据脱敏系统顺利上线,并且稳定运行,与系统采用了充分的性能优化设计密不可分。经过这次数据脱敏系统性能优化方法的实施,我也看到了身上的不足之处,在未来还会不断更新知识,积累经验,完善本系统各方面的设计,在下次实施中使整个系统更加好用,更好的为用户服务,为社会服务。
📌 [ 笔者 ] 文艺倾年
📃 [ 更新 ] 2025.5.15
❌ [ 勘误 ] /* 暂无 */
📜 [ 声明 ] 由于作者水平有限,本文有错误和不准确之处在所难免,本人也很想知道这些错误,恳望读者批评指正!
相关文章:
【系统架构师】2025论文《WEB系统性能优化技术》
😊你好,我是小航,一个正在变秃、变强的文艺倾年。 🔔本文分享【系统架构师】2025论文《系统可靠性设计》,期待与你一同探索、学习、进步,一起卷起来叭! 目录 项目介绍背景介绍系统模块技术栈性能…...
华为Watch的ECG功能技术分析
华为Watch的ECG(心电图)功能通过硬件传感器、算法优化和医疗认证的结合,实现了对心脏电活动的监测和房颤(AFib)等心律失常的预警。以下是其技术实现方案的详细解析: 1. 硬件设计:单导联ECG传感…...
2025.05.14华为机考笔试题-第二题-200分
📌 点击直达笔试专栏 👉《大厂笔试突围》 💻 春秋招笔试突围在线OJ 👉 笔试突围OJ 02. 探险家的最佳路径 问题描述 A先生是一位探险家,他需要穿越一片危险的山地区域。这个区域可以用一个 k k k \times k...
FTP 工具 vs. 命令行 SCP/RSYNC
🔹 FTP 工具 vs. 命令行 SCP/RSYNC 对比 场景FTP/SFTP 工具(如 Cyberduck、FileZilla)命令行(scp/rsync)适用人群新手、喜欢图形化操作习惯命令行、需要自动化脚本传输少量文件✅ 拖拽即可上传下载⚠️ 需手动输入命令…...
工业HMI触摸屏技术方案:基于EFISH-SCB-RK3588/SAIL-RK3588的国产化替代赛扬N100/N150全场景技术解析
一、核心硬件选型与国产化替代优势 1. 算力与架构突破 异构八核CPU:采用4Cortex-A76(2.4GHz)4Cortex-A55(1.8GHz)架构,支持实时控制逻辑、高帧率UI渲染、协议解析多任务并行处理,相…...
MySQL主从复制与读写分离
一、MySQL主从复制(Replication) 1. 核心原理 主库(Master):处理写操作,并将数据变更记录到二进制日志(Binary Log, binlog)。 从库(Slave):通过…...
VMware虚拟机 安装 CentOS 7
原文链接: VMware虚拟机 安装 CentOS 7 安装准备 软件: VMware Workstation Pro 17.6.3 镜像: CentOS-7.0-1406-x86_64-DVD.iso 我打包好放这了,VMware 和 CentOS7 ,下载即可。 关于VMware Workstation Pro 17.6.3,傻瓜式安装即可。 CentO…...
.NET 8 kestrel 配置PEM,实现内网https
一、生成证书 mkcert 是一个简单的工具,用于制作本地信任的开发证书。它不需要配置。 mkcert官方仓库地址:GitHub - FiloSottile/mkcert: A simple zero-config tool to make locally trusted development certificates with any names youd like. 简…...
ERP系统如何做好工厂生产管理?4种ERP先进生产管理模式分享!
现代企业先进的生产管理方式有哪些?相信很多被生产效率问题困扰、谋求转型的企业都思考过这个问题。 放在以前,工厂靠老师傅经验、主管“凭感觉”安排生产,材料、设备、交期全靠人盯。那是因为20年前市场稳定,这套办法还行得通。…...
HttpServletRequest常用功能简介-笔记
javax.servlet.http.HttpServletRequest 是 ServletRequest 接口的子接口,专用于处理 HTTP 协议相关的请求。它提供了访问请求行、请求头、请求参数以及请求属性等方法。 1.请求行(Request Line) ✅ 功能说明 请求行包含客户端发送的 HTTP …...
基于面向对象设计的C++日期推算引擎:精准高效的时间运算实现与运算重载工程化实践
前引: 在软件开发中,时间与日期的处理是基础但极具挑战性的任务。传统的手工日期运算逻辑往往面临闰年规则、月份天数动态变化、时区转换等复杂场景的容错难题,且代码冗余度高、可维护性差。本文将深入探讨如何利用C的面向对象特性与成员函数…...
记一次bug排查(.exe链接mysql失败)-每天学习一点点
哎! 从来没有接手过的项目, .exe项目, 链接服务器失败 报错:"unable to connect to any of the specified mySQL hosts" 虽然不懂c的代码, 也没法反编译.exe项目, 还是像挑战尝试一下解决这个问题. 明面看就是链接mysql失败. 但是mysql对应的服务器地址是啥呢? …...
U盘启动CentOS安装与网卡驱动修复指南
遇到CentOS安装找不到盘符如何解决 1、进入安装页面,点击e进入修改 2、找到自己的U盘,修改完成后按下"ctrlx"执行继续后续安装 vmlinuz initrdinitrd.imginst.stage2hd:LABEL... quiet 改为(具体的U盘启动需要根据实际情况进行查找…...
【物联网】基于树莓派的物联网开发【3】——最新镜像下载和烧录
使用场景 程序猫将带领大家全面了解树莓派,包括从0到1组装,散热片、外壳、风扇安装,官网最新镜像下载及烧录等一系列操作! 树莓派必备配件 1、TF卡(SD内存卡)品牌闪迪:16G以上 2、type-c充电…...
K8S Gateway API 快速开始、胎教级教程
假设有如下三个节点的 K8S 集群: k8s31master 是控制节点 k8s31node1、k8s31node2 是工作节点 容器运行时是 containerd 一、Gateway 是什么 背景和目的 入口(Ingress)目前已停止更新。新的功能正在集成至网关 API 中。在 Kubernetes …...
js关于number类型的计算问题
js中关于number类型的计算 因:在js中,number类型是用于表示数值的基本类型,它遵循 IEEE 754 双精度浮点数(64 位)标准。这导致在某些计算中可能出现精度问题。 例:console.log(0.1 0.2); // 0.300000000…...
GPT-4o 遇强敌?英伟达 Eagle 2.5 视觉 AI 王者登场
前言: 在人工智能领域,视觉语言模型的竞争愈发激烈。GPT-4o 一直是该领域的佼佼者,但英伟达的 Eagle 2.5 横空出世,凭借其 80 亿参数的精简架构,在长上下文多模态任务中表现出色,尤其是在视频和高分辨率图像…...
2025最新ChatGPT Plus令牌(Token)限制完全指南:每日/每月用量详解与突破方法
2025最新ChatGPT Plus令牌(Token)限制完全解析:真相、误区与突破方案 对于支付$20/月订阅费的ChatGPT Plus用户来说,"我的ChatGPT Plus每月有多少token限制?"是一个普遍关心却常被误解的问题。随着越来越多人依赖AI工作和学习&…...
二叉树深搜:在算法森林中寻找路径
专栏:算法的魔法世界 个人主页:手握风云 目录 一、搜索算法 二、回溯算法 三、例题讲解 3.1. 计算布尔二叉树的值 3.2. 求根节点到叶节点数字之和 3.3. 二叉树剪枝 3.4. 验证二叉搜索树 3.5. 二叉搜索树中第 K 小的元素 3.6. 二叉树的所有路径 …...
力扣310.最小高度树(拓扑排序,无向图),力扣.加油站力扣.矩阵置零力扣.二叉树中的最大路径和
目录 力扣310.最小高度树(拓扑排序,无向图) 力扣.加油站 力扣.矩阵置零 力扣.二叉树中的最大路径和 力扣310.最小高度树(拓扑排序,无向图) 当他是最小高度树时候,树根必定是中心节点,且中心节点一定一两个,且…...
Java并发编程:CAS操作
1. 简介 CAS 全称是 Compare-and-Swap,即比较加交换,假设我们要对内存中的某个地址进行 CAS 操作,该地址当前值是 V,我们给定预期值 A 和新值 B,如果 V A,那么就将该地址的值更新为 B 并返回 true…...
InforSuite RDS 与django结合
InforSuite RDS(关系型数据库服务)是浪潮提供的托管式数据库服务,通常支持 MySQL、PostgreSQL、SQL Server 等主流数据库。将 Django 与 InforSuite RDS 结合使用,主要涉及数据库配置、连接优化、安全策略等环节。以下是详细的整合…...
【匹配】Needleman–Wunsch
Needleman-Wunsch 文章目录 Needleman-Wunsch1. 算法介绍2. 公式及原理3. 伪代码 1. 算法介绍 背景与目标 Needleman–Wunsch 算法由 Saul B. Needleman 和 Christian D. Wunsch 于1970年提出,是用于生物序列(如蛋白质或 DNA)全局比对&#x…...
Spring Boot 拦截器:解锁5大实用场景
一、Spring Boot中拦截器是什么 在Spring Boot中,拦截器(Interceptor)是一种基于AOP(面向切面编程)思想的组件,用于在请求处理前后插入自定义逻辑,实现权限校验、日志记录、性能监控等非业务功能…...
DVWA靶场通关笔记-SQL注入(SQL Injection Medium级别)
目录 一、SQL Injection 二、代码审计(Medium级别) 1、源码分析 (1)index.php (2)Medium.php 2、渗透思路 (1)SQL安全问题分析 (2)SQL渗透思路 三、…...
西瓜书【机器学习(周志华)】目录
第一部分:基础概念 机器学习概述 1.1 人工智能与机器学习1.2 机器学习分类1.3 机器学习应用1.4 机器学习常用术语解释 模型的评估与选择 2.1 经验误差与过拟合2.2 评估方法2.3 性能度量2.4 偏差与方差 第二部分:核心算法 线性模型 3.1 什么是回归3.2 …...
【漫话机器学习系列】260.在前向神经网络中初始权重(Initializing Weights In Feedforward Neural Networks)
前向神经网络中的权重初始化策略详解 在神经网络模型中,“初始化”常常被认为只是模型训练前的一个小步骤,但它却可能决定了整个网络能否高效收敛,是否会出现梯度爆炸或消失的问题。今天,我们通过一张生动的手绘图,来…...
每日Prompt:磨砂玻璃后的虚实对比剪影
提示词 一张黑白照片,展示了一个[主体]在磨砂或半透明表面后的模糊剪影。其[部分]轮廓清晰,紧贴表面,与其余朦胧、模糊的身影形成鲜明对比。背景是柔和的灰色渐变色调,增强了神秘和艺术的氛围。...
2025年长三角+山东省赛+ 认证杯二阶段资料助攻说明
长三角高校数模B题 完整论文代码已经在售后群 网盘链接 发布 长三角更新时间轴 5.15 23:00 B站发布 完整论文讲解视频 5.16 18:00 j降重说明 5.17 22:00 无水印版本可视化无水印代码 其余时间 写手老师 售后群在线答疑 山东省助攻C道 认证杯二阶段助攻C题 山东省认证杯…...
课程11. 计算机视觉、自编码器和生成对抗网络 (GAN)
计算机视觉、自编码器和生成对抗网络(GAN) 自动编码器Vanilla自动编码器使用 AE 生成新对象. 变分 AE (VAE)AE 条件 GAN理论示例下载并准备数据GAN模型 额外知识 课程计划: 自动编码器: 自动编码器结构;使用自动编码器…...
机器学习第十二讲:特征选择 → 选最重要的考试科目做录取判断
机器学习第十二讲:特征选择 → 选最重要的考试科目做录取判断 资料取自《零基础学机器学习》。 查看总目录:学习大纲 关于DeepSeek本地部署指南可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:超详细手把手指南 一、学…...
Typescript学习教程,从入门到精通, TypeScript编程基础语法知识点及案例代码(3)
TypeScript编程基础语法知识点及案例代码 本文将详细介绍TypeScript编程的基础知识,包括注释、标识符、关键字、基础类型、变量、常量以及操作符。 1. 注释 语法知识点 TypeScript 支持三种类型的注释: 单行注释:使用 // 开始࿰…...
云原生数据库排障新挑战:AI驱动与分布式架构深度解析
云原生数据库排障新挑战:AI驱动与分布式架构深度解析 一、问题描述与快速解决方案 1. 2025年数据库故障新特征 随着云原生与AI技术的深度耦合,数据库故障呈现三大新特征: AI模型推理性能瓶颈:向量化查询响应时间突增࿰…...
用MCP往ppt文件里插入系统架构图
文章目录 一、技术架构解析1. Markdown解析模块(markdown_to_hierarchy)2. 动态布局引擎(give_hierarchy_positions)3. PPTX生成模块(generate_pptx)二、核心技术亮点1. 自适应布局算法2. MCP服务集成三、工程实践建议1. 性能优化方向2. 样式扩展方案3. 部署实践四、应用…...
ABC301——ABCD
A 统计比赛胜场 #include<bits/stdc.h> using namespace std;#define x first #define y secondtypedef long long LL; typedef pair<int, int> PII;const int N 2e5 10;int t, n, m, a[N]; string s;void solve() {cin >> n;int c1 0, c2 0;cin >…...
Rust 数据结构:Vector
Rust 数据结构:Vector Rust 数据结构:Vector创建数组更新数组插入元素删除元素 获取数组中的元素迭代数组中的值使用枚举存储多个类型删除一个数组会删除它的元素 Rust 数据结构:Vector vector 来自标准库,在内存中连续存储相同类…...
GpuGeek:为创新者提供灵活、快速、高效的云计算服务!
目录 一、前言 二、GpuGeek平台的显著优势 2.1 显卡资源充足:强大计算能力的基础 (1)多种GPU配置选择 (2)弹性扩展与资源管理 2.2 节点丰富:满足多种计算需求 (1)各种节点配置…...
国产化Word处理控件Spire.Doc教程:通过C# 删除 Word 文档中的超链接
Word 文档中的超链接是可点击的链接,允许读者导航到一个网站或另一个文档。虽然超链接可以提供有价值的补充信息,但有时也会分散注意力或造成不必要的困扰,因此可能会需要删除这些超链接。本文将介绍如何使用 Spire.Doc for .NET 通过 C# 删除…...
MySQL 开发的智能助手:通义灵码在 IntelliJ IDEA 中的应用
一、引言 MySQL 作为一款高度支持 SQL 标准的数据库,在众多应用程序中得到了广泛应用。 尽管大多数程序员具备一定的 SQL 编写能力,但在面对复杂的 SQL 语句或优化需求时,往往需要专业数据库开发工程师的协助。 通义灵码的出现为这一问题提…...
golang -- 认识channel底层结构
channel channel是golang中用来实现多个goroutine通信的管道(goroutine之间的通信机制),底层是一个叫做hchan的结构体,定义在runtime包中 type hchan struct {qcount uint // 循环数组中的元素个数(通道…...
使用PEFT库将原始模型与LoRA权重合并
使用PEFT库将原始模型与LoRA权重合并 步骤如下: 基础模型加载:需保持与LoRA训练时相同的模型配置merge_and_unload():该方法会执行权重合并并移除LoRA层保存格式:合并后的模型保存为标准HuggingFace格式,可直接用于推…...
基于微信小程序的在线聊天功能实现:WebSocket通信实战
基于微信小程序的在线聊天功能实现:WebSocket通信实战 摘要 本文将详细介绍如何使用微信小程序结合WebSocket协议开发一个实时在线聊天功能。通过完整的代码示例和分步解析,涵盖界面布局、WebSocket连接管理、消息交互逻辑及服务端实现,适合…...
SaaS基于云计算、大数据的Java云HIS平台信息化系统源码
利用云计算、大数据等现代信息技术研发的医疗信息管理系统(HIS)实现了医院信息化从局域网向互联网转型,重新定义医疗卫生信息化建设的理念、构架、功能和运维体系。平台构建了以患者为中心的云架构、云服务、云运维的信息体系,实现…...
【Linux】动静态库的使用
📝前言: 这篇文章我们来讲讲Linux——动静态库的使用 🎬个人简介:努力学习ing 📋个人专栏:Linux 🎀CSDN主页 愚润求学 🌄其他专栏:C学习笔记,C语言入门基础&…...
10.2 LangChain v0.3全面解析:模块化架构+多代理系统如何实现效率飙升500%
LangChain 框架概述 关键词:LangChain 技术栈, 模块化架构, LCEL 表达式语言, LangGraph 多代理系统, LangServe 服务化部署 1. 框架定位与技术演进 LangChain 是当前大模型应用开发的事实标准框架,通过模块化设计实现 AI 工作流编排、工具链集成 和 复杂业务逻辑封装。其演…...
开源免费iOS或macOS安装虚拟机运行window/Linux系统
官网地址:UTM 开源地址:https://github.com/utmapp/UTM 基于 QEMU(一个开源的硬件虚拟化工具),UTM 可以在 macOS(包括 Apple Silicon M1/M2 和 Intel x86)上运行 Windows、Linux、macOS&…...
《C++ vector详解》
目录 1.结构 2.构造函数 无参构造 指定参数构造 迭代器构造 初始化列表构造 3.拷贝构造 4.析构函数 5.遍历 重载【】 5.插入 扩容 尾插 指定位置插入 6.删除 尾删 指定位置删除 1.结构 vector是一个类似于数组一样的容器,里面可以放各种各样的元素…...
【现代深度学习技术】注意力机制07:Transformer
【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…...
浅析 Spring 启动过程:从源码到核心方法
浅析 Spring 启动过程:从源码到核心方法 一、Spring 注解方式启动类 Demo二、Spring 启动过程源码解析AnnotationConfigApplicationContext构造函数refresh()方法详解 三、refresh()的核心方法/步骤obtainFreshBeanFactory() - 获取Bean工厂prepareBeanFactory(be…...
5G + 区块链:技术巨浪下的新型数字生态!
5G + 区块链:技术巨浪下的新型数字生态! 1. 为什么 5G 和区块链的结合如此重要? 区块链和 5G 这两大技术近几年风头正劲,一个在去中心化数据管理上展现潜力,一个在高吞吐低延迟通信方面带来颠覆。这两者结合,意味着: 更快的数据传输,让区块链交易速度提升,摆脱“低 …...