- 博客(105)
- 收藏
- 关注

原创 详讲api网关之kong的基本概念及安装和使用(二)
本文演示的相关功能有,基于consul的负载均衡,jwt认证,限流,黑名单功能,其他功能比如反爬策略,协议转换感兴趣的小伙伴们可以自己探索一下。
2024-01-30 10:52:41
1631

原创 详讲api网关之kong的基本概念及安装和使用(一)
前面我们聊过sentinel,用来限流熔断和降级,如果你只有一个服务,用sentinel自然没有问题,但是如果是有多个服务,特别是微服务的兴起,那么每个服务都使用sentinel就给系统维护带来麻烦。那么网关是个啥东西呢,简单来说,网关就是一个服务器,也是所有服务的唯一入口。api网关不仅可以实现系统层面的限流熔断等技术,还可以提供服务发现,负载均衡,协议转换,流量管理,黑白名单,反爬策略,身份验证,灰度发布,监控,缓存等等功能。
2024-01-25 18:09:56
2889
1

原创 聊一聊服务治理三板斧:限流、熔断、降级和go-sentinel的实现
我们知道,对于一个项目之初,我们不可能上来就按几千的并发去配置,为什么?两个方面,第一个是成本高。第二个是维护难度大。即便是天猫淘宝这种,也是采用的动态扩容的方式来应对双十一。那么一个项目如何应对突然的高并发,我们有哪些常用的措施和处理呢?我们接下来就来看看 限流熔断和降级。
2024-01-19 17:47:49
1862

原创 MySQL的内部XA的二阶段提交
靠redo-log和undo-log。比如我们执行了一个insert操作,然后主节点a服务器crash redo-log之后服务宕机了,还没来得及写入bin-log,服务器恢复之后,由于其他机器没有insert的bin-log导致a服务器和其他服务器数据不一致。如果先crash bin-log 我们执行了一个insert操作,主节点a服务器crash bin-log后服务宕机,服务恢复之后,其他节点根据bin-log执行了insert,但是服务a并没有redo-log,不会恢复数据,同样导致数据不一致。
2024-01-16 10:34:26
1020

原创 扒开MySQL的源码,探索MVCC实现方式
通过阅读源码和实操,我们了解了MySQL是怎么在无锁的情况下怎么保证了多版本控制,就是在数据发生变化的时候,将变化前的内容以undo-log的形式保存了下来,然后通过DB_ROLL_PTR将多个版本链起来,来提高表的并发读写。但是带来的问题,最明显的就是对内存的需求更高,cpu和io开销更大了,同理垃圾回收开销也随着变大。而且对于大事务来说,数据版本过多可能导致性能降低等问题。
2024-01-15 11:22:36
2624

原创 HTTP、CDN、DNS的这些知识,我也不知道你知道不知道,反正我被问到过
HTTP,全称Hyper Text Transfer Protocol,即超文本传输协议,是一个简单的请求-响应协议,它通常运行在TCP之上。HTTP目前一共经历了HTTP 0.9,HTTP 1.0,HTTP 1.1,HTTP 2.0,那么我们分别来看看每个版本的HTTP的功能和发生的变化HTTP 0.9HTTP 0.9是第一个版本的HTTP协议,已过时。它只允许客户端发送GET这一种请求,而想我们常用的POST PUT DELETE 是不.
2022-01-10 19:23:53
1912

