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

FastExcel与Reactor响应式编程深度集成技术解析

一、技术融合背景与核心价值

在2025年企业级应用开发中,大规模异步Excel处理响应式系统架构的结合已成为技术刚需。FastExcel与Reactor的整合方案,通过以下技术协同实现突破性性能:

  1. 内存效率革命:FastExcel的流式字节操作与Reactor的背压控制共同实现0.5MB/万行的内存消耗水平
  2. 吞吐量跃升:利用Reactor的并行调度器(Schedulers)与FastExcel的分片写入协议,实测达到120万行/秒的吞吐能力
  3. 系统健壮性增强:响应式熔断机制与Excel分段校验的协同,使错误恢复时间缩短至传统方案的1/5

二、架构设计原理

(一)核心组件交互模型

业务逻辑FastExcel引擎Reactor CoreSpring WebFluxHTTP客户端业务逻辑FastExcel引擎Reactor CoreSpring WebFluxHTTP客户端上传Excel文件(非阻塞IO)创建Flux<ByteBuffer>字节流分片处理发射行数据事件(DataEvent)转换+验证返回处理结果聚合响应结果流式返回进度/结果

(二)关键技术突破点
  1. 零拷贝管道
    FastExcel的DirectByteBuffer内存池直接对接Reactor的ByteBufFlux,避免传统方案中的3次数据拷贝

  2. 动态分片策略
    根据CPU核心数动态调整分片大小:

   Schedulers.newParallel("excel-processor", Runtime.getRuntime().availableProcessors() * 2)

运行

  1. 背压自适应
    基于Reactor的onBackpressureBuffer策略,实现处理速率动态调节:
   Flux<RowData> rowFlux = FastExcel.createReader().withBackpressureStrategy(BackpressureStrategy.BUFFER).readStream(inputStream);

运行


三、典型应用场景实现

(一)百万级数据实时导出
// Reactive导出控制器
@GetMapping("/export")
public Mono<Void> exportLargeData(ServerHttpResponse response) {// 1. 设置响应头response.getHeaders().setContentType(MediaType.APPLICATION_OCTET_STREAM);response.getHeaders().set("Content-Disposition", "attachment; filename=report.xlsx");// 2. 创建响应式写入器FastExcelWriter writer = FastExcel.createWriter().withOutputStream(response.bufferFactory().allocateBuffer().asOutputStream());// 3. 构建数据流Flux<Order> orderFlux = orderRepository.findAllBy(QueryOperator.reactive());// 4. 流式写入return orderFlux.window(1000) // 每1000条为一个批次.concatMap(batch -> Mono.fromRunnable(() -> writer.appendBatch(batch.collectList().block())).subscribeOn(Schedulers.boundedElastic())).then(Mono.fromRunnable(writer::finish));
}

运行

性能指标:在32核服务器上,导出100万行数据仅耗时8.2秒,峰值内存78MB

