内网的服务如何能在公网使用?

我在内网中有很棒的服务资源,但是没有固定IP,如何能够在公网使用呢? 要解决这种问题,内网穿透工具 frp(Fast Reverse Proxy) 是一个很棒的选择:既然外网不能访问内网,那么就主动从内网打通到外网的通道! 基本的原理是: 前提条件 要有一台有公网地址的服务器【配置可以比较低】,内网服务器可以连接到这台公网服务器 内网服务器安装frp客户端:frpc,公网服务器安装frp服务端:frps 建立 “长连接”—— 打通内网到公网的 “通道” 内网设备启动 frpc 客户端,并加载配置文件(配置中包含 frps 的公网 IP、端口、认证信息等)。 frpc 主动向公网的 frps 发起 TCP 长连接(默认用 8000 端口,可自定义),并维持这个连接(通过心跳机制防止断开)。 这一步是穿透的关键:由于内网设备没有公网 IP,公网无法主动 “找到” 内网设备,因此必须由内网的 frpc “主动出击”,与公网的 frps 建立连接,形成一条稳定的 “数据通道”。 内网设备无法被公网访问的根本原因,是路由器的 NAT(网络地址转换)机制会隐藏内网 IP。frp 通过 “frpc 主动连接 frps” 的方式,让路由器将 frpc 与 frps 的连接加入 “NAT 映射表”,后续 frps 向 frpc 发送的数据(公网请求),会被路由器正确转发到内网的 frpc,从而实现 “穿透” NAT 的效果。 本文通过一个具体的例子来展示如何使用内网穿透工具frp将内网的web服务推向公网。 frp下载地址 ...

九月 3, 2025 · 1 分钟 · 火云

使用pyHugeGraph查询HugeGraph图数据

在实际项目中,我们经常会遇到类似下面的查询图数据库的需求: 查询根节点,根节点可能有多个,需要分页 点击根节点,查询其子节点以及子节点关联的边和更下一层的子节点 本文使用 pyHugeGraph 实现上述查询 HugeGraph 图数据库的功能。 ...

九月 2, 2025 · 3 分钟 · 火云

本地大模型编程实战(33)用SSE实现大模型的流式输出

SSE(Server-Sent Events)是一种基于 HTTP 协议的服务器向客户端单向推送数据的技术,允许服务器主动向已建立连接的客户端持续发送事件流(如实时通知、更新数据等),无需客户端频繁轮询。 核心特点:基于 HTTP 长连接,单向通信(仅服务器→客户端),数据以 “事件” 格式传输(包含事件类型、数据体等结构化信息),天然支持断线重连。 典型场景:大语言模型(LLM)客户端、股票行情实时更新、新闻推送、系统通知等只需服务器主动下发数据的场景。 它与websocket的主要区别是: 若场景仅需 “服务器推数据给客户端”(单向),优先选 SSE(实现简单、基于 HTTP 无额外协议成本) 若需 “客户端与服务器实时双向通信”(如聊天、互动),必须选 WebSocket(全双工能力是核心优势) 下面我们使用大语言模型qwen3实现翻译功能。它可以自动识别源语言,并翻译为目标语种。 像千问这种大模型是基于多语言训练的,所以它支持中文、英文、法文、西班牙等多个语种的翻译。 这是实现的效果: ...

九月 1, 2025 · 2 分钟 · 火云

本地大模型编程实战(32)用websocket显示大模型的流式输出

在与 LLM(大语言模型) 对话时,如果每次都等 LLM 处理完毕再返回给客户端,会显得比较卡顿,不友好。如何能够像主流的AI平台那样:可以一点一点吐出字符呢? 本文将模仿后端流式输出文字,前端一块一块的显示文字。主要的实现路径是: LLM 采用 qwen3 ,使用 stream 方式输出 后端使用 langchain 框架 使用 fastapi 实现后端接口 前后端之间使用 websocket 长连接通信 前端使用一个简单的 html5 网页做演示 下面是最终实现的效果: ...

四月 27, 2025 · 2 分钟 · 火云

本地大模型编程实战(31)用Map-Reduce从大文本中提取摘要

在执行从文本中提取摘要的任务时,难免遇到大文本的情况:文本的长度超出了 LLM(大语言模型) 的token限制。 LangGraph 提供了 map-reduce 工作流,它先把大文本拆成小文档分别提取摘要,然后再提炼/压缩提取的摘要,直到最后提取的摘要的token长度满足既定要求。 本次演练使用 qwen2.5:7b 开源大模型。 ...

四月 26, 2025 · 3 分钟 · 火云