- 博客(314)
- 资源 (18)
- 收藏
- 关注
原创 如何更换MySQL表的自增主键
本文探讨了将MySQL表的自增主键替换为分布式ID的方案。首先分析了数据同步场景下自增主键的局限性,然后详细对比了MySQL不同版本的自增主键实现机制(5.7与8.0在计数器持久化和锁策略上的差异)。接着介绍了两种分布式ID方案:雪花算法(基于时间戳的64位ID)和NT ID(号段预分配模式)。最后提出两种具体实施策略:方案1通过分配不同ID范围实现单向同步,方案2采用NT ID支持双向同步但需注意主键类型和精度问题。文章对分布式系统ID生成方案的选择提供了实用参考。
2025-11-16 23:36:49
619
原创 Redis过期策略与内存淘汰策略
摘要: Redis生产环境内存飙升问题排查与解决:通过iscan命令发现部分key过多且过期时间设置不合理,调整后内存下降。深入分析Redis的过期删除机制(惰性删除+定期删除)和内存淘汰策略(如volatile-lru),解释了未及时释放内存的原因。近似LRU算法通过redisObject的lru字段记录访问时间,牺牲部分精度提升效率。猜测内存激增源于过期key积压超过定期删除能力。建议合理设置过期时间并利用工具主动触发惰性删除。
2025-10-05 23:50:47
665
原创 对面试的一些思考
《面试新思考:从八股文到实战能力》文章摘要:作者结合近期面试经验,反思技术考察方式。反对死记硬背八股文,但强调基础知识的重要性,认为不了解技术点的候选人难以正确使用AI工具。建议将知识性问题融入项目场景考察,通过模拟真实开发(如数据库锁机制应用)评估候选人实战能力。同时分享团队建设心得:面试经验需积累,既要考察技术深度,也要关注性格匹配度,选择面试中相处融洽的候选人更利于团队协作。作者计划将常见面试题与实际工作场景结合,帮助候选人理解技术本质。
2025-10-05 23:45:09
261
原创 生活小记呀
初为父母的生活苦乐参半。照顾新生儿打乱了原有节奏,夜间频繁喂奶、白天哄睡循环让时间飞速流逝。虽然疲惫不堪,但孩子成长的每个瞬间都带来温暖与期待:看到父母时的笑容、逐渐长胖的小身体、努力翻身的样子。夫妻相互支持很重要,三观一致能减少育儿分歧。科技产品如摇摇椅、摇奶器成为得力助手。尽管辛苦,孩子的到来让生活充满平凡的快乐与二次成长的期待。夫妻俩希望未来能陪伴孩子体验各种活动,并为他创造更好的成长条件。
2025-10-05 23:44:21
373
原创 肌肉力量训练
健身一年多成功减重十几斤,不靠轻食而是坚持晨跑和力量训练。最近发现一本实用力量训练指南,按身体部位分类推荐动作,并标注相关肌肉群。书中包含胸部推举、背部下拉、肩部侧平举等详细动作图解。作者建议选择想锻炼的1-2个部位动作练习,效果显著。特别提醒需购买印刷清晰的正版书籍以便正确学习动作要领。文末附有各部位训练动作对应表及示范图片。
2025-08-26 19:25:30
317
原创 矛盾论有感
《矛盾论》的启示:用智慧化解生活与工作的迷茫 文章分享了重读《矛盾论》的感悟,阐述了如何运用矛盾分析法应对生活中的各种问题。作者指出矛盾具有普遍性,应以平常心看待工作生活中的大小事务;强调抓住主要矛盾的重要性,通过识别并解决关键问题来推动整体发展;同时警示要避免片面性和表面性思维,深入全面地分析问题。最后建议将时间投入有意义的阅读和思考,而非无意识地消耗时间。文章认为《矛盾论》提供了宝贵的方法论,值得反复研读以提升认知水平。
2025-08-02 12:04:15
656
原创 如何判断一个项目是否有问题
《项目执行中的潜在风险与应对思考》 文章梳理了项目全流程中可能出现的风险点及应对方案:1)需求阶段需警惕不合理需求,避免ROI过低;2)评审阶段应确保方案全面性;3)技术方案要细化到伪代码级别;4)开发环节需加强代码规范;5)测试用例要覆盖充分;6)测试过程需严肃对待每个问题;7)上线必须有明确计划。作者强调,虽然各环节都有标准解决方案,但最关键的还是每个节点的执行者都要成为"用心靠谱的同学"。这种对细节的关注和责任心,才是项目顺利推进的根本保障。文章通过具体场景分析,揭示了理想流程与实
2025-06-15 22:57:30
969
原创 模型Function Call
工具调用(Function Calling)是大模型连接外部API的关键功能,充当自然语言与接口之间的"翻译官"。本文以火山引擎的豆包大模型为例,演示了如何通过流式调用实现天气查询功能。首先需在火山控制台开通模型并获取API Key,随后通过Go代码定义天气查询工具,构建包含工具信息的对话请求,并处理模型返回的流式数据。代码展示了如何解析工具调用参数(如地点和温度单位),执行模拟API调用,并将结果返回给模型进行总结。该流程体现了大模型结合外部工具扩展能力的典型实现方式。
2025-06-14 23:00:07
955
原创 Go的优雅退出
摘要:文章探讨了服务优雅退出的必要性及实现方法。在服务升级时,粗暴关闭会导致未完成请求出错,尤其对大模型接口影响更甚。优雅退出可通过服务发现停止新流量,并等待处理完成旧请求。Linux进程可通过捕获SIGINT、SIGTERM等信号实现,但SIGKILL无法捕获。文章以Go代码示例展示信号捕获机制,并介绍CloudWeGo框架在K8s环境下的优雅退出流程:包括preStop等待、关闭监听端口、处理旧连接等步骤,最后强调需合理配置terminationGracePeriodSeconds以避免强杀。
2025-06-07 23:02:57
1290
原创 模型应用层商业化建设思路
本文分析了AI应用层产品的商业化模式,主要探讨了模型调用和产品能力两种盈利方式。通过对比散卖模式和会员模式,指出散卖模式存在用户体验差、功能分散的问题。重点介绍了会员模式的四种计费方案:按请求次数、按模型token、按轮次和按点数,其中点数方案被推荐为最优解,因其统一性好、扩展性强,能同时覆盖模型调用和产品能力收费。文章最后引导读者关注作者公众号和个人博客获取更多技术内容。
2025-06-07 22:59:35
1028
原创 引用开源包需要慎重
本文探讨了使用开源JSON修复包时遇到的栈溢出问题及解决方案。作者测试了两个Golang JSON修复包:第一个功能强大但存在栈溢出风险(示例代码触发1GB栈溢出),第二个避免了该问题但修复能力较弱且可能panic。文章提出三个关键问题:1) 选择开源代码需关注项目活跃度、社区支持、代码质量、许可证等;2) 栈溢出由无限递归、深层嵌套或栈上数据过大引发;3) 解决方案包括设置递归终止条件、优化算法及合理分配内存。最后强调栈溢出无法recover,需通过预防措施避免。
2025-05-31 23:36:40
835
原创 生活小记啊
生活充满变化与成长。作者经历了团队调动带来的挑战,选择拥抱变化拓展视野;频繁出差中对家的思念愈发强烈,在灵隐寺求手串助眠形成奇妙闭环;坚持晨练一年收获健康体态。这些经历让他体会到:唯一不变的就是变化本身,而正是这些变化推动着个人不断进步。从工作到生活,从身体到心灵,每个方面都在动态平衡中寻找着更好的自己。
2025-05-31 23:31:15
610
原创 go语法大赏
在前段时间的单机房稳定性问题排查中,发现了一个与Go语言channel使用相关的bug。通过仿真代码,展示了在SendChannel和RecvChannel之间的通信过程中,由于channel关闭顺序不当导致的panic问题。具体表现为,Process函数中的defer语句尝试关闭已经关闭的channel,引发了panic。该问题涉及Go语言中channel的基本概念、关闭机制以及goroutine的并发控制。通过分析代码执行结果,可以快速定位到问题根源,提醒开发者在处理channel关闭时需注意顺序和并发
2025-05-18 23:08:21
1151
原创 MySQL事务的一些奇奇怪怪知识
在Gorm中,如果事务中有错误发生但不返回错误,而是返回nil,事务将不会回滚,而是尝试提交。这种情况下,MySQL会尽力提交已成功执行的语句,而失败的语句不会回滚整个事务。这破坏了事务的原子性,可能导致数据不一致问题。例如,部分操作生效而部分未生效,无法保证业务逻辑上的一致性。因此,不建议在事务中忽略错误并返回nil。 关于MySQL表数据时间的记录时刻,created_at字段使用CURRENT_TIMESTAMP作为默认值,表示记录创建时的时间。即使事务中多个插入操作在不同时间点执行,created_
2025-05-18 23:07:10
366
原创 golang之ctx cancel
大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-05-04 14:02:39
1056
原创 如何做报警治理
我始终觉得稳定性治理是业务功能的重要组成部分,一个不稳定的系统很可能导致整个产品无法提升到更高的水平。大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-05-04 14:01:36
930
原创 memtest86检测内存
上次在的时候,使用过memtest64进行测试。这个操作肯定是有用的,我就用这个方法查出有问题的内存条,及时找商家进行了更换。但是该方案有个问题,只能锁定部分内存,如下图,只测试到了23G左右的内存。那如何测试全部内存呢?
2025-03-29 21:04:05
5704
原创 晋升系列6:专项提升
终于看完了这个系列,只能说相见恨晚,在刚开始工作的时候就能看到这些就好了。如果说有子女的话,那这些知识应该在孩子的成长过程中就通过各种事情慢慢的教会给他们。这真是很好的系列,后面需要多看几遍,而且要真的动手去做。
2025-03-29 20:54:52
1007
原创 是否选择Monorepo?
Monorepo 是一种项目代码管理方式,指单个仓库中管理多个项目,有助于简化代码共享、版本控制、构建和部署等方面的复杂性,并提供更好的可重用性和协作性。Monorepo 提倡了开放、透明、共享的组织文化,这种方法已经被很多大型公司广泛使用,如 Google、Facebook 和 Microsoft 等。
2025-03-19 22:32:58
1202
原创 晋升系列5:做事方法
晋升时遇到这些问题你怎么回答?有什么章法吗?有的,4D总结法。你认为这个结果怎么样?你怎么评价这个结果?为什么你认为这个结果不好?为什么你的方法挺好但是结果不好?你从这个结果得到什么经验和教训?4D 总结法,也就是从结果、数据、技术和成长这 4 个维度(Dimension)来整理自己的做事收获。改进措施要有理有据,是真的要去做的。改进措施的数量也不要太多,一般可以分为“业务”“技术”和“管理”这几种类型,每种类型列 3~5 条。
2025-03-19 22:30:42
1081
原创 晋升系列4:学习方法
好的学习方法确实事半功倍,感觉自己以前花了很多时间,虽然有进步,但方法掌握的不好,进步的速度还是太慢了。好在确实是有积累的,现在需要把积累的这些内容,按照学习方法重新梳理一下。今后的学习内容,都向新的学习方法贴合。上面这些学习方法是相辅相成的,你可以根据你当前的级别和实际工作内容,把它们组合起来使用,具体的方式如下:第一步,无论你当前是什么级别,先用“三段分解法”来规划你的学习目标和计划。第二步,使用“海绵学习法”来找到你可以用于学习的时间。第三步,根据学习目标采取相应的学习方法。
2025-03-10 00:23:16
1550
原创 晋升系列2:职级详解
在提到了COMD能力模型,,这篇看一下作者对于不同的P级别要求的看法。在真正的工作过程中,P7、P8、P9因为业务调整等,负责的规模可能±1,这就算气运的部分了。
2025-03-02 18:14:03
2296
原创 6 Elasticsearch聚合分析
大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-02-17 00:16:46
1116
原创 晋升系列1:晋升前的基础认知
大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-02-17 00:10:20
1573
原创 对项目交接的一些思考
天下大势,分久必合合久必分。这些年交接了很多项目,也从别人那里接手了很多项目。最近又接收了一些项目,但团队接收的效果不是很好,或者说掌握的不全面,所以就在想怎么能够做的更好一些?
2025-02-17 00:07:12
246
原创 5 Elasticsearch深入搜索
怎么比较好的学习ES?我觉得首先要学一下概况或者说框架,这个可以使用极客时间的《Elasticsearch 核心技术与实战》。然后看ES的官方文档,各种细节都在里面,而且内容准确无误,坏处是没有英文的。最后动手实践,demo实践,生产实践,慢慢就能更加的了解了。大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-02-06 21:11:11
769
原创 4 Elasticsearch常用指令
Mapping类似数据库中的schema的定义,会把Json文档映射成Lucene所需要的扁平格式,作用如下定义索引中的字段的名称定义字段的数据类型,如字符串,数字,布尔等字段倒排索引的相关配置,如Analyzed or Not Analyzed在写入文档时,如果索引不存在,会自动创建索引Dynamic Mapping机制,使得我们无需手动定义Mappings。Elasticsearch会自动根据文档信息,推算出字段的类型但有时推算的不对,例如地理位置信息推算成text格式。
2025-02-03 00:09:25
1396
原创 3 Elasticsearch索引简介
大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-01-29 23:18:00
1091
原创 2 Elasticsearch基本概念
大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-01-29 23:13:49
1098
原创 1 Elasticsearch家族成员及安装
ES是一款高度可伸缩的、分布式的、近实时搜索的开源全文搜索与分析引擎。创始人是Shay Banon,2004年基于Lucene开发了Compass,2010年重写Compass,取名Elasticsearch。名言:Search is something that any application should have.这和我对愿景的想法是一致的,有时候大家出于某种纯粹的理想去做事情,可能就成了。Elasticsearch(ES)有多个版本,以下是一些主要版本及其发布时间:后续使用7.1版本进行练习一般可以
2025-01-20 23:24:45
1078
原创 愿景是什么?
下面是一些相对标准的定义:愿景:愿景通常指的是一个人或组织所向往的前景,是长期的发展目标和期望实现的蓝图。它描绘了一个人或组织希望达到的理想状态,具有激励和导向作用。使命:使命则更侧重于表达一方委派另一方办事的命令,多指重大的责任或任务。对于组织而言,使命是其存在的根本原因和目的,是组织所承担的社会责任或所致力于解决的社会问题。价值观:价值观是关于价值的一定信念、倾向、主张和态度的观点。它起着行为取向、评价标准、评价原则和尺度的作用,决定了一个人或组织在面临选择时如何取舍和判断。
2025-01-20 23:19:13
768
原创 R730安装万兆网卡
人生有时候就在于折腾,我们得有迎接折腾的心态才能开开心心的生活。生活就是有辛苦,有享乐,让瓤子开心一点很重要。大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)我的个人博客为:https://shidawuhen.github.io/设计模式招聘思考存储算法系列读书笔记小工具架构网络Go语言。
2025-01-01 21:59:42
1628
原创 论语第六篇-雍也
《雍也》是《论语》的第六篇,一共包括16章。本篇主要记述了孔门众弟子的言行,以及孔子对他们的教导。孔子特别称赞了颜回的好学,也批评了冉求的不努力。
2024-12-24 15:46:05
597
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