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

如何将内网的IP地址映射到外网?常见方法及详细步骤

自己计算机搭建网络端口服务,或公司内部本地服务器部署项目后,如果同时需要提供异地互联网上连接使用,就需要将内网IP地址映射到外网上。

将本地网络的内网 IP 地址映射到外网,通常是为了允许外部网络访问内网中的特定服务(如指定端口 Web 服务、远程桌面连接、SSH、数据库、打印机、普通TCP接口等)。以下是几种常见的方法及详细步骤:

一、端口转发(路由器自带功能)

适合有路由权限且路由器拥有公网 IP 地址,需要将外网请求转发到内网的特定设备和服务。操作步骤参考如下:

1. 确认本地自己公网 IP  地址

访问 查看路由器的公网 IP(需确保WAN口 未分配私有 IP,如运营商 NAT后IP属内网IP)。如路由IP是公网IP段范围,通常还需要同时网上搜索或网上专门查询IP服务核对是否一致,如出现不同IP则表示是局域网IP地址。

2. 给主机设置静态内网 IP  

为内网设备分配固定的内网 IP(通过路由器 DHCP 静态分配或手动在服务器本地网络属性设置),避免 IP 变化导致路由转发失效。可以先参考正常IP记录再手动设置上固定的,确保IP的可用性。

3. 登录本地路由器管理界面

打开浏览器并输入路由器 IP(如 `192.168.1.1`)和账号密码登录操作,找到 端口转发或 虚拟服务器 选项。有的路由是在高级设置里面,也有的叫端口映射,不同型号名称位置略有不同,功能是一样的。

4. 添加配置路由端口转发规则  

内部 IP:目标内网计算机或设备的 固定IP(如 `192.168.1.100`),注意这个IP要是固定不变的。   

内部端口:服务在内网设备上运行的端口(如 `80`)。  协议:选择 TCP/UDP 或ALL(根据服务需求),有的路由也有http协议针对网站服务的。

外部IP端口:很多路由默认不显示外部IP端口参数,默认外部端口与内部端口是一样的。如有自定义外部端口的,大多情况也建议填写与内部端口号一样的。

确认保存后,路由转发规则就生效的了。

5. 测试映射后外网IP访问

本地或外网异地通过 `公网IP:外部端口` 访问服务。有的路由支持本地内网用路由IP访问,有的路由则不支持,最好跨网环境下测试访问,如手机4G访问家庭电信带宽。

6. 动态 DNS(DDNS)(可选)

公网 IP 是动态变化的(如家庭宽带),如不想每次访问前查看IP,可以用动态域名解析方案通过固定域名来访问。动态域名解析设置可以通过路由上设置实现,也可以用支持DDNS功能的网络工具简单操作实现。如在内网计算机上使用nat123添加动态域名解析记录,用自己域名或自动生成的二级域名,来作为公网地址访问,固定不变的。

二、界面操作的内网穿透(普通人常用)

能够简单便捷的直接将内网IP转换成域名,提供异地任意上网环境下访问连接,适合无公网IP的普通用户场景,常见的有如nat123、花生壳、金万维等。以大众化的nat123网络工具为示例,操作步骤参考:

1.下载安装

在本地目标计算机或所在内网任意主机上,下载安装nat123客户端并登录使用。如果自己有多个网络环境下的应用场景,则需要分别注册不同帐号登录使用区分。

2.登录添加映射

登录客户端后,在主界面上找到“添加映射”点击进入设置,选择合适的映射类型(如80、443、非80、同端口等)和自定义好内外网地址。然后保存,界面上会生成一个带内外网地址映射记录。

自己域名指向(可选):对于外网地址填写自己域名映射的,保存后再登录自己注册域名解析网上添加对应的cname指向让自己域名生效。

3.外网访问

当我们在目标内网使用了网络映射服务后,在异地网络环境下,通过对应设置的域名和外网端口号即可以了。

