自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(242)
  • 资源 (1)
  • 收藏
  • 关注

原创 推荐算法指标-IPV

IPV(Item Page View)是衡量用户在看到推荐后,是否愿意花时间深入了解该物品的核心指标。它比“点击”更能反映用户的真实兴趣,是评估推荐效果、连接曝光与最终转化的关键一环。在优化推荐算法时,工程师不仅会关注点击率,更会密切关注 IPV 以及后续的转化指标,以确保推荐系统不仅能吸引用户点击,更能为用户提供真正有价值的内容,从而实现平台和用户的双赢。

2026-06-05 14:42:45 243

原创 .puml文件是什么,怎么用

puml是 PlantUML 语言脚本的专用文件扩展名,代表“PlantUML source file”。其内容是结构化的文本,这些文本利用 PlantUML 定义了各种UML图(如类图、时序图、用例图、活动图等等)。.puml文件本身不是图片,也不能自动展示图形,但可被 PlantUML 工具解析为可视化的 UML 图形。.puml文件是适合多人协作、自动化和版本管理的UML建模方式。它上手简单,渲染灵活,是程序员和架构师绘制软件模型(如类图、流程图等)的利器。不论是作为设计交流还是开发文档的一部分,

2026-05-19 18:23:35 397

原创 一文搞懂MCP、Skill、Agent

MCP解决工具标准化接入,Skill带来任务能力的打包复用,Agent实现AI自主智能决策和多步自动执行。三者作为现代AI工程体系的高阶基石,为企业和开发者赋能,让大模型成为真正可用、好用、可扩展的数字员工。

2026-05-19 11:45:04 396

原创 AI大模型关键概念全链路梳理

人如何有效提问?→ Prompt如何自动化设定任务范围?输入处理的细节?→ Token、多模态、上下文窗口输出质量与风格?如何避免胡说?→ 幻觉、Structured Output、RAGAI如何主动去“查”?→ Embedding、向量数据库如何专精领域?→ 微调AI如何主动“干活”?扩展工具的标准化?→ MCP能力如何高度复用?→ Skill每一步都是AI工程体系进化的必然结果——让模型更懂你,让模型接入更多真实世界的工具与知识,让能力标准化、高效复用。

2026-05-18 20:55:47 411

原创 JMH基准测试工具解析

JMH 是 Java 性能工程的基石。它用科学、严谨的方式,将开发者从手动计时的“刀耕火种”时代,带入了自动化的、可信的“精准测量”时代。是什么:一个官方的、专业的 Java 微基准测试框架。为什么:为了对抗 JVM 优化带来的测量干扰,获得准确、可信的性能数据。怎么做:通过Maven引入依赖,使用@Benchmark等注解定义测试,并通过Runner启动。不要猜测,用 JMH 来测量!

2026-05-15 14:57:41 393

原创 分布式系统的上游和下游系统

角色你的系统做什么它是…另一个系统是…调用方 (Caller)主动发起RPC调用,请求别的服务上游 (Upstream)下游 (Downstream)被调用方 (Provider)接收RPC请求,提供数据或功能下游 (Downstream)上游 (Upstream)

2026-05-11 17:54:30 216

原创 从短连接到 gRPC:一文读懂 HTTP 连接模型的演进

协议/技术连接模型核心特点比喻HTTP/1.0短连接一请求一连接,性能差每次买一件商品就离开超市HTTP/1.1长连接复用连接,但有队头阻塞推购物车一次性买多件商品高级长连接单一连接 + 多路复用多车道高速公路,并行行驶HTTP/3基于 QUIC传输层多路复用,无 TCP 阻塞更先进的智能交通系统从短连接到长连接,再到 gRPC 所依赖的多路复用,我们看到的是技术对效率和性能永不停歇的追求。理解这一演进脉络,不仅能帮助我们更好地进行技术选型,更能让我们洞悉未来网络通信的发展方向。

2026-05-09 17:28:10 290

原创 Python 虚拟环境与 pipx 详解

核心要点venv是项目开发的基石,必须为每个项目创建。pipx是工具管理的利器,避免全局安装的冲突。两者互补,共同构建干净、可复现的 Python 工作环境。针对您的具体场景数据分析脚本:在项目目录创建.venv,激活后安装pandasmatplotlibseabornjoblib。CLI 工具:用pipx安装jupyterblackflake8等,确保它们互不干扰。PyCharm 配置:确保每个项目都正确指向对应的.venv解释器。下一步如果您需要为某个具体项目配置venv或安装pipx。