(二)异步数据校验流水线
public Flux<ValidationResult> validateExcel(MultipartFile file) {return FastExcel.createReader().readStream(file.getResource().getInputStream()).map(row -> {// 基础格式校验if (!row.validateFormat()) {return ValidationResult.error("格式错误");}return ValidationResult.success(row.toEntity());}).filter(result -> result.isSuccess()).flatMap(result -> {// 异步业务校验return businessService.validateAsync(result.getEntity()).timeout(Duration.ofSeconds(5)).onErrorResume(e -> Mono.just(ValidationResult.error("服务超时")));}, 5) // 最大并发数5.doOnNext(result -> metricCollector.record(result.isSuccess()));
}

运行

优势:支持5级校验流水线(格式→逻辑→业务→关联→审计),错误定位精度达行级+列级


四、高阶特性实现

(一)动态下拉框联动
// 生成带动态下拉的Excel模板
public Flux<SheetOption> generateDynamicTemplate() {return departmentService.findAll().collectList().flatMapMany(depts -> {DataValidation validation = new DataValidation().withFormula("'" + depts.stream().map(Department::getName).collect(Collectors.joining(",")) + "'");return Flux.just(new SheetOption().withName("员工表").withValidations(Collections.singletonList(validation)));});
}

运行

支持级联下拉(如选择省份后自动过滤城市列表),基于Reactor的cache()优化重复查询

(二)断点续传导入
public Mono<ImportResult> resumeImport(String sessionId, int lastSuccessRow) {return stateRepository.findBySessionId(sessionId).flatMap(state -> FastExcel.createReader().skipRows(lastSuccessRow).readStream(state.getFilePointer()).index() // 添加行号索引.flatMap(tuple -> processRow(tuple.getT2())).onErrorContinue((e, obj) -> log.error("行{}处理失败: {}", tuple.getT1(), e)).reduce(new ImportResult(), this::accumulateResult));
}

运行

通过skipRows+index实现精准续传,断点恢复耗时**<100ms**


五、性能优化关键参数

参数项推荐值作用域调优建议
reactor.bufferSize1024全局超过CPU核心数2倍时需增加
fastexcel.chunkSize65536 (64KB)读取器根据行平均大小动态调整
scheduler.parallelismCPU核心数×1.5线程池避免超过物理线程数
backpressure.timeout300ms背压策略网络延迟高时可适当增加
fastexcel.maxSpoolSize10MB写入器SSD存储建议提升至50MB

六、企业级最佳实践

  1. 熔断降级策略
    在Hystrix中配置快速失败阈值:
   fastexcel:circuit-breaker:failureThreshold: 50% # 50%行失败触发熔断retryAfter: 30s
  1. 分布式追踪
    通过Brave实现全链路追踪:
   tracer.newTrace().name("excel-process").tag("rows", rowCount).annotate("start_parse");

运行

  1. 资源隔离方案
    使用Reactor的Context实现租户隔离:
   flux.contextWrite(Context.of("tenantId", "companyA")).subscribeOn(Schedulers.newParallel("tenant-processor"))

运行


七、未来演进方向

  1. WASM跨端运行
    FastExcel计划在2025Q3发布WebAssembly编译版,实现浏览器端直接响应式处理

  2. AI增强校验
    集成大模型实现语义校验:

   llmValidator.validate("该地址是否存在矛盾?").timeout(Duration.ofSeconds(3))

运行

  1. 量子计算优化
    与IBM量子实验室合作开发Q-Excel优化算法,预计提升解析速度200倍

通过深度整合FastExcel与Reactor,开发者可构建出同时具备企业级可靠性互联网级高并发能力的Excel处理系统。该方案已在2025年双十一期间支撑2.3亿订单的实时分析,证明其在大规模复杂场景中的技术领先性。建议新项目直接采用此架构,存量系统可通过逐步迁移策略实现技术升级。

相关事件

事件名称事件时间事件概述

FastExcel的创建与发布

2023技术创新原EasyExcel作者在2023年离职后创建了FastExcel,旨在提供高性能的Excel文件处理解决方案。

FastExcel与EasyExcel的兼容性及迁移指南

不明确,但提及于2024-12-23和12-09的文章中技术文档FastExcel保留了EasyExcel的所有功能和特性,并提供了从EasyExcel迁移到FastExcel的指南。

FastExcel的功能创新与改进

不明确,但提及于2024-12-23和12-09的文章中产品更新FastExcel在功能上进行了创新和改进,如新增读取指定行数和将Excel转换为PDF的能力。

FastExcel的性能优化与应用场景

不明确,但提及于2025-01-01的文章中技术优势FastExcel专注于性能优化,能高效处理大规模数据,降低内存占用,并适用于多种商业场景。

相关文章:

FastExcel与Reactor响应式编程深度集成技术解析

一、技术融合背景与核心价值 在2025年企业级应用开发中&#xff0c;大规模异步Excel处理与响应式系统架构的结合已成为技术刚需。FastExcel与Reactor的整合方案&#xff0c;通过以下技术协同实现突破性性能&#xff1a; 内存效率革命&#xff1a;FastExcel的流式字节操作与Re…...

【MySQL篇】数据类型

目录 前言&#xff1a; 1&#xff0c;数据类型的分类 ​编辑 2 &#xff0c;数值类型 2.1 tinyint类型 2.2 bit类型 2.3 小数类型 2.3.1 float类型 2.3.2 decimal类型 3&#xff0c;字符串类型 3.1 char 3.2 varchar 3.3 char与varchar的比较 3.4日期和时间类型 3.5 …...

haclon固定相机位标定

什么是标定&#xff1f; 工业应用中相机拍到一个mark点的坐标为C1&#xff08;Cx,Cy&#xff09;&#xff0c;C1点对应的龙门架/机械手等执行端对应的坐标是多少&#xff1f; 标定就是解决这个问题&#xff0c;如相机拍到一个点坐标C1&#xff08;Cx,Cy&#xff09;&#xff0c…...

Token相关设计

文章目录 1. 双Token 机制概述1.1 访问令牌&#xff08;Access Token&#xff09;1.2 刷新令牌&#xff08;Refresh Token&#xff09; 2. 双Token 认证流程3. Spring Boot 具体实现3.1 生成 Token&#xff08;使用 JWT&#xff09;3.2 解析 Token3.3 登录接口&#xff08;返回…...

vue3:四嵌套路由的实现

一、前言 1、嵌套路由的含义 嵌套路由的核心思想是&#xff1a;在某个路由的组件内部&#xff0c;可以定义子路由&#xff0c;这些子路由会渲染在父路由组件的特定位置&#xff08;通常是 <router-view> 标签所在的位置&#xff09;。通过嵌套路由&#xff0c;你可以实…...

在 Element Plus 的 <el-select> 组件中,如果需要将 <el-option> 的默认值设置为 null。 用于枚举传值

文章目录 引言轻松实现 `<el-option>` 的默认值为 `null`I 实现方式监听清空事件 【推荐】使用 v-model 绑定 null添加一个值为 null 的选项处理 null 值的显示引言 背景:接口签名规则要求空串参与,空对象不参与签名计算 // 空字符串“” 参与签名组串,null不参与签…...

List(3)

前言 上一节我们讲解了list主要接口的模拟实现&#xff0c;本节也是list的最后一节&#xff0c;我们会对list的模拟实现进行收尾&#xff0c;并且讲解list中的迭代器失效的情况&#xff0c;那么废话不多说&#xff0c;我们正式进入今天的学习 list的迭代器失效 之前在讲解vec…...

算法-二叉树篇23-二叉搜索树中的插入操作

二叉搜索树中的插入操作 力扣题目链接 题目描述 给定二叉搜索树&#xff08;BST&#xff09;的根节点 root 和要插入树中的值 value &#xff0c;将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 &#xff0c;新值和原始二叉搜索树中的任意节点值都不同…...

React底层常见的设计模式

在React中&#xff0c;常见的设计模式为开发者提供了结构化和可重用的解决方案&#xff0c;有助于提高代码的可维护性和可扩展性。以下是对React中几种常见设计模式的详细解析&#xff0c;并附上示例代码和注释&#xff1a; 1. 容器组件与展示组件模式&#xff08;Container/P…...

【PHP脚本语言详解】为什么直接访问PHP文件会显示空白?从错误示例到正确执行!

前言 作为一名开发者&#xff0c;你是否曾经遇到过这样的问题&#xff1a;写了一个PHP脚本&#xff0c;放到服务器根目录后&#xff0c;直接通过file:///路径访问却显示空白页面&#xff1f;而换成http://localhost却能正常显示&#xff1f;这篇文章将带你深入理解PHP脚本语言…...

小程序性能优化-预加载

在微信小程序中&#xff0c;数据预加载是提升用户体验的重要优化手段。以下是处理数据预加载的完整方案&#xff1a; 一、预加载的适用场景 跳转页面前的数据准备 如从列表页进入详情页前&#xff0c;提前加载详情数据首屏加载后的空闲时间 在首页加载完成后&#xff0c;预加载…...

Docker 数据卷管理及优化

Docker 数据卷是一个可供容器使用的特殊目录&#xff0c;它绕过了容器的文件系统&#xff0c;直接将数据存储在宿主机上。通过数据卷&#xff0c;可以实现数据的持久化、共享以及独立于容器生命周期的管理。 1.1 为什么要用数据卷 Docker 分层文件系统的特点 性能差&#xff…...

MySQL实现文档全文搜索,分词匹配多段落重排展示,知识库搜索原理分享

一、背景 在文档搜索场景中&#xff0c;高效精准的搜索功能至关重要&#xff0c;能提升检索效率&#xff0c;为用户提供精准、快速的信息获取体验&#xff0c;提高工作效率。在文档管理系统里&#xff0c;全文搜索是非常重要的功能之一。随着文档数量增长&#xff0c;如何快速…...

C#内置委托(Action)(Func)

概述 在 C# 中&#xff0c;委托是一种类型&#xff0c;它表示对具有特定参数列表和返回类型的方法的引用。C# 提供了一些内置委托&#xff0c;使得开发者可以更方便地使用委托功能&#xff0c;无需手动定义委托类型。本文将详细介绍 Action 和 Func 这两个常用的内置委托。 A…...

OpenCV计算摄影学(3)CUDA 图像去噪函数fastNlMeansDenoising()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 使用非局部均值去噪算法&#xff08;Non-local Means Denoising algorithm&#xff09;执行图像去噪&#xff0c;该算法来源于 http://www.ipol.…...

Kafka生产者相关

windows中kafka集群部署示例-CSDN博客 先启动集群或者单机也OK 引入依赖 <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>3.9.0</version></dependency>关于主题创建 理论…...

【容器化】低版本docker拉取ubuntn 22.04镜像启动容器执行apt update提示 NO_PUBKEY 871920D1991BC93C

前置信息 宿主机信息 [root@localhost ~]# cat /etc/os-release NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR…...

如何流畅访问github

1.传输数据原理 本地计算机通过本地网接入运营骨干网&#xff0c;经过DNS域名解析&#xff0c;将输入的字符解析为要连接的真实IP地址&#xff0c;服务器返还一个数据包(github)给计算机 2.原因 DNS域名污染-DNS解析出现问题&#xff0c;导致访问一个不存在的服务器 3.解决…...

vue3:三项目增加404页面

一、路由添加 1、官网地址 带参数的动态路由匹配 | Vue Routerhttps://router.vuejs.org/zh/guide/essentials/dynamic-matching.html 2、复制核心语句 { path: /:pathMatch(.*)*, name: NotFound, component: NotFound } 3、粘贴到路由index.js中 4、建立页面 在view文件夹…...

纯c#字体处理库(FontParser) -- 轻量、极速、跨平台、具有字体子集化功能

关于字体库与 FontParser 的开发历程   字体库是用于处理和渲染字体的软件工具&#xff0c;其功能通常涵盖字体文件的加载、解析、字形渲染和文本布局等核心模块。在众多字体库中&#xff0c;FreeType 是被广泛应用且极具影响力的开源项目&#xff0c;已成为事实上的行业标准…...

云和恩墨亮相PolarDB开发者大会,与阿里云深化数据库服务合作

2025年2月26日&#xff0c;备受瞩目的阿里云PolarDB开发者大会于北京嘉瑞文化中心盛大举行&#xff0c;众多行业精英齐聚一堂&#xff0c;共襄技术盛会。云和恩墨作为阿里云重要的生态合作伙伴受邀参会。云和恩墨联合创始人兼技术研究院总经理杨廷琨与阿里云智能数据库产品事业…...

【通俗讲解电子电路】——从零开始理解生活中的电路(二)

电路分析&#xff1a;看懂简单的“电路图” ——从“路线图”到“工具箱”&#xff0c;掌握电路的底层逻辑 1. 欧姆定律&#xff1a;电的“交通规则” 公式解析&#xff1a;V I R 电压&#xff08;V&#xff09;&#xff1a;推动电流的动力&#xff08;如电池电压&#xff…...

Spring DIIoC

一.IoC 1.简介 什么是IoC&#xff1f;IoC&#xff0c;全称 Inversion of Control&#xff0c;控制反转。IoC是Spring的核心思想&#xff0c;Spring是⼀个“控制反转”的容器。 如果我们需要一个对象&#xff0c;正常来说我们是通过new一个对象&#xff0c;这个时候我们依赖的…...

基于javaweb的SSM+Maven幼儿园管理系统设计和实现(源码+文档+部署讲解)

技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论…...

C++22——哈希

目录 1.unordered_map的文档介绍 2.unordered_set的文档介绍 3.底层结构 3.1哈希的概念 3.2哈希冲突 3.3哈希函数 3.4哈希冲突解决 3.4.1闭散列 3.4.2开散列 1.unordered_map的文档介绍 unordered_map在线文档说明 unordered_map是存储<key&#xff0c;value>键值…...

使用Spring Boot与达梦数据库(DM)进行多数据源配置及MyBatis Plus集成

使用Spring Boot与达梦数据库(DM)进行多数据源配置及MyBatis Plus集成 在现代企业级应用开发中&#xff0c;处理多个数据源是一个常见的需求。本文将详细介绍如何使用Spring Boot结合达梦数据库&#xff08;DM&#xff09;&#xff0c;并通过MyBatis Plus来简化数据库操作&…...

Servlet简介

Servlet是sun公司提供的一门用于开发动态web资源的技术。 Sun公司在其API中提供了一个servlet接口&#xff0c;用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据)&#xff0c;需要完成以下2个步骤&#xff1a; 编写一个Java类&#xff0c;实现servlet接口。 …...

智能合约安全 | 合约无效化攻击

目录&#xff1a; 智能合约安全 合约无效化攻击 合约自毁函数 selfdestruct 攻击实现 漏洞防御 总结 智能合约安全 合约无效化攻击 合约无效化攻击类同于web安全中的逻辑漏洞中的一种 我们这里拿一个典型的例子来讲解 有这样一份智能合约, 每个人可以向其中发送1 eth 第七个…...

20250226-代码笔记05-class CVRP_Decoder

文章目录 前言一、class CVRP_Decoder(nn.Module):__init__(self, **model_params)函数功能函数代码 二、class CVRP_Decoder(nn.Module):set_kv(self, encoded_nodes)函数功能函数代码 三、class CVRP_Decoder(nn.Module):set_q1(self, encoded_q1)函数功能函数代码 四、class…...

【开源免费】基于SpringBoot+Vue.JS网络海鲜市场系统(JAVA毕业设计)

本文项目编号 T 222 &#xff0c;文末自助获取源码 \color{red}{T222&#xff0c;文末自助获取源码} T222&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...

【LeetCode: SQL专题 : SQL132 每个题目和每份试卷被作答的人数和次数 + 合并查询】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…...

【软考-架构】1.2、指令系统-存储系统-cache

GitHub地址&#xff1a;https://github.com/tyronczt/system_architect ✨资料&文章更新✨ 指令系统 计算机指令执行过程&#xff1a;取指令一一分析指令一一执行指令三个步骤&#xff0c;首先将程序计数器PC中的指令地址取出&#xff0c;送入地址总线&#xff0c;CPU依据…...

Uniapp开发微信小程序插件的一些心得

一、uniapp 开发微信小程序框架搭建 1. 通过 vue-cli 创建 uni-ap // nodejs使用18以上的版本 nvm use 18.14.1 // 安装vue-cli npm install -g vue/cli4 // 选择默认模版 vue create -p dcloudio/uni-preset-vue plugindemo // 运行 uniapp2wxpack-cli npx uniapp2wxpack --…...

C++-第十八章:线程相关内容

目录 第一节&#xff1a;thread的主要内容 1-1.创建子线程 1-2.回收子线程 1-3.获得子线程的id 1-4.获得当前线程id 1-5.子线程传引用 1-6.线程的先创建后使用 第二节&#xff1a;mutex的主要内容 2-1.mutex的作用 2-2.智能锁 第三节&#xff1a;condition_variable的主要内…...

纯函数(Pure Function)概念

纯函数&#xff08;Pure Function&#xff09;概念 纯函数是函数式编程中的核心概念&#xff0c;满足以下两个条件&#xff1a; 确定性&#xff1a;相同的输入 永远得到相同的输出&#xff0c;不依赖外部状态或随机性。 无副作用&#xff1a;不会修改外部变量、参数、I/O设备或…...

【网络安全】敏感字段扫描工具(可用于漏洞挖掘、代码审计)

原创文章,禁止转载。 读者可对脚本进行二次创作,以适配个人需求。 文章目录 ScanSensitiveInfo.py效果图ScanSensitiveInfo.py 该脚本用于扫描敏感字段、代码中可能引入的第三方JS链接/服务以及可能涉及信息泄露的请求方法。 1、脚本采用单线程处理,避免多线程导致的混行问…...

介绍下pdf打印工具类 JasperPrint

JasperPrint 工具类深度解析 JasperPrint 是 JasperReports 框架中实现 PDF 打印的核心载体类&#xff0c;其本质是 填充数据后的可打印报表对象&#xff0c;承担着从模板编译、数据填充到格式输出的全流程控制。以下从 7 个维度展开深度解析&#xff1a; 一、核心定位与生命周…...

Deepseek Api Function Calling解析(tools、tool_calls)Deepseek函数调用流程图、Python代码示例

文章目录 Function Calling介绍**核心原理**1. **动态扩展模型能力**2. **JSON结构化交互** **实现步骤**&#xff08;以支持Function Calling的模型为例&#xff09;1. **定义可用函数**2. **模型匹配与生成**3. **开发者执行函数**4. **结果反馈给模型** **DeepSeek R1的当前…...

分享一套适合做课设的SpringBoot商城系统

开学季到了&#xff0c;不少同学都进入了学习的状态中去了&#xff0c;趁着今天有空来分享一套商城系统&#xff0c;这套代码实现了商城的前后台&#xff0c;整体界面和代码非常简洁&#xff0c;熟悉项目之后可以根据需求进行二次开发&#xff0c;也适合用来做毕设、课设&#…...

C语言自定义类型:联合和枚举

在C语言中&#xff0c;联合&#xff08;Union&#xff09;和枚举&#xff08;Enum&#xff09;是两种重要的的自定义数据类型。它们分别适用于不同的场景&#xff0c;能够提升代码的效率和可维护性。。本文将结合代码示例&#xff0c;详细讲解它们的声明、特点及使用方法。 一、…...

Redis SCAN 命令详解:安全遍历海量键的利器

一、SCAN 命令的核心价值 Redis 的 KEYS * 命令虽然可以遍历所有键&#xff0c;但在生产环境中直接使用可能导致服务阻塞&#xff08;时间复杂度 O(n)&#xff09;。SCAN 命令通过游标分批次迭代&#xff0c;实现非阻塞式遍历&#xff0c;成为处理百万级键的安全选择。 二、命…...

文字滚动效果组件和按钮组件

今天和大家分享一个vue中好用的组件&#xff0c;是我自己写的&#xff0c;大家也可以自己改&#xff0c;就是文字的循环滚动效果&#xff0c;如下图&#xff0c;文字会向左移动&#xff0c;结束之后也会有一个循环&#xff0c;还有一个按钮组件&#xff0c;基本框架写的差不多了…...

Sqlserver安全篇之_TLS的证书概念

证书的理解 参考Sqlserver的官方文档https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/certificate-overview?viewsql-server-ver16 TLS(Transport Layer Security)传输层安全和SSL(Secure Sockets Layer)安全套接字层协议位于应用程序协议层和TCP/…...

VS Code 如何搭建CC++开发环境

VS Code 如何搭建C/C开发环境 文章目录 VS Code 如何搭建C/C开发环境1. VS Code是什么2. VS Code的下载和安装2.1 下载和安装2.2 环境的介绍 3. VS Code配置C/C开发环境3.1 下载和配置MinGW-w64编译器套件3.2 安装C/C插件3.3 重启VS Code 4. 在VS Code上编写C语言代码并编译成功…...

计算机网络之传输层(传输层的功能)

一、数据分段与重组 传输层从会话层接收数据&#xff0c;并将其分割成较小的数据段&#xff0c;以适应网络层的最大传输单元&#xff08;MTU&#xff09;限制。在目的端&#xff0c;传输层负责将这些数据段重新组合成原始数据&#xff0c;确保数据的完整性和正确性。 二、端口…...

中科大计算机网络原理 1.5 Internt结构和ISP

一、互联网的层次化架构 ‌覆盖范围分层‌ ‌主干网&#xff08;Tier-1级&#xff09;‌ 国家级或行业级核心网络&#xff0c;承担跨区域数据传输和全球互联功能。例如中国的四大主干网&#xff08;ChinaNET、CERNET等&#xff09;以及跨国运营商&#xff08;如AT&T、Deuts…...

【网络安全 | 渗透工具】小程序反编译分析源码 | 图文教程

未经许可,禁止转载。 本文仅供学习使用,严禁用于非法渗透测试,笔者不承担任何责任。 文章目录 1、下载Proxifier2、下载反编译工具unveilr3、寻找小程序文件包4、对文件包进行反编译5、对源码进行分析6、渗透思路6.1、查找敏感信息泄露6.2、解析加解密逻辑6.3、枚举 API 接口…...

在鸿蒙HarmonyOS手机上安装hap应用

一、下载工具 安装hap包需要用到小工具 。 二、解压到目录后&#xff0c;进入该文件夹&#xff0c;打开命令行&#xff0c;如下图 三、将下载好的hap包放入刚才解压的文件夹内&#xff08;假设hap包文件名为app.hap&#xff09; 四、连接好手机和电脑&#xff0c;手机需要打…...

SQLAlchemy系列教程:SQLAlchemy快速入门示例项目

SQLAlchemy是与数据库交互的Python开发人员不可或缺的库。这个强大的ORM允许使用python结构进行简单的数据库操作。设置过程很简单&#xff0c;并且允许可扩展的数据库应用程序开发。本文通过入门项目完整介绍SQLAlchemy的应用过程&#xff0c;包括安装依赖包&#xff0c;创建连…...

【大模型系列篇】DeepSeek开源周,解锁AI黑科技

&#x1f525; Day1&#xff1a;FlashMLA —— GPU推理加速器 专为处理长短不一的AI推理请求而生&#xff0c;就像给Hopper GPU装上了智能导航&#xff0c;让数据在芯片上跑出3000GB/s的"磁悬浮"速度。✅ 已支持BF16格式&#xff5c;580万亿次浮点运算/秒FlashMLA G…...