自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我兜里有糖

你来找我我给你糖吃

  • 博客(228)
  • 资源 (1)
  • 收藏
  • 关注

原创 AI智能体技术实现原理

从chatgpt问世依赖,AI已火了2年,现在仅仅国内的大模型厂商也有数十家,AI这个赛道发展颇为迅速,如果说有2个月不关注AI这个圈子,一大批的名词和应用就会让你感到陌生可能仅仅一个春节,deepseek发起的卷成本之战,让本地部署走进了自己的电脑主机最近半年来,大模型也没什么新的实质突破了,去年还在不断的通过编写prompt,让AI进行一些稳定的工作内容输出,现在又开始卷agent了 ~~这篇文章以Vscode的智能机器人为例,着重讲一些agent在技术上的一些看法文章中涉及一些。

2025-06-08 16:39:15 1009

原创 python 项目工程管理 uv

摘要:Astral公司开发的Rust语言Python包管理工具uv凭借并行处理技术大幅提升依赖解析和安装速度(比pip快10-100倍),支持多Python版本管理(类似nvm)。安装推荐使用curl命令,项目初始化自动生成虚拟环境和pyproject.toml(替代requirements.txt),通过uv add安装依赖、uv run执行脚本。其设计理念接近Node.js/npm工作流,但尚未成为Python社区官方标准。新特性包括脚本模式(单文件管理)和工具命令(如uvx pytest),需注意Py

2025-06-01 23:36:20 975

原创 json-rpc 调用协议

JSON-RPC 2.0是一种轻量级RPC协议,使用JSON作为数据格式,适用于跨语言/平台的远程调用。文章介绍了JSON-RPC的基本概念、请求响应格式、错误代码规范,并通过示例展示了数组传参、命名参数、通知请求等多种使用场景。JSON-RPC具有简单性、标准化、跨平台和无状态的特点,适用于微服务、移动应用后端、物联网等多个领域,特别是在大模型agent服务中应用广泛。各语言都有相应的实现框架,如Python的jsonrpclib、JavaScript的jayson等。

2025-06-01 22:08:44 550

原创 http SSE 协议使用

摘要:Server-Sent Events(SSE)是一种HTTP协议扩展,用于实现服务器到客户端的单向通信。文章介绍了SSE的特点(长链接、单工通信、基于HTTP)、适用场景(如大模型流式返回),对比了HTTP不擅长的领域(大数据量传输、长时处理)的三种解决方案(轮询、WebSocket、SSE)。详细说明了SSE的行业规范,包括响应头要求、消息格式(data字段必填)、编码规范等。最后通过Node.js示例展示了SSE的实际应用效果,演示了在Postman和浏览器中的不同响应表现。SSE特别适合需要服务

2025-05-30 15:58:34 544

原创 JSON Schema:json的说明书

JSON Schema作为JSON数据的定义规范,从API契约到数据校验发挥重要作用。文章概述了其三大核心场景:1)API接口契约定义,实现前后端数据校验一致;2)数据管道校验,确保ETL流程数据质量;3)低代码平台数据建模,支持动态表单生成。详细解析了类型定义、结构约束等核心规范,并介绍了Ajv、Quicktype等配套工具链。JSON Schema已从单纯的数据格式发展为现代系统的数据契约语言,在微服务、低代码等场景中成为跨系统协作的通用标准。(149字)

2025-05-27 15:09:07 690

原创 VScode cline 插件接入github MCP服务端

Cline 是一款开源的 VSCode 插件,旨在通过集成 AI 模型为开发者提供智能代码生成、编辑、终端命令执行、浏览器交互等强大功能

2025-05-25 16:08:05 352

原创 Claude 客户端MCP服务使用案例(新手教程)

本文介绍了如何配置Claude AI客户端实现文件系统操作功能。首先需要下载客户端并修改开发者配置文件,添加允许访问的目录路径(需Node环境)。配置后,Claude可读取指定目录内容,并执行文件分类、代码生成等操作。文中展示了AI自动整理下载文件夹和生成Python代码的实例,同时分析了MCP服务可能带来的隐私泄露、文件损坏等安全隐患,提醒用户需谨慎控制AI的文件访问权限。全文演示了AI与本地文件系统交互的实现方法及潜在风险。

2025-05-25 12:55:26 438

原创 一个工程中,缓存系统的设计

1. 一个多人项目中,缓存地方多了,一个人一个写法,是否通过一个统一工具生成统一写法?2. 一些复杂的项目,缓存的命中有的是用户ID,有的是多个字段联合ID?