三、命令式配置内网穿透

不少第三方内网穿透工具是提供命令操作管理的,无公网 IP 或无法配置路由器(如校园网、企业网络)下也可以使用,常见的有如开源的ngrok和frp等。不同的穿透服务使用命令方式会是不同的,具体需要查询对应说明文档来操作,下面参考操作步骤(以 Ngrok 为例):

1. 注册并安装 Ngrok,获取认证 Token。   

2. 运行命令:`ngrok authtoken <your_token>`。   

3. 启动隧道:`ngrok tcp 3389`(将本地 3389 端口映射到公网)。  

4. 使用 Ngrok 提供的公网地址(如 `ngrok域名:12345`)访问服务。

四、VPN 内网穿透(需要二端部署)

需访问整个内网,而非单一端口或指定多个端口。可以用自己公网主机部署虚拟网服务,也可以直接采用三方虚拟组网工具实现。参考操作步骤:

1. 部署 VPN 服务

   使用 OpenVPN或路由器自带的 VPN 功能。

2. 配置端口转发  

   将 VPN 服务的端口(如 OpenVPN 的 `1194`)映射到公网。

3. 外网连接 VPN

   通过虚拟 IP 或 域名连接到 VPN,接入内网后直接访问内网 IP。

VPN搭建虚拟局域网原理是将所有服务端和访问端建立互通关系,不管是自己部署还是借助三方工具,都需要在所有访问端和服务端安装部署设置。

五、云服务器反向代理(自建方案)

有云服务器,通过反向代理转发流量,SSH、nginx、proxy等都可以实现。操作步骤参考:

1. 在云服务器部署反向代理  

   使用 Nginx 或 HAProxy,配置将公网请求转发到内网服务。  

   Nginx 示例配置:

   ```nginx

   server {

       listen 80;

       server_name your-domain.com;

       location / {

           proxy_pass http://内网IP:端口;

       }

   }

   ```

2. 内网设备建立隧道到云服务器

   使用 SSH 建立持久连接:

   ```bash

   ssh -R 8080:localhost:80 user@云服务器IP

   ```

六、IPv6地址访问  

   若支持 IPv6,可直接通过设备 IPv6 地址访问(需配置防火墙)。

七、安全注意事项

1. 仅暴露必要端口,关闭不用端口程序应用。  

 2.  使用强密码、防火墙入口规则设置等 提升安全性。

3.在持续提供互联网访问期间,定时查看本地服务器资源使用情况,排查网络安全风险,确保本地网络稳定安全。

以上就是内网IP映射外网访问详细教程,在实际网络场景需求使用中,根据实际网络环境和需求选择合适的内网映射外网访问方案,适合自己的就是好的方法,同时考虑易用、稳定、安全和成本控制等综合因素。

相关文章:

如何将内网的IP地址映射到外网?常见方法及详细步骤

自己计算机搭建网络端口服务&#xff0c;或公司内部本地服务器部署项目后&#xff0c;如果同时需要提供异地互联网上连接使用&#xff0c;就需要将内网IP地址映射到外网上。 将本地网络的内网 IP 地址映射到外网&#xff0c;通常是为了允许外部网络访问内网中的特定服务&#…...

Node.js AI 通义灵码 VSCode 插件安装与功能详解

Node.js 作为基于 Chrome V8 引擎的 JavaScript 运行时&#xff0c;使 JavaScript 成为后端开发的重要选择。 在 Node.js 开发中&#xff0c;使用高效的工具可以显著提升开发效率和代码质量。 通义灵码作为一款智能编码助手&#xff0c;为 Node.js 开发者提供了强大的支持。 …...

Linux中的 I/O 复用机制 select

第一部分&#xff1a;select 基本概念 1.1. I/O 复用的提出&#xff1a;并发处理的挑战 在传统的网络服务模型中&#xff0c;服务器为每一个客户端连接创建一个独立的线程或者进程来处理。这种模式在并发连接数量较少时或许尚能应对&#xff0c;但当并发量显著增大时&#xf…...