原创 使用ffmpeg对视频指定时间点加入指定音频和gif动图 实现水印旋转
注:本文为了方便演示,都是在源文件目录下执行的命令,如果不同目录请使用具体路径 视频中添加字幕 首先看一下我的目录 001.mp4dianzan.movr001.flvtx.wav皮肤粗糙_棒棒-1.assimage.png 给原视频文件001.mp4加上字幕文件,生成r001.flv文件,视频的格式你想要哪种都可以,(可以先使...
2021-03-17 19:51:07
2609
15

原创 最全的百度网盘搜索引擎
1.易查搜索(https://so.acurd.com/)推荐指数 *****+资源聚合做的比较好的一个网站,也是最常用的一个网站,据up主说有脚本会定时检测每个搜索引擎,不通的或者服务器挂的搜索引擎会自动下架,保证了高可用,这里感谢一下作者的良苦用心,加油!!2.虫部落(http://magnet.chongbuluo.com/)推荐指数 *****和top1有一部分重合,可以解决你的大部分搜索需求,但也正因为太多了,所以有点良莠不齐。3.云盘精灵(https://www.yunp
2020-07-24 14:28:41
7749

原创 使用docker搭建nginx集群,实现负载均衡
最近都是在忙一些琐碎的小事,有几个选题,一直在纠结写哪个,最终决定先从简单的来吧。简单的往往比较琐碎,熟悉的小伙伴可以1.5倍速浏览哈 环境基于centos7,docker 安装教程参考https://www.runoob.com/docker/centos-docker-install.html(选择手动安装靠谱一点,毕竟国内网络不稳定),这里不做赘述了。相信聪明如一休的你一定可以解决。最后,别忘了替换镜像源 start----------------------------------..
2020-07-02 20:43:50
2364
2
原创 cozeloop开源了?一篇文章带你玩转扣子罗盘
扣子罗盘是一个强大的Prompt开发与调试工具,主要包括三大功能模块:Prompt工程:提供Prompt开发和Playground两个子模块,支持全流程Prompt开发与即时测试评测系统:支持创建评测集、评估器和实验,帮助开发者客观评估Prompt质量观测功能:通过SDK实现数据上报,可查看trace列表和详细数据,支持Go、Python和Node.js多种语言
2025-07-30 17:40:50
589
原创 开源大模型框架Eino Graph 工作机制解读
摘要: Eino是基于Golang的大模型应用开发框架,借鉴LangChain等设计理念,提供简洁、可扩展的LLM开发方案。其核心特性是Graph编排,通过代码组合原子能力(如模型调用、嵌入检索、工具集成等)构建复杂AI流程。支持多种节点类型:LambdaNode(自定义逻辑)、ChatModelNode(LLM交互)、EmbeddingNode(文本向量化)、RetrieverNode(向量检索)、ToolsNode(外部API调用)等,并允许子图嵌套实现模块化。通过节点连接形成工作流,适用于RAG、对话
2025-07-19 14:47:55
902
原创 超实用的Cursor使用技巧之案列分析-教你基于Cursor开发一个chrome插件
我们做任何一个项目,心里至少应该有一个雏形,然后通过cursor或者kimi再丰富自己的项目。最终形成一份项目描述,本次我就以生成一个chrome插件为例子,为大家演示。里面的文档都是以markdown格式编写的。
2025-07-04 17:35:25
326
原创 从小白入门,基于Cursor开发一个前端小程序之Cursor 编程实践与案例分析
Cursor是一款集成于IDE的AI编程助手,其核心优势在于通过自然语言交互实现代码智能生成、重构和优化。文章通过实际案例展示了Cursor的五大应用场景:1)代码检索与业务理解,快速定位表结构和数据流;2)智能代码生成,根据业务描述自动实现复杂功能;3)业务流程优化,合并冗余方法提升可维护性;4)问题定位修复,快速解决报错和性能问题;5)文档自动生成,降低技术文档编写成本。与其他编程助手相比,Cursor对项目结构理解更深,支持多文件协作开发。最佳实践建议包括:使用特定关键词明确需求(如"分析&
2025-07-03 10:23:48
669
原创 编写composer包和发布全攻略
我们知道,composer是laravel的包管理工具,所以我们就编辑一下laravel目录下的composer.json文件,在autoload项下增加一个属性,对应的是命名空间和包目录。我之所以想先带大家快速了解一个composer包的发布过程,是因为我打算把二次封装的组件作为composer包发布。里面我只用了发布配置文件的功能,对应的包里面的配置文件是src/config目录的exception-helper.php文件,我们先来创建一下文件。那么我们怎么把我们的包发布出去呢?
2024-12-17 10:02:31
1091
原创 基于docker搭建pulsar和使用攻略
Pulsar是一个由yahoo公司于2016年开源的消息中间件,2018年成为Apache的顶级项目我们先来看一下架构,从架构来看,和其他的消息中间件差不多,都是有消费者,生产者和broker,唯一一点不同的是pulsar的数据存储是存储在BookKeeper中的。
2024-12-09 18:09:41
1606
原创 laravel官方升级引起的报错问题解决
原来是私有仓库没有有voku/portable-ascii的2.0.2以上版本,我感觉很奇怪,为什么去私有仓库下载这个组件呐,于是我继续探究原因,发现是当项目中配置了私有仓库的时候,如果没有配置优先级,那么组件优先从私有仓库下载。所以,我设置了一下仓库的优先级。发现其他项目是没有问题的,但是这个项目我指定下载suppot:v11.34.1的时候总是报错。1.我尝试升级Support到最新版本,但是有很多依赖的组件不支持。看样子是和已有的某个包不兼容,于是我继续查找原因,看到一行。2.我尝试降级http。
2024-11-27 19:28:00
682
原创 基于syslog实现项目的日志收集
syslog 是 Linux 和其他类 Unix 操作系统中用于存储系统日志的标准协议。它不仅定义了如何记录事件,还规定了这些事件应该如何在网络上传输。在 Linux 系统中,syslog 通常由一个守护进程(daemon)来管理,这个守护进程负责接收来自不同应用程序和服务的日志信息,并将它们写入到适当的文件或通过网络发送给其他服务器。
2024-11-25 16:42:24
2087
原创 纯干货!基于monolog增强laravel框架的日志系统
从数据层面来看,应用程序是一个将数据状态转换为另一种数据状态的过程。而日志,就是记录这个数据每一次的流转过程。日志是数据流转过程可视化的一种方式。在编程中,日志应该被放在优先级列表的首位。日志信息可以包括程序的状态、错误消息、警告、调试信息等等。日志通常被记录到文件中,但也可以发送到其他目的地,比如控制台或远程服务器。我们一般要记录的日志,分为三大块,业务日志,异常日志和数据库日志。
2024-10-16 18:58:23
1000
原创 laravel的队列的使用
laravel的特性:laravel队列可以基于不同的后台存储服务提供统一的api,后台存储服务包括 Redis MySQL等。比如调用第三方api,无法保证api的可靠性,我们就需要用队列来重试,比如发送邮件,我们可以从主业务中解耦出来。上面我们配置的队列的相关信息,接下来我们使用command来生产几条消息试一下。因为我们用的Redis存储,是否存储成功,我们看Redis,我们发现有两个队列,一个是我们定义的art。刚才我创建的队列实例接收的是article类型的数据,我们来发送一下。
2024-08-30 18:22:40
823
原创 从并发20到并发120之laravel性能优化
单台服务并发20,平均响应时间1124ms,通过htop观察,发现cpu占用率达到100%(包括sleep的进程),内存几乎没怎么用。
2024-08-20 10:38:49
1180
原创 ssl证书90天过期?保姆级教程——使用acme.sh实现证书的自动续期
最近https到期了,想着手动更新一下https证书,结果发现证书现在的有效期只有90天,于是想找到一个自动更新证书的工具,发现了acme.sh,但是网上的文章质量参差不齐,可能需要多篇文章结合来操作,一步步试错。我这里结合了腾讯云的相关文档和一些其他的博文,保证一次性操作成功。
2024-06-18 11:51:48
4269
3
原创 ChatGPT、通义千问这些市面上的聊天式人工智能用的什么技术传输数据?一起来认识一下SSE
通义千问2.5发布后,我发现准确率有了很大的提升,但是处理任务的时长并没有明显的提升,不知道用过通义千问的小伙伴们发现没有,通义千问响应的内容是持续性输出的,而不是一次全部返回。
2024-05-22 16:12:38
705
原创 typescript的入门到吐槽:看了typescript,发现前端真的卷,
一直都听说前端卷,看了ts之后发现是真的卷,比如数据类型就多出了any unknown never void 不知道实际过程中用处大不大,比如类型之间的|和&,当场就把我看懵逼了,已经有了interface,有了class,还有extends,你来给我讲讲你类型之间的|和&真的是必须的吗?今天刚看完typescript,听说你们又开始next.js了,前端大佬们,你们真的没事干了吗?😭😭。
2024-05-08 18:33:14
828
原创 网站升级提示:我用react+go重构了网站并记录了部署项目简要步骤
自开自测,可能有想不到的问题,如果在使用过程中发现了什么问题,可以及时反馈给我哦!
2024-04-30 17:23:20
1082
3
原创 后端程序员入门react笔记(九)- react 插件使用
props 用于父子组件传递数据消息订阅-发布 可以用于兄弟组件,祖孙组件redux 用于兄弟组件,祖孙组件context 用于祖孙组件。
2024-03-22 11:41:58
868
2
原创 后端程序员入门react笔记(八)-redux的使用和项目搭建
我们先来看一下redux的工作流程,可以有一个大概的印象,我们看到,redux的核心有三个,一个是action creator, 一个是store,一个是reducers,其中redux的核心是什么?这样看起来明显是不科学的,那么有没有一种方法,让我们写一次,就可以不用写了呢,有,首先第一点我想到的就是用一个特殊标签包裹一下这些组件,只要在标签内的,都默认传递了store,react真的这么做了,这饿就是provider ,我们来看一下怎么用。我们知道,每个容器组件我们都需要传递一个store,像这样。
2024-03-14 18:48:24
1129
1
原创 后端程序员入门react笔记(七)- React路由
现代的前端页面大多是SPA(单页面应用程序), 也就是只有一个HTML页面的程序,这样用户体验好,服务器压力小,所以更受欢迎。但是一个页面可能有很多功能,比如一个页面,可能会有导航栏,有内容页。头部区域和尾部区域,那么如果是互联网刚起来的那几年,每个导航栏可能就是一个a标签,点击跳转新页面。但是这种跳转不管是对于服务器还是对于用户来说,可能都是不友好的。那么怎么能实现这样一种功能呢,就是我们点击导航栏的时候,只有内容刷新?你用点击事件固然可以这么做。
2024-03-11 11:20:06
1325
原创 后端程序员入门react笔记(六)- 讲透Promise与Fetch
一层层的嵌套,这就是回调地狱。这即不好看,也不好写,逻辑更是混乱。那么怎么办呢?至少作为后端,我们取使用orm取数据的时候都会用到一种链式操作,比如`Model(user).Where("email = ?",query.Email).Where("password = ?",utils.Md5Encode(query.PassWord)).First(user)`。我们永远可以在之前的操作结果上加条件。那么js有没有这种写法呢?有的,这个东西就叫做promise
2024-02-28 15:32:50
1214
原创 后端程序员入门react笔记(五)ajax请求
axios提供了请求拦截器和响应拦截器,帮助我们在请求前对config做一些配置,判断是否重复提交,或者对config做一些检查以及配置纠正等,响应拦截器帮助我们根据不同的返回内容做不同的数据处理,相关案例如下。我们知道,我们前端的服务器是3000端口,但是我们后端的服务器不一定是3000,也可能是80端口,现在我启动一个go编写的后台服务,调用一下接口。axios提供了两种方式来发送请求, 一种是通过axios(config)来发送请求,另一种就是上面列子中的axios.get,
2024-02-23 18:10:19
1186
原创 后端程序员入门react笔记(四)-综合运用,写一个小demo
有时候我们会遇到这样的问题,有两个css对一个class声明了样式,这样的话后引入的css会覆盖前面的css样式,导致样式冲突,那么我们怎么解决这种问题呢,我们可以使用样式的模块化,我们起名一个index.module.css和一个content.module.css。
2024-02-22 18:39:34
1457
原创 后端程序员入门react笔记——react的diff算法(三)
我们知道,react里面操作的都是虚拟dom,最后经过render渲染为真正的dom,那么为什么要提出虚拟dom这个概念呢?其实就是将逻辑和视图区分开,react的虚拟dom,就相当于mvc的c,将数据逻辑和真正的dom区分开,从而减少了对dom的操作,不仅避免了资源浪费,而且页面的构建也得到了很大的提升。
2024-02-21 17:02:33
1496
1
原创 优雅地用eruda在移动端上调试网页
Eruda 是一个专为手机网页前端设计的调试面板,类似 DevTools 的迷你版,其主要功能包括:捕获 console 日志、检查元素状态、捕获XHR请求、显示本地存储和 Cookie 信息等等。其有以下功能:Console面板:捕获Console日志,支持log、error、info、warn、dir、time/timeEnd、clear、count、assert、table;支持占位符,包括%c自定义样式输出;支持按日志类型及正则表达式过滤;支持快捷命令加载underscore、jQuery库;
2024-02-18 17:17:49
899
原创 后端程序员入门react笔记——react的生命周期(二)
这个函数我们太常见了,在初始化类的state的时候,或者初始化类的props的时候都会用到,就是一个类的构造函数。对后端人员来说很熟悉。
2024-02-04 18:34:14
971
原创 后端程序员入门react笔记(一)
我们在上面代码可以看到,在js里面我们竟然可以直接写html,而且还不报错,其实这个有趣的标签语法既不是字符串也不是 HTML,而是JSX,它是一个 JavaScript 的语法扩展。在了解react之前,我们还需要了解一些基础工具,比如npm,npm 全称是 node package manager,其实就是一个管理js编写的软件包的管理工具,可以下载,安装,升级,上传js软件包。为了在国内尽快的下载js库,我们需要配置一下npm的镜像源,即从哪个源下载,这里我指定了华为,其他的还有腾讯,淘宝等镜像源。
2024-02-04 14:56:00
1610
原创 记一次gorm版本不兼容踩坑经历
gorm.io 的 Find 方法在进行查找时,如果查找结果为空,不会报record not found,当接收函数为集合时,返回空集合;在gorm2.0以后的版本,有的时候为了方便,对于不需要操作的数据,我会直接interface返回结果,比如这样。这个很让人头疼,查看源码,发现确实有这样的限制,不是slice和struct就会报错,但这明显是不符合规范的,我不知道大家有没有注意过,在不同的项目中引入的gorm 有时候git地址是不一样的,有。这个仓库中,由于版本不兼容,所以留存了两个仓库。
2024-01-23 16:10:54
1220
原创 csdn写作关于markdown语法说明-相关操作及对应效果
MarkdownAuthors: John: Luke对应效果MarkdownHTMLAuthorsJohnLuke。
2023-11-27 16:17:03
1004
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人