- 博客(122)
- 收藏
- 关注
原创 Ubuntu上开启指定端口的防火墙
摘要:本文介绍了在Ubuntu系统上开启3002端口的两种主要方法。推荐使用默认的UFW工具,只需执行sudo ufw allow 3002命令即可开放端口,也可通过sudo ufw allow 3000:3005/tcp开放端口范围。另一种方法是直接使用iptables命令配置。文章还提供了检查端口状态的命令(netstat/ss)和云服务配置提醒,并给出了完整的UFW配置示例流程,包括状态检查、端口开放和验证步骤。UFW因其简便性成为首选方案。
2025-11-17 09:18:31
413
原创 使用nodejs创建,导入mcp
本文对比了多种MCP协议实现方式的优缺点,包括Stdio、SSE、StreamableHTTP等传输协议。Stdio适合本地调试和CLI工具,SSE适用于Web应用,StreamableHTTP则提供更好的兼容性。文章详细介绍了如何使用Express框架实现StreamableHTTP MCP服务器,包括工具注册、资源管理和会话处理。同时提供了多种客户端调用方式,如axios、SDK集成等,并介绍了OAuth授权流程的实现方法。最后还讲解了如何集成到Claude、CherryStudio等工具中,以及使用I
2025-09-28 11:59:32
625
原创 docker compose up -d 启动时报错 app IPv4 forwarding is disabled. Networking will not work.
forwarding is disabled. Networking will not work.
2025-09-26 15:45:10
954
原创 在nodejs中使用grpc
proto文件是Protocol Buffers(Protobuf)的核心配置文件,用于定义数据结构和接口。它是一种语言中立、平台中立的序列化格式,广泛应用于网络通信和数据存储。proto文件通过定义消息体(message)、枚举(enum)、嵌套消息等数据结构,使用protoc编译器生成目标语言代码(如Java、Python、C++等)。proto3版本简化了语法,去除了proto2中的required字段,支持默认值、Any类型、Oneof选择、Map类型等特性。通过导入其他proto文件,可以实现模块
2025-05-20 12:37:06
747
原创 electron打包是没有正确生成electron.exe,x ENOENT: no such file or directory, rename:
electron打包是没有正确生成electron.exe,x ENOENT: no such file or directory, rename: 的三种情况。
2025-04-20 21:17:15
810
原创 面试题总结
1、实现Promise.all 2、版本号比较 3、打印N 4、js中定义变量不写,let, var, const 会自动提升为全局变量
2025-03-25 12:12:25
118
原创 现代Web开发核心API全景:从DOM操作到设备集成
观察者模式 API(如 MutationObserver、IntersectionObserver、ResizeObserver 和 PerformanceObserver)可实时监控 DOM 结构变化、元素可见性、尺寸及性能指标,支撑懒加载、响应式布局和性能优化。Web Workers 和 requestAnimationFrame 分别通过多线程计算和帧同步机制优化性能,避免主线程阻塞。网络通信方面,WebSocket 支持实时双向数据传输,而 Fetch API 提供了基于 Promise 的现代化请
2025-03-23 11:25:19
1059
原创 electron桌面应用多种快速创建方法
结合vite和vite前端页面模版搭建electron。结合next框架搭建electron。结合nuxt框架搭建electron。
2025-03-19 10:09:35
364
原创 基于nodejs中@langchain/langgraph框架实现workflow
【代码】基于nodejs中@lang/graph框架实现workflow。
2025-03-15 14:07:19
531
原创 nodejs将pdf转换成图片并提取图片内容
实现RAG将pdf文档内容添加到向量数据库进行向量检索时,表格等数据无法识别,可以先用多模态模型对数据进行提取,然后再添加到向量数据中。这样做查询时用文本向量模型就够了。对pdf中所有页面进行截图,手动指定了一张图片,对这个图片中数据进行了提取。
2025-02-27 15:05:17
710
原创 在nodejs中使用ElasticSearch(三)通过ES语义检索,实现RAG
RAG(Retrieval-Augmented Generation)是一种结合了信息检索和生成模型的技术,旨在提高生成模型的知识获取和生成能力。它通过在生成的过程中引入外部知识库或文档(如数据库、搜索引擎或文档存储),帮助生成更为准确和丰富的答案。它的核心思想是,生成模型不仅依赖于模型内部的知识,还可以在生成过程中动态地检索外部信息,从而增强生成内容的准确性和信息丰富度。如果存在,则先删除该索引,确保创建的是新的索引。如果检索结果中没有足够的信息来回答问题,生成的回答将是“我无法回答您的问题”。
2025-02-26 18:04:29
784
原创 在nodejs中使用ElasticSearch(二)核心概念,应用
核心概念,索引(index),映射(mapping),文档(document),在nodejs中使用
2025-02-20 15:28:35
602
原创 在nodejs中使用ElasticSearch(一)安装,使用
使用docker安装ElasticSearch,安转Kibana,Kibana设置中文,安装分词器analysis-icu,安装分词器analysis-ik,analysis-icu 和 analysis-ik 分词器的主要区别,在nodejs中使用ElasticSearch。
2025-02-19 10:13:24
956
原创 在Nodejs中使用kafka(三)offset偏移量控制策略,数据保存策略
offset偏移量控制策略, 自动提交(Auto Commit),手动提交(Manual Commit),Offset 重置(Seek)。数据保存策略,基于时间的保留策略,基于大小的保留策略,基于段文件的保留策略,清理策略。
2025-02-17 16:42:37
1207
原创 在Nodejs中使用kafka(二)partition消息分区策略
partition分区是 Kafka 高吞吐量、高可用性和分布式处理能力的核心设计之一。分区策略:手动指定分区、基于 Key 的哈希分配、轮询策略、自定义分区策略、粘性分区策略。分区策略对比。
2025-02-17 10:56:12
611
原创 在Nodejs中使用kafka(一)安装使用
kafka安装、使用docker安装kafka、kafka核心功能、kafka核心组件、nodejs使用kafka。
2025-02-16 12:08:56
961
原创 在nodejs中使用RabbitMQ(六)sharding消息分片
将消息分布到多个队列中,这在消息量很大或处理速度要求高的情况下非常有用。分片功能通过将消息拆分到多个队列中来平衡负载,从而提升消息处理的吞吐量和可靠性。它能够在多个队列之间分配负载,避免单个队列过载。(注:不能单独消费分片消息。消息分片不利于消息顺序区分)通过rabbitmq management添加策略,用于分片消息匹配转发。RabbitMQ 的分片插件。
2025-02-14 21:00:46
805
原创 在nodejs中使用RabbitMQ(五)死信队列,延迟队列
死信队列用于存储那些不能被正常消费或处理的消息,以便后续审查或重新处理。设置一个专门的交换机(Dead Letter Exchange,DLX),并将死信消息转发到该交换机。:如果队列已经达到最大长度,且还有新消息进入,RabbitMQ 会丢弃老的消息并将其送到死信队列。:如果消息的 TTL(存活时间)到期,消息会被认为是死信,自动转发到死信队列。:如果消息没有匹配到任何队列的路由规则,它会被送往死信队列。可以设置死信消息的路由键,以便将消息路由到适当的死信队列。),消息会被送往死信队列。
2025-02-14 12:37:08
1358
原创 在nodejs中使用RabbitMQ(四)队列类型Classic、Quorum、Stream
经典队列(Classic Queues)、仲裁队列(Quorum Queues)和流队列(Stream Queues)的特性对比。
2025-02-13 14:30:07
1440
原创 在nodejs中使用RabbitMQ(三)Routing、Topics、Headers
producer.ts 生产者主要发送消息,consumer.ts负责接收消息,同时也都可以创建exchange交换机,创建队列,为队列绑定exchange,为避免重复简化代码,提高可维护性,队列相关操作移动到消费者端。队列,exchange交换机推荐在启动程序前手动创建好。使用direct exchange实现下图。
2025-02-11 16:08:44
468
原创 在nodejs中使用RabbitMQ(二)发布订阅
使用direct类型交换机,只有路由键匹配的队列会接收到消息(精确匹配),适合需要根据特定条件(如路由键)将消息路由到特定队列的场景,如任务分配、错误处理等。使用Fanout 交换机实现广播,它不考虑任何路由键(routing key),而是将接收到的消息广播到所有绑定到该交换机的队列中。
2025-02-11 15:36:43
607
原创 在nodejs中使用RabbitMQ(一)安装,使用
RabbitMQ 是一个开源的消息代理软件(也称为消息队列),它实现了高级消息队列协议(AMQP)。RabbitMQ 提供了可靠的消息传递机制,适用于构建分布式系统、微服务架构以及需要解耦组件的应用程序。它支持多种消息传递模式,并且具有高度的可扩展性和灵活性。官方还提供了多语言支持:Python,Java,Ruby,PHP,C#,JavaScript,Go。RabbitMQ 的基本概念1.生产者(Producer):左侧绿色方框代表消息的生产者,生产者将消息发送到 RabbitMQ 服务器。
2025-02-11 14:39:14
894
原创 RocketMQ安装
RocketMQ 是一个分布式消息中间件,最初由开发,并于 2012 年开源。它设计上追求高可用、高吞吐、低延迟等特点,适用于大规模分布式系统中的消息传递和异步通信。RocketMQ 在和系统中广泛应用,尤其在需要保证高吞吐量、低延迟和高可用性的场景中表现尤为出色。
2025-02-08 17:39:31
395
原创 TypeScript 后端开发中的热重载编译处理
在一些除了nest框架外的一些其他nodejs框架中没有提供对ts编译和热重载,如果使用typescript我们需要自己进行配置。
2025-01-01 17:31:01
497
原创 Rust HashMap使用
HashMap是一个功能强大的数据结构,它结合了哈希表的高效性和 Rust 编程语言的内存安全特性。通过提供常数时间复杂度的查找、插入和删除操作,以及丰富的 API,它在许多实际应用中都非常有用。
2024-12-09 23:07:43
606
原创 Rust中常用的命令工具
cargo generate 通过模版创建项目cargo watch 等于nodemoncargo binutils 更快的连接cargo deny 检查第三方依赖cargo audit 检查第三方依赖cargo tarpaulin 检查测试覆盖率typos-cli 拼写检查工具,RustRover内置了不需要git-cliff 生成git change log的工具cargo nextest rust测试增强工具pre-commit 向github提交代码时,会进行代码检查
2024-10-27 23:01:59
1067
原创 Rust中,Box,Rc,RefCell使用依据,案例
案例三、使用Box,Rc,RefCell实现链表循环添加,遍历。案例二、分别使用Rc、Box实现链表。案例一、Box实现链表,链表循环。
2024-10-10 22:14:51
760
原创 trpc快速上手
tRPC (Type-safe Remote Procedure Call) 是一个用于构建类型安全的 API 的框架,它能够在前端和后端之间共享类型,确保类型安全性。这对于使用 TypeScript 的项目特别有用,因为它消除了前后端类型不一致的问题,提高了开发效率和代码质量。trpc也可以集成到 Express, Fastify,Next中。
2024-06-13 21:30:56
724
原创 nodejs设置强制缓存,协商缓存
基于资源的最后修改时间进行缓存协商。基于资源的内容哈希进行缓存协商。强制缓存指的是服务器在响应头中设置缓存控制策略,告知浏览器在一定时间内不需要向服务器请求,直接使用本地缓存。
2024-05-25 11:21:44
721
原创 koa使用ws,scoket.io建立websocket连接,断开重连
【代码】koa使用ws,scoker.io建立websocket连接,断开重连。
2024-05-24 13:43:26
808
windowx64 oracle12.2.0.1.0 命令行工具集
2024-03-05
instantclient-sqlplus-windows.x64-21.13.0.0.0dbru.zip
2024-03-05
instantclient-tools-windows.x64-12.2.0.1.0.zip
2024-03-05
nodejs中如何安装并运行@tensorflow\tfjs-node
2024-10-06
原生微信小程序如何安装ali-oss,获取阿里云存储图片。
2024-09-27
Next.js中有必要使用react-router-dom吗
2024-08-22
鸿蒙应用无法建立websocket连接
2024-05-24
Observed,ObjectLink 父组件数据改变,子组件数据没有变化
2024-05-22
@tweenjs/tween.js 定义往复运动动画偶尔会出现不正确的闪动
2024-05-18
vscode 提取扩展时出错。XHR failed,电脑和vscode都未配置代理,代理服务器等,已添加host,清除过dns缓存,重启vscode均无效,重装过vscode。页面可访问插件网址。
2022-11-03
Angular ionic中form表单报错
2022-09-28
vscode运行C++报错
2022-09-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1