再议AOI算法

AOI算法优化 首先&#xff0c;需要知道AOI&#xff08;Area of Interest&#xff09;是什么。AOI通常用于游戏或者分布式系统中&#xff0c;用来管理玩家或对象的视野范围&#xff0c;只关注感兴趣区域内的其他对象&#xff0c;减少不必要的通信和数据传输。 整理思路 如文章…...

Unreal5 从入门到精通之如何实现 离线语音识别

文章目录 前言将语言服务器作为外部进程运行UE 项目设置开始捕获语音同时运行服务器进程和游戏进程将 SoundWave 而不是麦克风作为输入将数据发送到语言服务器节点的工作原理详细文档前言 今天我们要说的是一个语音转文本(STT)的插件 Offline Speech Recognition, 它支持离线…...

form-create-designer中$inject参数的数据结构及各项属性说明

FcDesigner 是一款基于Vue的开源低代码可视化表单设计器工具&#xff0c;通过数据驱动表单渲染。可以通过拖拽的方式快速创建表单&#xff0c;提高开发者对表单的开发效率&#xff0c;节省开发者的时间。并广泛应用于在政务系统、OA系统、ERP系统、电商系统、流程管理等领域。 …...

WHAT - CSS 中的 min-height

文章目录 语法常见用途1. 防止元素被压缩得太小2. 配合 Flexbox 保证高度3. 用于内容区域动态撑高但不塌陷 与其他属性的区别提示 在 WHAT - CSS 中的 min-width 中我们已经详细介绍过 width。对于高度&#xff0c; CSS 同样提供一个 min-height. min-height 是 CSS 中用于设置…...

畅游Diffusion数字人(30):情绪化数字人视频生成

畅游Diffusion数字人(0)&#xff1a;专栏文章导航 前言&#xff1a;仅从音频生成此类运动极具挑战性&#xff0c;因为它在音频和运动之间存在一对多的相关性。运动视频的情绪是多元化的选择&#xff0c;之前的工作很少考虑情绪化的数字人生成。今天解读一个最新的工作FLOAT&…...

PLC系统中开关量与模拟量信号解析

引言 在现代工业自动化进程中&#xff0c;可编程逻辑控制器&#xff08;PLC&#xff09;凭借其强大的功能与灵活性&#xff0c;成为工业控制系统的核心设备。PLC能够高效、精准地控制工业生产流程&#xff0c;很大程度上依赖于其对开关量和模拟量信号的处理能力。深入理解这两…...

Qt中解决Tcp粘包问题

Qt中解决Tcp粘包问题 Qt中解决Tcp粘包问题——以文件发送为例服务器端客户端效果演示注意点 Qt中解决Tcp粘包问题——以文件发送为例 创建的工程如下图所示&#xff1a; 服务器端 界面的布局以及名称如下图所示&#xff1a; 并且在Qt中增加网络模块 QT core gui n…...

Qt调用librdkafka

Qt调用librdkafka Windows系统编译Qt使用的kafka(librdkafka) VS2017编译librdkafka 2.1.0 经过上面的步骤我已经编译好了librdkafka库,我编译的主要十release版的,需要debug版的小伙伴编译的时候要留意一下。 接下来就是调用我们编译的kafka库了。 一、环境介绍 Qt:…...

深入解析Node.js文件系统(fs模块):从基础到进阶实践

文章目录 引言一、核心能力解析1.文件读写操作2.文件复制方案对比3.文件监控机制 二、扩展知识体系1.高级文件操作2.性能优化策略3.安全实践指南 三、最佳实践总结 引言 在 Node.js 生态系统中&#xff0c;fs 模块是与文件系统交互的核心工具。本文将通过代码示例和实践经验&a…...

9、AI测试辅助-代码Bug分析提示词优化