2025-05-07 11:03:30 150

原创 CSS 浮动

一种CSS布局技术,通过float: left或float: right使元素脱离常规文档流并向左/右对齐,元素自动转为块级元素常用于简单的文本环绕场景,如图片与文字的自然排版。浮动元素会紧贴父容器或相邻浮动元素的边缘,但脱离文档流后可能导致父容器高度塌陷总结来说。

2025-04-30 17:40:49 880

原创 以一个案例描述冒泡事件

也就是说,无论事件在哪个元素上绑定,event.target 始终是用户实际操作的那个元素。事件冒泡(Event Bubbling)是指当某个元素上的事件被触发时,该事件会向父级元素传递,直到传递到 document 对象的过程。在此过程中,所有绑定在这些父级元素上的相同类型的事件处理程序都会依次被触发。此时,鼠标点击每行中,第二个编辑按钮,控制台有值输出,点击第一个编辑按钮,无值输出。值,不论点击哪个编辑按钮,都能获取到值的写法,还有一种方式。这里是一个表格内容展示,在表格的最后一列,有两个编辑按钮。

2025-04-21 14:22:42 261

原创 Promise 使用

Promise 只是一个对象,和同步异步无关,有三种状态用于解决异步回调,编码好看些它的then、catch 等方法,才异步执行then catch 类似于成功和失败状态的分别处理。

2025-03-11 14:41:19 309

原创 布隆过滤器

确定不存在(100%准确)可能存在(有较小误判概率)布隆过滤器是解决海量数据存在性检查问题的利器,合理使用时能显著提升系统性能。结合Redis的实现方案,更可以轻松应对分布式场景下的高并发挑战。使用时注意根据业务特点调整参数,做好容量规划,就能在有限资源下获得最佳效果!

2025-02-12 14:28:01 393

原创 Llm模型本地化部署 Ollama [Xinference]

ollama是一种轻量级LLM模型运行框架,我们可以把它类比为docker,作为一种环境(某大模型)的运行容器帮助我们快速实现本地化部署及使用ollama提供了社区功能,一些开源的模型可在hub中找到现已支持一些语言文本对话文本向量化图像、语音识别等。

2025-02-12 13:41:21 480

原创 多个文件共用main包的问题

方法引入的,例如标准库的包、或者某个github的包、其它文件夹的包。说明编译器在运行时,只会编译和运行你直接提供的文件。方法是本包内的程序,无需显示声明引用,所以运行。只需在编译时指定打包的文件即可,例如。方法里引用的方法是在上方通过显示。则不会报错,自动引入其它包。

2024-12-11 15:00:14 211

原创 golang 隐式继承

CClaims通过匿名字段Von继承了Von的所有方法,包括Valid方法。因此,CClaims 类型(以及它的指针)可以被赋值给。但在 Go 语言中,明确规定是没有继承这个概念,并且类的概念也是没有的,但是我们可以通过一些曲线的方法来实现,例如。字段,CClaims 结构体隐式地“继承”了 Von 的所有方法。接口,因为它们实际上实现了Valid方法。那么继承,也可以通过类型嵌套来实现。对于一个面向对象编程来说。,也就以为这,没有继承。类,我们在使用实例化。下面是一段完成的代码。由于 Von 是一个。

2024-12-02 18:23:30 361

原创 GEN 自动生成 GORM 模型结构体文件

unknown field PreparedSQL in struct literal of type gorm.PreparedStmtDB

2024-11-29 18:04:02 748

原创 golang中,context.WithValue的使用规范问题

我们首先来看一个报错should not use built-in type string as key for value; define your own type to avoid collisions (SA1029)go-staticcheck

2024-11-29 11:28:25 1032

原创 Windows如何使用make命令

【代码】Windows如何使用make命令。

2024-11-28 13:41:48 814

原创 Linux中的 strace 命令

通过跟踪系统调用的时间和频率,可以发现程序的性能瓶颈。例如,跟踪一个程序的系统调用并统计耗时。上面这段官方话术简介,是最中肯的理解,通俗的来说,stract 命令能够帮助开发者理解程序。也可以理解为,能够让你从理解一个进程执行的整个生命周期,底层发生了什么,更好的去。当你不想去程序中打断点调试问题,特别是框架模式下开发,特别适用。通过这些底层的输出信息,可以让你大致判断问题出在哪里。跟踪一个已经在运行的进程,可以使用。命令输出每个系统调用的统计信息。命令每个系统调用的执行时间。输出可能显示类似如下内容。

2024-11-19 15:11:46 506