2026-04-03 18:11:01 220

原创 Lua 脚本是什么

Lua 是一种小巧、跨平台、可嵌入的脚本语言优势:轻量级、高性能、易集成、热更新、应用广泛一般用法:独立脚本、嵌入主程序、作为插件语言常见场景:游戏开发、服务器、嵌入式、工具定制如果你有实际需求或疑问,可以详细说一下场景,我可以针对性地补充用法或示例。

2026-04-02 15:29:01 578

原创 使用 new 关键字和 Java 反射创建对象的区别

常规开发,用new:当你明确知道要创建哪个类的对象时,永远优先使用new。它更安全、更快、更简单。需要动态和灵活性,用反射:当你需要编写更通用的、与具体类解耦的代码时,比如在开发框架、工具或处理动态配置时,反射是不可或缺的强大工具。简单来说,new是给程序员日常使用的,而反射主要是给框架和底层工具的开发者使用的。在业务代码中滥用反射通常被认为是一种坏味道(code smell),因为它牺牲了太多性能和可维护性。

2026-03-23 20:46:13 415 1

原创 TPS VS QPS

系统每秒能成功处理多少个业务请求/事务,是衡量系统吞吐量、处理能力、并发性能的核心指标。

2026-03-12 14:20:31 81

原创 时间戳是什么

是一个 13 位毫秒值。它在物理意义上代表了距离 1970 年起点已流逝。时间戳的设计哲学在于**“去时区化”**。是实现全球时间对齐的底层协议。其核心逻辑在于建立一个与地理位置无关的。,从而确保全球计算机在同一物理时刻生成的数值完全一致。在数字化协作与分布式系统中,

2026-03-03 14:16:32 302

原创 Idea Generation(如何产生好想法)

也许最重要的是,你要和那些不会因为你说了一个糟糕的点子就让你觉得自己很蠢的人在一起,而且他们自己也绝不会因为说了坏点子而觉得尴尬。事实证明,优秀的创业者对一切都有很多想法,所以如果你想成为创始人却想不出公司点子,你应该先练习如何更好地生成创意。最后,检验一个点子的好方法是:你能否清楚地说明为什么大多数人认为这个点子很糟,而你却知道它为什么好。拥有创意是创业者最重要的品质之一——在经营公司的过程中,你需要不断地产生新的想法。在思考点子的早期,一个很好的问题是:“如果这个点子成功,会不会很大?

2026-03-01 21:42:35 863

原创 AI(Artificial Intelligence) 、ML(Machine Learning)、DL(Deep Learning)的区别

AI 是整座房子ML 是房子里的一个房间所有能让机器变聪明的技术,都叫 AI靠数据训练、自己学习的 AI,才叫 ML如果你想,我还能顺便帮你讲深度学习(Deep Learning)在里面是什么位置。

2026-02-25 20:23:44 419

原创 How to fix your entire life in 1 day 解析

你不需要 365 天去改变整个人生。You need你只需要真正醒过来的那一天。绝大多数人一辈子都在等信号,等动力,等完美时机。但信号就是你对现在的生活感到恶心。动力就是你看见自己能成为谁。完美时机就是现在。这套方法有效,因为它不是让你“更自律”。它让你改变你是谁。当你改变了你是谁,其他一切都会自动改变。你不用“强迫”习惯。Yououtgrow你是成长到超越了过去的你。如果你认真做完这一整天,你的人生将永远不一样。

2026-02-13 15:19:37 1231

原创 贝叶斯公式拆解

我直接把,不讲虚的,每一个符号、每一步都给你讲死,让你。

2026-02-12 19:48:50 565

原创 贝叶斯定理在生活中的应用

先看这事本来有多大概率,再看你看到的证据有多强,最后得出一个更靠谱的新判断。不冲动不被带节奏不被情绪操控不被单一信息忽悠你就是在用贝叶斯活着。

2026-02-12 18:37:52 460

原创 贝叶斯定理

我用的方式,给你把讲透,从公式→含义→例子→应用,一次性看懂。

2026-02-12 18:27:55 474

原创 力扣-3-无重复字符的最长子串