AI测试辅助-优化代码Bug分析提示词 Bug分析1、优化代码2、根据报错结果定位 Bug分析 利用AI优化代码Bug&#xff0c;有两种方式&#xff0c;一种是优化潜在的问题&#xff0c;一种是根据执行后的报错进行查找定位优化。其中如何用好提示词是关键 1、优化代码 常见需要优化的…...

AI无法解决的Bug系列(一)跨时区日期过滤问题

跨时区开发中&#xff0c;React Native如何处理新西兰的日期过滤问题 有些Bug&#xff0c;不是你写错代码&#xff0c;而是现实太魔幻。 比如我最近给新西兰客户开发一个React Native应用&#xff0c;功能非常朴素&#xff1a;用户选一个日期范围&#xff0c;系统返回该范围内…...

leetcode 153. Find Minimum in Rotated Sorted Array

题目描述 分析 可以发现一个规律&#xff1a; 假如整个数组最后一个元素是x。 最小值左侧&#xff08;不含最小值自己&#xff09;的元素全部大于x。 最小值右侧&#xff08;包含最小值自己&#xff0c;不包含x&#xff09;的元素全部小于x。 如果整个数组是有序的&#x…...

Brave 连接 Websocket 失败

前提: websocket 的服务启动正常连接的url是: ws://localhost: 15000/[子url] 在 Brave 浏览器的 console 中看到错误: WebSocket connection to ws://localhost:15000/ws failed:解决方法&#xff08;Brave 浏览器专用&#xff09; 方法 1&#xff1a;关闭 Brave 的 Shiel…...

【设计模式】基于 Java 语言实现工厂模式

目录 一、简单工厂模式 1.1 简单工厂模式的介绍 二、工厂方法模式 2.1 工厂方法模式的介绍 2.2 工厂方法模式的基本实现 2.3 工厂方法模式的应用场景 三、抽象工厂 3.1 抽象工厂的概念 3.2 抽象工厂的基本结构 3.3 抽象工厂的基本实现 3.4 抽象工厂的应用场景 四、…...

94.LabelGrid 的遍历与属性编辑 Maui例子 C#例子

for (int i 0; i < LabelGrid.Children.Count; i) {if (LabelGrid.Children[i] is Label label){await MainThread.InvokeOnMainThreadAsync(() >{label.TextColor Colors.Gray;});} } await Task.Delay(1000); // 延迟1秒 if (currentValue 0) {currentValue 16; } …...

Https流式输出一次输出一大段,一卡一卡的-解决方案

【背景】 最近遇到一个奇怪的现象&#xff0c;前端vue&#xff0c;后端python&#xff0c;服务部署在服务器上面后&#xff0c;本来一切正常&#xff0c;但公司说要使用https访问&#xff0c;想着也没什么问题&#xff0c;切过去发现在没有更改任何代码的情况下&#xff0c;ht…...

【C# 自动化测试】Selenium显式等待机制详解

Selenium显式等待机制详解 一、显式等待的概念 在自动化测试中&#xff0c;等待机制是处理页面元素加载延迟的重要手段。显式等待允许我们在继续执行代码之前等待某个条件发生&#xff0c;这比固定的强制等待更灵活高效。 二、显式等待的实现代码 1. 核心等待方法 /// <…...

【Redis】哈希表结构

目录 1、背景2、哈希表【1】底层结构【2】哈希冲突【3】链地址法【4】传统rehash【5】渐进式rehash【6】rehash触发条件【7】特性 1、背景 redis中的hashtable&#xff08;哈希表&#xff09;是一种高效的键值对存储结构&#xff0c;主要用于实现redis的字典类型&#xff0c;接…...

Redisson中为什么用lua脚本不用事务