原创 laravel框架fpm运行方式大流量优化方案

开启opcache后,每次发布版本建议reload fpm。否则会在cache刷新间隙出现500错误(部分文件cache未能更新)

2024-11-19 13:35:15 678

原创 DTM分布式事务Golang使用案例

kratos 框架使用案例[未完待续……go-zero 框架使用案例。

2024-11-12 15:46:08 427

原创 Docker 构建php web开发环境

注意:建议生产环境将软件开发环境与中间件区分在不同镜像中,例如php开发环境,不与nginx、mysql、redis在同一个镜像中构建,那怕是php中的CGI需要nginx代理,也不存放在同一个镜像中,方便维护。php的pecl命令,通过pecl搜索出的扩展大多是一些适配php高版本的扩展,这里我们通过pecl官网按照指定的扩展版本,例如。这里我们使用的是dockerhub上的 php.7.2镜像,做一些扩展安装、配置设置。php目录为 php、fpm的镜像配置,使用本地的。就会php目录下默认的。

2024-11-03 18:18:13 772

原创 对 Mysql int(11) 11 的理解

如果一个字段设置了无符号和填充零属性,那么无论这个字段存储什么数值,数值的长度都会与设置的显示宽度一致,如上述例子中的字段b,插入数值1显示为,左边补了10个零直至长度达到11位;设置字段的显示宽度并不限制字段存储值的范围,比如字段d设置为int(5),但是仍然可以存储1234567890这个10位数字;设置的字符宽度只对数值长度不满足宽度时有效,如d字段int(5),插入1时,长度不足5,因此在左边补充4个零直到5位,但是插入1234567890时超过了5位,这时的显示宽度就起不了作用了。

2024-10-11 15:49:23 579

原创 Redis 删除大key

注意: 是删除大key,不是删除大量的key。

2024-09-30 17:00:40 604 1

原创 常见的正则表达式案例

校验数字的表达式校验字符的表达式特殊需求表达式。

2024-09-27 09:51:07 296

原创 python PIL(Pillow) 库的9种图片模式

为32位彩色图像,它的每个像素用32个bit表示,其中24bit表示红色、绿色和蓝色三个通道,另外8bit表示alpha通道,即透明通道。为32位整型灰色图像,它的每个像素用32个bit表示,0表示黑,255表示白,(0,255)之间的数字表示不同的灰度。为32位浮点灰色图像,它的每个像素用32个bit表示,0表示黑,255表示白,(0,255)之间的数字表示不同的灰度。就是印刷四分色模式,它是彩色印刷时采用的一种套色模式,利用色料的三原色混色原理,加上黑色油墨,共计四种颜色混合叠加,形成所谓。

2024-09-27 09:50:24 387

原创 Linux yum源 安装php

【代码】Linux yum源 安装php。

2024-09-26 10:45:05 232

原创 pprof的使用

先来一段性能分析案例命令行运行这是段简单的代码示例,通过runtime分析出程序运行过程中内存的变化情况,分别对应着内存的分配、空闲、释放如果能web页面展示,或者生成一个文件、测试图表、命令行交互分析更为方便下面介绍pprof使用方式pprof是go语言内置 的分析性能,运维分析数据的工具。

2024-09-26 10:44:35 930

原创 linux下/etc/init.d的简单介绍

例:执行命令“service resin start”,可启动/etc/init.d/resin脚本 [与。

2024-09-26 10:44:05 302

原创 vagrant目录映射加速访问

保存后,使用命令 vagrant reload 重启虚拟机后才会生效,期间会修改MAC OX的 /etc/exports 文件。会提示输入mac账号的密码。修改2处: 私有的ip 和 项目所在的目录中新增 ,type:“nfs”首先要把虚拟机的网络设置成 :private_network 模式。登录虚拟机,查看新的ip地址。进入虚拟机所在的目录。

2024-09-26 10:43:21 330

原创 java List使用

List 是unit包中一个接口,表示一个有序的集合。具体实现包括 ArrayList、LinkedList、Vector 等。为一个泛型接口,立里面实现了很多基本操作,例如增删改查等。3.获取 List 集合中的元素。

2024-09-26 10:43:06 334

原创 zookeeper数据模型

应用1的子树实现了一个简单的组成员协议:每个客户端进程p(i)创建一个znode,p_i在/app1下,只要/app1/p_i存在就代表进程p(i)在正常运行。不同于文件系统,每个节点都可以保存数据。每个节点都有一个版本(version)。data tree中有两个子树,一个用于应用1(/app1)和另一个用于应用2(/app2)。ZooKeeper对外提供一个用来访问。ZooKeeper的层次模型称作。

2024-09-26 10:41:39 225

原创 zookeeper 的设计目标

所有的事务请求必须由唯一的Leader服务来处理,Leader服务将事务请求转换为事务Proposal,并将该Proposal分发给集群中所有的Follower服务。zookeeper使用单一的主进程来接收、处理客户端的所有事务请求,采用原子广播协议将数据状态的变更以事务Proposal的形式广播到所有的副本进程上去。数据全量存储在内存中保持高性能,通过集群来实现高可用,由于Zookeeper的所有更新和删除都是基于事务的,所以其在读多写少的应用场景中有着很高的性能表现。

2024-09-26 10:40:58 523

原创 Linux查看Yum的安装目录及包目录

以MySQL的安装为例,我们使用RPM方式安装了与MySQL相关的好多包,其实rpm有两个参数-l和-c可以帮助我们查看具体的安装路径。如果使用RPM安装了一些包,一般来说,RPM默认安装路径如下。来查看具体的安装路径。搜索具体的包文件列表。搜索具体的包配置文件。rpm -ql 包名。

2024-09-26 10:39:37 1944

原创 mysql的四种日志

二进制日志:以二进制文件的形式记录了数据库中的操作,但不记录查询语句(可以还原数据库)错误日志:记录Mysql服务器的启动、关闭和运行错误等信息。Query_time: 语句执行时间(以秒为单位)Rows_examined:优化程序检查的行数。Lock_time:在几秒钟内获得锁定的时间。慢查询日志:记录执行时间超过指定时间的操作。通用日志:记录用户登录和记录查询的信息。Rows_sent:发送到客户端的行数。my.ini文件中添加。

2024-09-26 10:39:02 411

原创 php 支付宝SDK报错 Cannot redeclare Decrypt()

修改alipaySDK中定义的函数名称、修改引用的函数名称。函数与Laravel中定义的。alipaySDK中定义的。

2024-09-26 10:38:09 171

原创 redis有序集合多字段排序

只能通过前面的分数这一个维度来实现,如果现在引入了另一个字段,可以在分数值(利用阿拉伯数字)上做手脚。这三个字符串,按照时间先后特性转化为unix时间戳,拼接到分数后面。当然,并一定是时间才可以,只要能够将这个字段抽象成。首先,redis有序集合本身是不支持。即 第一条件排序 然后第二条件排序。

2024-09-26 10:37:25 280

原创 抢红包算法

做N-1次随机运算,随机的范围为 (1, M),当切割点重复时重新随机。将红包总金额比作一条线段,随机出N-1个切割点,事先将红包分成N份。红包总金额为M,人数为N。

2024-09-26 10:33:37 149

原创 Kafka 数据顺序

由于Kafka的一个topic可以分为多个partition,producer发送消息的时候,是分散在不同的partition的。当producer按顺序发消息给broker,但进入Kafka之后,这些消息就不一定进到哪个partition,会导致顺序是乱的。

2024-09-26 10:28:12 173

原创 linux 设置终端登录超时时间

临时更改当前会话的超时时间,上面是修改的服务端配置项,永久性的改变,下面是客户端链接时加个参数即可。远程登录linux服务器,如何设置终端失效时间(即过了多久不操作,终端即将失效)。如上设置后,登录这台服务器的终端在600秒内不做操作,则该终端就将失效!如果没有生效,请执行下面命令重新启动ssh服务。

2024-09-26 10:22:53 1707

nodejs sse服务端实现

nodejs sse服务端实现

2025-05-30

DTM分布式事务 dtm服务端、go-zero业务代码

DTM分布式事务 dtm服务端、go-zero业务代码

2024-11-12

DTM分布式事务Golang使用案例-go-zero业务代码

DTM分布式事务Golang使用案例-go-zero业务代码

2024-11-12

DTM分布式事务Golang使用案例-DTM服务端代码

DTM分布式事务Golang使用案例-DTM服务端代码

2024-11-12

docker构建php开发环境

docker构建php开发环境

2024-11-03

Closure闭包函数示例

补充说明:闭包可以使用USE关键连接外部变量。 总结:PHP闭包的特性其实用CLASS就可以实现类似甚至强大得多的功能,更不能和js的闭包相提并论了吧,只能期待PHP以后对闭包支持的改进。不过匿名函数还是挺有用的,比如在使用preg_replace_callback等之类的函数可以不用在外部声明回调函数了。合理使用闭包能使代码更加简洁和精炼。

2019-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除