滑动窗口(双指针)是解决“最长无重复子串”类问题的最优思路,时间复杂度OnO(n)On(仅遍历一次字符串);优化技巧:用固定大小的数组替代HashMap存储字符索引,兼顾时间和空间效率(空间复杂度O1O(1)O1关键细节:调整左指针时,必须保证左指针只向右移动(避免回退),且仅当重复字符在当前窗口内时才调整。这道题是滑动窗口的入门经典题,掌握后可以举一反三解决类似的“子串/子数组”问题(比如“最小覆盖子串”),核心是理解“窗口的动态调整逻辑”。

2026-02-10 20:55:00 451

原创 力扣-2-两数相加

模拟手工加法,从个位(链表头)开始相加,处理进位和链表长度不一致的问题;关键技巧:使用虚拟头节点简化链表操作,循环条件覆盖“链表未遍历完”和“最后有进位”两种场景;边界处理:短链表补 0、最后进位新增节点,避免空指针异常。这道题是链表的入门经典题,掌握后能理解链表遍历、虚拟头节点、进位处理等核心考点,后续可以尝试优化空间(比如直接在原链表上修改),但上述解法是最易理解、面试中最推荐的写法。

2026-02-10 20:37:44 399

原创 容器宿主机绑核

容器宿主机绑核(CPU Affinity / CPU Set),是将容器进程上运行、禁止内核跨核调度的资源隔离与性能优化技术,底层依赖Linux实现。

2026-02-10 20:09:28 323

原创 内存带宽的计算方法

理论计算:核心用64bit × 内存标称频率 × 通道数 ÷8 ÷1024,直接得出宿主机内存最大硬件带宽,是规划宿主机性能的基础;实际性能:通过mbw/stream/AIDA64实测,虚拟化宿主机需区分物理层和虚拟机层,实际带宽通常为理论值的60%-90%;关键优化:宿主机需插满对应通道数的内存、避免混插不同规格内存、关闭过度内存超配,才能充分发挥理论带宽。

2026-02-03 17:25:29 1043

原创 转义符使用

字符的“默认含义”与“实际需求”冲突时想让“特殊功能字符”变成“字面字符”(如正则的、字符串的想让“普通字符”拥有“特殊功能”(如字符串的\n表示换行)。不同场景的转义符可能不同(如 Shell 用或,HTML 用实体),但核心逻辑一致:通过额外符号告诉解析器“该字符的含义需要改变”。

2026-01-21 20:58:22 715

原创 什么是 Embedding

简单来说,Embedding(嵌入)是将离散的、高维的、难以计算的对象(比如文字、单词、图片、用户ID)转换为连续的、低维的、稠密的实数向量的过程。离散对象(比如单词“苹果”):就像一本字典里孤立的词条,只能知道“苹果”是水果,但无法量化它和“香蕉”“手机”的关系;嵌入向量(比如 [0.23, -0.56, 1.89]):就像把“苹果”放在一张地图上,“香蕉”离它近(向量相似度高),“手机”离它远(向量相似度低),向量的每个维度都代表了这个对象的一个潜在特征(比如“是否是水果”“是否可食用”)。

2026-01-13 11:04:42 1280

原创 foreach中使用remove踩坑

foreach循环底层依赖迭代器,直接调用集合remove会导致迭代器检测到“并发修改”,抛出;安全删除集合元素的核心方式:用迭代器的remove方法、倒序 for 循环、或 Stream 过滤;等线程安全集合允许 foreach 中删除,但本质是底层复制数组,性能较低,非并发场景不推荐。

2026-01-13 10:46:09 327

原创 倒排索引是什么

在推荐系统领域,是一种从映射到的数据结构,核心作用是快速检索包含特定特征的物品集合,广泛用于基于内容的推荐、协同过滤的候选集召回等场景。它的设计思路和搜索引擎中的倒排索引一脉相承,但会结合推荐场景的需求做针对性优化。

2026-01-08 13:37:35 641

原创 重构代码如何写提示词

比如「没有 init 方法」「不能改 @Parameter 变量」「依赖 Guava 的 CollectionUtils」这些硬性条件,一定要提前说,否则重构方案可能不符合你的项目规范。如果你有偏好(比如这次的策略模式),直接说「优先用策略模式」,我会在这个方向上深化;如果不确定,也可以说「请推荐合适的设计模式」。的定义,否则我可能会假设不存在的方法(比如。模糊的需求会得到模糊的结果。(可以直接参考这个写法,替换成你的新需求)),导致重构后的代码无法直接用。这类具体目标,我才能精准发力。

2026-01-04 20:25:59 412

原创 Java 中,`1 << 1`

1 << 1的本质是将 1 的二进制左移 1 位补 0,结果为2,等价于1 × 2¹。理解它的核心是掌握“按位左移的补 0 规则”和“左移与 2ⁿ 乘法的关联”,同时注意溢出和位数取模的细节。在实际开发中,左移常用来优化乘法运算或实现位掩码逻辑。

2025-12-19 10:56:04 946

原创 git stash用法

提交一致),以便切换分支或执行其他操作。其本质是将修改存储为一个“储藏栈”(Stack),遵循后进先出(LIFO)原则。是高效管理临时修改的利器,尤其适合多任务切换场景。每个 stash 记录包含分支名、提交哈希和描述。(未提交的变更),使工作区恢复到干净状态(与。若恢复时发生冲突,需手动解决(类似合并冲突)。适用于解决 stash 与当前分支的冲突。:默认不保存未跟踪文件和忽略文件。

2025-11-22 08:29:53 553

原创 主从合并是什么

主从合并的具体含义要结合上下文来看,大多数情况下指的是将从分支的内容合并到主分支,或者将主分支的内容合并到从分支,以保证代码或数据的一致性和完整性。

2025-11-17 13:41:54 366

原创 git revert 2

指定你要保留的父分支。适用于已推送远程仓库、团队协作场景。不会破坏历史,安全可靠。

2025-11-06 10:32:45 395

原创 git revert

git revert是 Git 用来撤销某个已提交(commit)的变更的命令。它不会删除历史记录,而是创建一个新的提交,将指定提交的内容“反向应用”(也就是还原),让代码库回到之前的状态。与git reset不同,revert是安全的,不会丢失历史。git revert是撤销已提交变更的推荐方式,尤其在团队协作、已推送远程的情况下。它不会影响历史,只是新增一个“撤销”提交,让你安全地回滚功能或修复错误。

2025-11-06 10:29:01 582

原创 git cherry-pick

是 Git 中的一个命令,用于将某个特定的提交(commit)从一个分支复制到另一个分支。它不会合并整个分支,而是“挑选”某次提交的内容,应用到当前分支。这就像“挑樱桃”一样,只选你想要的那颗提交。是 Git 中非常实用的命令,让你可以灵活地迁移某些特定的改动到其它分支,适用于补丁、bug 修复等场景,但应谨慎使用。

2025-11-06 10:27:30 583

原创 linux软连接、硬连接

软连接是 Linux 文件系统中强大的工具,可以灵活组织文件结构、简化运维和开发流程。合理使用软连接有助于系统管理、项目部署、数据共享等多方面的工作,但也需注意权限、安全性和链接失效等问题。

2025-10-28 11:06:42 1085

原创 召回的蛇形合并

/ 简单的Item类String id;// 来源标记蛇形合并是一种简单高效的多路召回融合策略,适用于推荐系统的候选集组装环节。上述Java实现可直接用于工业场景,也易于扩展。

2025-10-27 11:34:26 600

原创 log4j配置文件详解

/name:包名或类名(推荐包名,支持所有子包)。level:该 logger 的日志级别。additivity:为 false 时,日志只发给本 logger 指定的 appender,不再向上(root)传递,避免重复打印。

2025-10-23 14:51:52 845

原创 drawio画java的uml的类图时,class和interface的区别是什么

类图中的类直接画三栏矩形,类名正常显示。类图中的接口类名上方加,或类名斜体。方法只写方法签名,无实现。用虚线箭头表示实现关系。Person --实现(虚线带空心三角箭头)--> Printable总结在 draw.io 画 UML 类图时,class和interface的主要区别体现在标注、内容、以及实现/继承关系的连接线上。接口需要用标注,并用虚线箭头表示实现关系;类则用普通矩形,实线箭头表示继承关系。

2025-10-14 16:28:46 472

原创 Java代理模式

代理模式(Proxy Pattern)是一种结构型设计模式,它为其他对象提供一种代理以控制对这个对象的访问。代理对象在客户端和目标对象之间起到中介作用。

2025-09-23 10:30:48 356

原创 观察者模式

观察者模式(Observer Pattern)定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。

2025-09-19 12:47:25 273

原创 工厂模式VS抽象工厂模式

专注于"怎么创建":关注单一产品的不同创建方式垂直扩展:在同一产品线上增加不同的实现简单直接:一个问题,一个解决方案。

2025-09-17 20:26:30 467 1

Introduction+to+Algorithms.pdf

《Introduction to Algorithms》译作《算法导论》,最为经典的算法入门书之一。得到吴军老师推荐。

2019-07-29

空空如也

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

TA关注的人

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