一文详解事务和lua脚本的区别 核心问题&#xff1a; 为什么 Redisson 在实现分布式锁、信号量等复杂对象时&#xff0c;倾向于使用 Lua 脚本&#xff0c;而不是 Redis 内建的事务 (MULTI/EXEC)&#xff1f; 结论概览&#xff1a; Lua 脚本为 Redisson 提供了更强的原子性保证、…...

成功解决!!!Ubuntu系统安装包时出现:dpkg: 处理归档XXX时出错

在Ubuntu系统中在安装新的包时&#xff0c;有时会报错连环依赖问题&#xff0c;常见的报错为&#xff1a;下列软件包有未满足的依赖关系&#xff1a;XXX依赖XXX 但是它不会被安装 E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以…...

MySql数据库连接池

C数据库连接池 前言1.MySql API 函数讲解1.1 连接数据库的步骤1.2 MySQL C API1.2.1 初始化连接环境1.2.2 连接mysql服务器1.2.3 执行sql语句1.2.4 获取结果集1.2.5 得到结果集的列数1.2.6 获取表头 -> 列名(字段名)1.2.7 得到结果集中各个字段的长度(字节为单位)1.2.8 遍历…...

C++之fmt库介绍和使用(2)

C之fmt库介绍与使用(2) Author: Once Day Date: 2025年5月19日 一位热衷于Linux学习和开发的菜鸟&#xff0c;试图谱写一场冒险之旅&#xff0c;也许终点只是一场白日梦… 漫漫长路&#xff0c;有人对你微笑过嘛… 全系列文章可参考专栏: 源码分析_Once-Day的博客-CSDN博客 …...

Python的collections模块:数据结构的百宝箱

Python的collections模块&#xff1a;数据结构的百宝箱 对话实录 小白&#xff1a;处理数据时&#xff0c;Python自带的数据结构不够用&#xff0c;有更强大的工具吗&#xff1f; 专家&#xff1a;那可不能错过collections模块&#xff0c;它提供了许多高效实用的数据结构&am…...

吃透 Golang 基础:数据结构之数组

文章目录 吃透 Golang 基础&#xff1a;数据结构之数组概述初始化访问和赋值小结参考资料 吃透 Golang 基础&#xff1a;数据结构之数组 对于 Golang 当中的顺序数据结构&#xff0c;使用频率最高的当然是切片&#xff0c;因为切片非常的灵活。与之相对比&#xff0c;数组常常会…...

第三个小程序动工:一款结合ai的菜谱小程序

1.环境搭建&#xff0c;与初步运行 安装及使用 | Taro 文档 找到一个合适的文件夹&#xff0c;cmd D:\gitee>pnpm install -g tarojs/cli╭──────────────────────────────────────────╮│ …...

小程序涉及提供提供文本深度合成技术,请补充选择:深度合成-AI问答类目

一、问题描述 最近新项目AI咨询小程序审核上线&#xff0c;按照之前小程序的流程&#xff0c;之前审核&#xff0c;提示审核不通过&#xff0c;审核不通过的原因&#xff1a;小程序涉及提供提供文本深度合成技术 (如: AI问答) 等相关服务&#xff0c;请补充选择&#xff1a;深…...

数据结构测试模拟题(1)

1、约瑟夫问题 #include<bits/stdc.h> using namespace std; const int N25; int e[N],ne[N],head-1,idx1; int n,m; void add_to_head(int x){e[idx]x;ne[idx]head;headidx; } void add(int k,int x){e[idx]x;ne[idx]ne[k];ne[k]idx; } int main(){cin>>n>>…...

Elasticsearch高级面试题汇总及答案

Elasticsearch高级面试题汇总及答案 这套Elasticsearch面试题汇总大全,希望对大家有帮助哈~ 1、什么是Elasticsearch Analyzer? 分析器用于文本分析,它可以是内置分析器也可以是自定义分析器。 2、Elasticsearch 支持哪些配置管理工具? 1、 Ansible 2、 Chef 3、 Pu…...

界面控件DevExpress WinForms v24.2——PDF Viewer功能升级

DevExpress WinForms拥有180组件和UI库&#xff0c;能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序&#xff0c;无论是Office风格的界面&#xff0c;还是分析处理大批量的业务数据&#xff0c;它都能轻松胜…...

Apache Apisix配置ip-restriction插件以限制IP地址访问

介绍 ip-restriction 插件可以通过将 IP 地址列入白名单或黑名单来限制对服务或路由的访问。 支持对单个 IP 地址、多个 IP 地址和类似 10.10.10.0/24 的 CIDR&#xff08;无类别域间路由&#xff09;范围的限制。 属性 参数名类型必选项默认值有效值描述whitelistarray[st…...

Maven 项目打包时添加本地 Jar 包

在 Maven 项目开发中&#xff0c;我们经常会遇到需要引入本地 Jar 包的场景&#xff0c;比如使用未发布到中央仓库的第三方库、公司内部自定义工具包&#xff0c;或者处理版本冲突的依赖项。本文将详细介绍如何通过 Maven 命令将本地 Jar 包安装到本地仓库&#xff0c;并在项目…...

JavaScript 性能优化:调优策略与工具使用

引言 在当今的 Web 开发领域&#xff0c;性能优化已不再是锦上添花&#xff0c;而是产品成功的关键因素。据 Google 研究表明&#xff0c;页面加载时间每增加 3 秒&#xff0c;跳出率将提高 32%。而移动端用户如果页面加载超过 3 秒&#xff0c;有 53% 的用户会放弃访问。性能…...

48、c# 中 IList 接⼝与List的区别是什么?

在 C# 中&#xff0c;IList 接口和 List 类在集合操作中扮演不同角色&#xff0c;主要区别体现在定义、功能、灵活性、性能及适用场景等方面。以下是详细对比&#xff1a; 1. 定义与本质 IList 接口 抽象契约&#xff1a;仅定义集合的基本操作&#xff08;如索引访问、添加、…...

在 Azure OpenAI 上使用 Elastic 优化支出和内容审核

作者&#xff1a;来自 Elastic Muthukumar Paramasivam&#xff0c;Bahubali Shetti 及 Daniela Tzvetkova 我们为 Azure OpenAI 正式发布包添加了更多功能&#xff0c;现在提供内容过滤监控和计费见解的增强&#xff01; 在之前的博客中&#xff0c;我们展示了如何使用 Elasti…...

Redis学习专题(三)主从复制

目录 引言&#xff1a; 1、搭建一主多从 1) 创建/hspredis目录, 并拷贝redis.conf 到 /hspredis 2) vi /hspredis/redis.conf , 进行如下设置 3) 创建3个文件/hspredis/redis6379.conf 、/hspredis/redis6380.conf 、/hspredis/redis6381.conf 并编辑 4) 启动三台redis服…...

设计模式之备忘录模式

在日常开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;需要保存对象的某个历史状态&#xff0c;以便将来恢复。这种需求最常见的例子就是“撤销操作”。在这种情况下&#xff0c;备忘录模式(Memento Pattern)就派上了用场。 目录 1. 概念 2. 代码实现 3. 总结 1. …...

深度学习-runner.run(data_loaders, cfg.workflow)内部执行过程

文件&#xff1a;~/catkin_ws/SparseDrive/projects/mmdet3d_plugin/apis/mmdet_train.py 完成数据加载器、优化器、运行器实例化后&#xff0c; RUNNERS.register_module() class IterBasedRunner(BaseRunner):"""Iteration-based Runner.This runner train m…...

嵌入式开发学习日志(linux系统编程--文件读写函数)Day24

一、系统编程 标准oi 【输入输出】 stdio.h 头文件 &#xff1a;stdio.h >标准输入输出头文件&#xff1b;/usr/include/stdio.h 二、文件操作 1、关于文件操作的步骤 &#xff08;1&#xff09;打开文件&#xff1b; &#xff08;2&#xff09;io操作&#xff0c;读写…...

DEBUG:Lombok 失效

DEBUG&#xff1a;Lombok 失效 问题描述 基于 Spring Boot 的项目中&#xff0c;编译时显示找不到 log 属性。查看对应的 class 类&#xff0c;Lombok 正常在编译时生成 log 属性。 同时存在另一个问题&#xff0c;使用Getter注解&#xff0c;但实际使用中该注解并没有生效&…...

Qt 控件发展历程 + 目标(1)

文章目录 声明简述控件的发展历程学习目标QWidget属性 简介&#xff1a;这篇文章只是一个引子&#xff0c;介绍一点与控件相关的但不重要的内容&#xff08;浏览浏览即可&#xff09;&#xff0c;这一章节最为重要的还是要把之后常用且重要的控件属性和作用给学透&#xff0c;学…...

按键精灵ios/安卓辅助工具高级函数OcrEx文字识别(增强版)脚本开发介绍

函数名称 OcrEx文字识别&#xff08;增强版&#xff09; 函数功能 返回指定区域内所有识别到的字符串、左上角坐标、区域宽高、可信度&#xff0c;无需自制字库&#xff0c;识别范围越小&#xff0c;效率越高&#xff0c;结果越准确 注意&#xff1a;安卓版按键APP需在设置…...

零基础入门Selenium自动化测试:自动登录edu邮箱

&#x1f31f; Selenium简单概述一下 Selenium 是一个开源的自动化测试工具&#xff0c;主要用于 Web 应用程序的功能测试。它能够模拟用户操作浏览器的行为&#xff08;如点击按钮、填写表单、导航页面等&#xff09;&#xff0c;应用于前端开发、测试和运维领域。 特点 跨…...

MySQL高频面试八连问(附场景化解析)

文章目录 "为什么订单查询突然变慢了&#xff1f;"——从这个问题开始说起一、索引的生死时速&#xff08;必考题&#xff01;&#xff09;二、事务的"套娃"艺术三、锁机制的相爱相杀四、存储引擎的抉择五、慢查询的破案技巧六、分页的深度优化七、高可用架…...

JVM 性能问题排查实战10连击

&#x1f5c2;️ 目录 前言&#xff1a;理论掌握只是起点&#xff0c;定位能力才是核心全局排查模型&#xff1a;三步法1️⃣Full GC 频繁触发&#xff1a;老年代压力过大2️⃣ OOM 爆炸&#xff1a;元空间泄漏 or 缓存未清理3️⃣ CPU 飙升却不是 GC&#xff1a;线程阻塞或热方…...

零基础深入解析 ngx_http_session_log_module

一、引言 在传统的 HTTP 日志中&#xff0c;每个请求都会被单独记录&#xff0c;这对于短连接、异步加载等场景非常直观&#xff1b;但在一些需要以“会话”为单位分析用户行为的场景下&#xff0c;如视频点播、多资源并行加载、长轮询等&#xff0c;单个请求日志难以准确反映…...

10.17 LangChain v0.3核心机制解析:从工具调用到生产级优化的实战全指南

LangChain v0.3 技术生态与未来发展 关键词:LangChain 工具调用, 聊天模型集成, @tool 装饰器, ToolMessage 管理, 多模态交互 使用聊天模型实现工具调用 LangChain v0.3 通过 工具调用(Tool Calling) 机制,将大模型与外部工具深度结合,形成闭环能力链。本节以 GPT-4、L…...

Android Framework学习七:Handler、Looper、Message

文章目录 简介LooperMessageMessageQueueHandlerFramework学习系列文章 简介 Looper当做一台传送装置&#xff0c;MessageQueue是传送带&#xff0c;传送带上放的是Message&#xff0c;Handler用于发送Message分发与接收处理。 Looper frameworks/base/core/java/android/app…...