<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>ohmyblog</title>
    <link>https://ohmygp.com/</link>
    <description>ohmyblog - 工具使用技巧与开发随笔博客</description>
    <item>
      <title>职场故事文章怎样写：把真实观察与虚构人物分开</title>
      <link>https://ohmygp.com/posts/batch-012-day-10-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-10-knowledge-4</guid>
      <description>写职场文章时，一个方便的细节很容易越界：原本只是看到某份交接说明写得不清楚，写着写着变成“我的同事被领导故意刁难”。前一句是可核对的现象，后一句加入了人物关系与动机判断。把人物换个姓，并不能让未经证实的事实变得可靠。</description>
      <pubDate>Wed, 06 Jan 2027 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>宣传口号怎么选：先核对品牌承诺能不能兑现</title>
      <link>https://ohmygp.com/posts/batch-012-day-10-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-10-knowledge-3</guid>
      <description>挑宣传口号时，常见做法是让AI生成一批，再选最有气势的一句。可一旦句子写进海报，它就可能让用户形成具体期待。“随时”“全部”“自动完成”这些词，不能仅凭好听就留下。筛选顺序可以换一下：先检查每个承诺有没有产品事实支持，再比较表达是否简洁、是否容易理解。</description>
      <pubDate>Wed, 06 Jan 2027 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>职业规划先盘点约束，别让AI直接替你选职业</title>
      <link>https://ohmygp.com/posts/batch-012-day-10-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-10-knowledge-2</guid>
      <description>“我适合做什么”很容易换来一份听起来很完整的职业名单。问题在于，兴趣相似的人，照护安排、可投入时间、工作地点与风险承受方式可能完全不同。AI可以帮你整理这些差异，最后如何取舍仍需要你决定。先把约束写出来，比先让它扮演资深顾问更有效。</description>
      <pubDate>Wed, 06 Jan 2027 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>让AI模拟面试，怎样做到一次一问并追问真实经历</title>
      <link>https://ohmygp.com/posts/batch-012-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-10-knowledge-1</guid>
      <description>模拟面试最容易出现一种假热闹：开头同时问背景、职责、难点、结果，回答后又立即给出一段漂亮的示范答案。你看似练了很多内容，实际没有练清楚自己的行动。更有用的练法，是先指定要考察的能力，再约定什么时候追问、什么时候停止，以及哪些空白只能由你补。</description>
      <pubDate>Wed, 06 Jan 2027 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>社群回复模板怎样分流：问题、投诉和购买咨询分开</title>
      <link>https://ohmygp.com/posts/batch-012-day-09-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-09-knowledge-4</guid>
      <description>社群回复模板最怕只按语气分类：礼貌的发标准答案，生气的先安抚。真正决定下一步的是问题是否能用已确认资料解决、有没有个人订单信息、有没有损失或风险信号，以及回复者是否有权处理。AI可以帮忙整理候选回复，但分流规则必须先由人定好。</description>
      <pubDate>Tue, 05 Jan 2027 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>活动结束后怎样复盘：别把同时发生当成因果关系</title>
      <link>https://ohmygp.com/posts/batch-012-day-09-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-09-knowledge-3</guid>
      <description>活动结束后，报名增加，报告很容易写成“活动有效”。问题在于，同一时期可能换了入口、增加曝光、赶上自然需求变化。让AI复盘时，要先把比较对象、观察窗口和混杂条件交代完整，再限定结论能说到哪一层。</description>
      <pubDate>Tue, 05 Jan 2027 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>销售文案怎样从产品参数走到适用场景</title>
      <link>https://ohmygp.com/posts/batch-012-day-09-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-09-knowledge-2</guid>
      <description>“轻巧方便、随处可用”很像销售文案，却没有帮助读者判断产品是否适合自己。让AI把参数改写得动人，容易把一个有条件成立的功能扩成万能承诺。更实用的做法是搭起一条能倒查的链：原始参数、使用条件、可以描述的动作、必须保留的限制。</description>
      <pubDate>Tue, 05 Jan 2027 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>社群内容排期怎样安排：先明确每条消息的用途</title>
      <link>https://ohmygp.com/posts/batch-012-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-09-knowledge-1</guid>
      <description>一个群周一问早、周二发知识、周三推活动，看起来很完整，成员却可能不知道现在该做什么。用AI排社群内容时，先给消息分类，再决定是否值得占用一次提醒。时间表只是结果，用途和触发条件才是输入。</description>
      <pubDate>Tue, 05 Jan 2027 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>营销活动方案先补齐预算、对象和成功标准</title>
      <link>https://ohmygp.com/posts/batch-012-day-08-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-08-knowledge-4</guid>
      <description>“帮我策划一场有吸引力的活动”能带来很多点子，却很难据此准备物料。对象含糊，内容会同时讨好新手和熟手；预算没有口径，赠品、场地和备用金容易重复计算；成功标准不明，事后只能用“气氛很好”收尾。让AI参与策划前，可以先把这三个条件锁定，再要求它在条件内做取舍。</description>
      <pubDate>Mon, 04 Jan 2027 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>项目复盘怎样让AI帮忙：把事实、原因假设和行动分开</title>
      <link>https://ohmygp.com/posts/batch-012-day-08-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-08-knowledge-3</guid>
      <description>项目结束后，把聊天记录、交付清单和几句抱怨交给AI，很容易得到“沟通不足、流程不完善、加强协作”这样的报告。它们看起来像结论，却无法回答哪条记录支持判断、下次究竟改哪里。更可靠的做法，是先让AI整理可追溯事实，再保留原因假设的不确定性，最后把行动与责任另列。</description>
      <pubDate>Mon, 04 Jan 2027 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>短剧对白太像解释说明，怎样用行动与潜台词改写</title>
      <link>https://ohmygp.com/posts/batch-012-day-08-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-08-knowledge-2</guid>
      <description>一场戏里，两个人轮流解释背景，信息可能一字不漏，关系却没有发生变化。让AI“写得有潜台词”也容易走向另一端：每句都像谜语，观众连谁要离开都看不懂。改对白时，可以保留表层事务，让真正的冲突通过请求、回避、让步与动作显露。</description>
      <pubDate>Mon, 04 Jan 2027 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>微电影提示词怎样写：用可拍摄动作表达人物变化</title>
      <link>https://ohmygp.com/posts/batch-012-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-08-knowledge-1</guid>
      <description>写微电影时，把“一个自私的人终于学会分享”交给AI，容易得到一串内心结论：他感到羞愧，他明白了友谊，他决定改变。故事主题很清楚，现场却不知道该拍什么。更有用的输入，是同一人物在前后两次相近处境中做出的不同动作，以及促成变化的中间阻力。</description>
      <pubDate>Mon, 04 Jan 2027 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>动物日常故事怎样连贯：把角色特征写成连续性清单</title>
      <link>https://ohmygp.com/posts/batch-012-day-07-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-07-knowledge-4</guid>
      <description>动物日常故事常有一种断裂：第一幕抱着一袋种子，第二幕袋子消失，第三幕又突然满满一袋；角色明明只是去办一件小事，却像每个画面都重开了一次。解决办法不是每段重复一大串外貌，而是把固定特征与可变状态分开，记录每次行动改变了什么。</description>
      <pubDate>Sun, 03 Jan 2027 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>万物成精的故事怎样写：让物品特征成为行为动机</title>
      <link>https://ohmygp.com/posts/batch-012-day-07-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-07-knowledge-3</guid>
      <description>给杯子画眼睛、给雨伞起名字，只能让物品像角色。要让它真正推动故事，需要问：它原本能做什么，因此最在意什么，又会把什么事理解错？本篇不做拟人外观身份卡，而是把物品功能变成行动理由，再给行动设置代价。</description>
      <pubDate>Sun, 03 Jan 2027 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>变身分镜怎样保持主体一致：先锁定可识别的特征</title>
      <link>https://ohmygp.com/posts/batch-012-day-07-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-07-knowledge-2</guid>
      <description>变身分镜最怕每一格都很精彩，连起来却像三位陌生角色。重复“同一主体”只是目标，不能替代设计。真正需要写清的是：哪些标记一直可见，哪些部件改变位置，变化前后的体量怎样对应。这里讨论的是形体转换时的识别，不是一个角色跨日常剧情的道具管理。</description>
      <pubDate>Sun, 03 Jan 2027 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>山海经题材画面怎样设计：典籍线索与原创造型分开</title>
      <link>https://ohmygp.com/posts/batch-012-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-07-knowledge-1</guid>
      <description>做“山海经题材”画面，最容易混淆的是两件事：从哪里获得灵感，以及最后画成什么样。给异兽加上透光耳翼、雾纹和悬浮石环，当然可以成为创作选择；但这些选择不能自动变成某本书里已经写过的特征。提示词越具体，越需要把依据与设计分开。</description>
      <pubDate>Sun, 03 Jan 2027 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>拟人角色怎样设定：用个体性格替代群体刻板印象</title>
      <link>https://ohmygp.com/posts/batch-012-day-06-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-06-knowledge-4</guid>
      <description>拟人角色一登场就“天生严谨”“向来浪漫”，写起来很省事，也容易让人物变成标签。把现实群体当成单一性格来源，既缺少人物层次，也可能把刻板印象包装成幽默。练习拟人写作时，可以先换成原创物件，学习怎样从个体经历建立差异。</description>
      <pubDate>Sat, 02 Jan 2027 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>短剧冲突怎样推进：让每次选择都有后果</title>
      <link>https://ohmygp.com/posts/batch-012-day-06-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-06-knowledge-3</guid>
      <description>短剧写到中段，角色常常只是在换着句式争吵。音量更大、台词更狠，局面却没变。让AI帮忙续写之前，先给每个角色一项不能同时满足的目标，再问：这一轮选择之后，谁失去了什么机会？</description>
      <pubDate>Sat, 02 Jan 2027 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>短视频分镜怎样写：每个镜头都承担明确的信息</title>
      <link>https://ohmygp.com/posts/batch-012-day-06-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-06-knowledge-2</guid>
      <description>短视频脚本常有“开场抓人、过程精彩、结尾升华”，拍摄时却不知道镜头该对准哪里。把任务交给AI之前，先回答一个更具体的问题：看完这一镜，观众比上一镜多知道了什么？如果没有新增信息，它可能只是占据时长。</description>
      <pubDate>Sat, 02 Jan 2027 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>影评怎样从具体镜头出发，避免只有剧情复述</title>
      <link>https://ohmygp.com/posts/batch-012-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-06-knowledge-1</guid>
      <description>一篇影评写满“感人、细腻、节奏很好”，读者仍然不知道你看见了什么。让AI帮忙时，若只输入片名和“写得深刻”，得到的文字也缺少可以核对的支点。更有用的做法是提供一小段观看记录，让判断从镜头里长出来。</description>
      <pubDate>Sat, 02 Jan 2027 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>AI辅助写诗，怎样用意象推进而不是堆漂亮词</title>
      <link>https://ohmygp.com/posts/batch-012-day-05-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-05-knowledge-4</guid>
      <description>让AI写诗时，“优美、深刻、有意境”很难执行。它可能交出月光、远方、星辰和灵魂，却没有一件事在诗里发生。更具体的任务是让一个意象在几行之间改变：先被看见，再被触碰，最后与说话者产生新的关系。这里练习自由体短诗，不把字数整齐当成格律合格。</description>
      <pubDate>Fri, 01 Jan 2027 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>影视推荐怎样写：先说明观众偏好和剧透范围</title>
      <link>https://ohmygp.com/posts/batch-012-day-05-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-05-knowledge-3</guid>
      <description>请AI推荐影视时，“最近太累，想看点轻松的”仍然不够具体。有人不能接受开放结局，有人只剩一小时，有人喜欢慢节奏却怕突然惊吓。把这些偏好写成条件，推荐才有可检查的依据。下面完全使用原创虚构片名和片单，练的是推荐写法，不是现实观影建议。</description>
      <pubDate>Fri, 01 Jan 2027 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>歌词提示词怎样描述节奏与意象，而不是照搬熟悉句子</title>
      <link>https://ohmygp.com/posts/batch-012-day-05-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-05-knowledge-2</guid>
      <description>让AI写“有画面、朗朗上口的歌词”，常见结果是一串情绪词。问题不一定出在词汇，而在输入没有告诉它：一行能放多少字、谁在说话、情绪靠什么动作发生。下面用一段原创的夜班返家小样，演示如何写歌词任务；所有候选都是教学推演，没有配曲或模型实测。</description>
      <pubDate>Fri, 01 Jan 2027 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>剧本杀线索怎样分配：把真相、发现路径和误导分开</title>
      <link>https://ohmygp.com/posts/batch-012-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-05-knowledge-1</guid>
      <description>写剧本杀时，给AI一句“悬疑、反转、逻辑严密”，容易得到热闹的秘密，却得不到玩家能验证的推理。更有用的任务是：先固定一件发生过的事，再安排玩家凭什么知道它。本例只讨论无暴力的失物谜题，以下人物、场所和线索均为原创教学设定。</description>
      <pubDate>Fri, 01 Jan 2027 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>科幻设定怎样保持一致：给AI一张规则与代价表</title>
      <link>https://ohmygp.com/posts/batch-012-day-04-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-04-knowledge-4</guid>
      <description>科幻故事开篇说装置只能用一次，高潮却突然连用三次，读者记住的就会是规则失效。给AI一句“保持世界观一致”还不够，最好提供可以逐场核算的规则与代价表。检查时也不要只找矛盾词，而要追问每个角色行动前后，世界状态发生了什么变化。</description>
      <pubDate>Thu, 31 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史人物解说先列史料卡，别用旁白口吻掩盖推测</title>
      <link>https://ohmygp.com/posts/batch-012-day-04-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-04-knowledge-3</guid>
      <description>历史人物解说最容易让人信服的，往往是那些细节：他在灯下沉思，突然决定改变一生。可如果材料只记下“次日出发”，前一夜的心理就不能凭语气补出来。准备解说时，先整理史料卡，再决定故事怎么讲，能够让悬念来自材料的空缺，而不是来自想象填补。</description>
      <pubDate>Thu, 31 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>知识分享文章怎么修改：先找读者卡住的推理步骤</title>
      <link>https://ohmygp.com/posts/batch-012-day-04-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-04-knowledge-2</guid>
      <description>知识文章读起来通顺，不代表读者能完成下一步。文章说“单位不同，先换算”，读者却不知道谁该乘、谁该除。修改这类文章，先别急着加比喻或把专业词换成大白话。给读者一道小任务，看他需要哪一步才能从已知走到答案。</description>
      <pubDate>Thu, 31 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>改写前先做信息清单，防止换了表达却丢了结论</title>
      <link>https://ohmygp.com/posts/batch-012-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-04-knowledge-1</guid>
      <description>“把这段话改得自然一点”，可能只换来一篇更好读、却不能照着做的文字。限定条件藏在长句里，一旦被删掉，“某些人可以选择”就变成了“所有人都应该做”。改写前值得先建一份信息清单，让表达可以变，判断依据保持可追踪。</description>
      <pubDate>Thu, 31 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>历史文章改写，怎样把史实、推测和文学加工分开</title>
      <link>https://ohmygp.com/posts/batch-012-day-03-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-03-knowledge-4</guid>
      <description>历史文章改得生动，最危险的地方常在一个小动作上：材料只写“修桥”，新文却写成“县令拍案决定连夜开工”。一个动作同时补进了人物情绪、决策过程和时间安排。检查改写时，不能只看人名年份有没有保留，还要问每个动词、因果词和心理描写从哪里来。</description>
      <pubDate>Wed, 30 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>民间故事写作怎样先设冲突，再安排转折</title>
      <link>https://ohmygp.com/posts/batch-012-day-03-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-03-knowledge-3</guid>
      <description>写民间故事时，最容易先想到神奇结尾，再临时安排一位高人解决难题。读者虽然见到了奇观，却不知道主人公为何必须走到这里。更稳妥的办法是先让人物面对两个不能同时满足的愿望，再安排一个改变理解的发现。向AI要故事时，也应该先交冲突和因果，再讨论文辞是否有古意。</description>
      <pubDate>Wed, 30 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>模仿名人语气时，怎样避免把新写的话当成名人原话</title>
      <link>https://ohmygp.com/posts/batch-012-day-03-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-03-knowledge-2</guid>
      <description>一句新写的话放进引号，再接上名人的名字，很容易被读者当成原话。即使正文里解释“只是模仿”，图片被单独转发后，那行解释也可能消失。用AI练习短句时，最好先把需求从“替某位名人说话”改成可观察的语言任务：短句还是长句，用具体动作还是抽象判断，先描述还是先劝告。</description>
      <pubDate>Wed, 30 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>借鉴文章结构，怎样把素材换成自己的真实问题</title>
      <link>https://ohmygp.com/posts/batch-012-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-03-knowledge-1</guid>
      <description>看到一篇文章写得顺，很容易把它的开头、例子和结尾一起搬进新主题。换几个名词后，表面像新文章，真正支撑观点的材料却仍属于原作者。向AI提出“照这个结构写”，首先要说明允许迁移的是哪一层：问题如何提出、证据怎样排列、行动怎样落地。人物遭遇、特殊比喻和独特结论，都不能自动跟随结构迁移。</description>
      <pubDate>Wed, 30 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>长文章排版怎样服务论证，而不是每句话都加粗</title>
      <link>https://ohmygp.com/posts/batch-012-day-02-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-02-knowledge-4</guid>
      <description>把长文拆成很多短行、给每句加粗、在段首放符号，未必能帮助读者理解。尤其是带有条件和例外的文章，装饰一多，读者容易只扫到醒目的结论，忽略结论成立的范围。可以把AI的任务改为“保留意思，呈现论证”，而不是笼统要求排得漂亮。</description>
      <pubDate>Tue, 29 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>让AI检查风险词，怎样避免把词表当成发布结论</title>
      <link>https://ohmygp.com/posts/batch-012-day-02-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-02-knowledge-3</guid>
      <description>给AI一张“风险词表”，让它把命中的词全部换掉，可能产生两种问题：本来在批评夸大承诺的句子被误删，而真正缺乏依据的承诺换了说法继续存在。更可操作的任务，是找出原句、解释风险来自哪里，再决定删去、补证还是保留。</description>
      <pubDate>Tue, 29 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>记忆宫殿辅助背课文，怎样把线索和原文逐项对照</title>
      <link>https://ohmygp.com/posts/batch-012-day-02-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-02-knowledge-2</guid>
      <description>用熟悉的路线给课文安排线索，看起来很有画面感。但如果把“看见线索”和“背对原文”混在一起，练到最后可能只记住一个有趣故事。本篇用一段原创短文演示怎样设计、试背和修订线索，不承诺某种记忆方法必然提高成绩。</description>
      <pubDate>Tue, 29 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>给AI一个链接不等于读过全文：先确认可用材料</title>
      <link>https://ohmygp.com/posts/batch-012-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-02-knowledge-1</guid>
      <description>你把链接交给AI，再收到一份条理清晰的总结，仍然不知道它依据的是正文、页面简介，还是你提供的标题。解决这个问题，先建立一张材料清单，再谈提炼观点。这里讨论任务怎样安排，不假定某个产品此刻能够打开网页。</description>
      <pubDate>Tue, 29 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>文章总结怎样保留反例和限制条件</title>
      <link>https://ohmygp.com/posts/batch-012-day-01-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-012-day-01-knowledge-4</guid>
      <description>总结最容易丢掉的，往往是“仅在”“不过”和“尚不能”。这些词看起来占篇幅，却决定读者能否把结论带去另一个场景。让AI压缩文章时，应当同时交付一份保留清单：主张、支撑、反例、限制、待回答问题，缺一项就可能改变原文立场。</description>
      <pubDate>Mon, 28 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>论文改写先修论证，别把同义词替换当成质量提升</title>
      <link>https://ohmygp.com/posts/batch-012-day-01-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-012-day-01-knowledge-3</guid>
      <description>论文段落读着别扭，有时不是句式单调，而是理由没有接上结论。把“说明”换成“表明”，把长句拆成短句，并不会补出缺失的一步。请AI改写前，先让它指出观察到了什么、凭什么解释、最后主张什么，才能判断该改文字还是改论证。</description>
      <pubDate>Mon, 28 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>文章润色怎样保住事实、数字和作者的语气</title>
      <link>https://ohmygp.com/posts/batch-012-day-01-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-012-day-01-knowledge-2</guid>
      <description>“帮我写得更生动”很容易让改稿走向另一个故事。原本只是一次未完成的尝试，可能变成充满自信的成功经验；原本含糊的感受，可能被改成确定的结论。对有个人口吻的文章，润色首先要建立一份不能越过的约定。</description>
      <pubDate>Mon, 28 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>让AI辅助审稿，先要求每条意见指向原文位置</title>
      <link>https://ohmygp.com/posts/batch-012-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-012-day-01-knowledge-1</guid>
      <description>拿到一句“论证不充分”，作者常常不知道该补哪一处。让AI辅助审稿时，可以先把任务缩小：找出文本内部的断点，引用原句，说明哪一步推论跨得太远。给它“资深审稿人”的身份，不能替代这些可检查的要求。</description>
      <pubDate>Mon, 28 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>让AI出复习题，怎样避免看着答案觉得自己会了</title>
      <link>https://ohmygp.com/posts/batch-011-day-10-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-10-knowledge-4</guid>
      <description>看到正确答案觉得熟悉，不等于关掉提示还能写出来。用AI整理复习题时，如果问题、选项、答案和讲解挤在同一屏，学习者很容易一边看一边补出答案。可以把出题与批改拆成两个阶段：第一阶段只交题，第二阶段拿真实作答核对。这里讨论的是练习设计，不保证某种方法能带来特定成绩。</description>
      <pubDate>Sun, 27 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>单词记忆提示词怎样写：先区分词义和使用场景</title>
      <link>https://ohmygp.com/posts/batch-011-day-10-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-10-knowledge-3</guid>
      <description>给AI一串单词，再要求每个词配一个夸张故事，很容易得到热闹却难以使用的材料。真正用词时，你需要知道的不是故事有多离奇，而是在这个句子里该选哪种意思、后面通常接什么信息。可以先限制学习范围，把单词做成“一个场景、一种词义、一个对照”的小卡，再按需要扩展。</description>
      <pubDate>Sun, 27 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>文献里的限定词不能丢：检查翻译是否扩大了结论</title>
      <link>https://ohmygp.com/posts/batch-011-day-10-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-10-knowledge-2</guid>
      <description>读英文材料时，最危险的偏差有时不是完全译错，而是把一个小范围观察译成普遍结论。原句里的 may、some 或 under 特定条件，看似只是几个短词，删掉以后却可能改变作者承诺的范围。与其只问“翻译准不准”，不如请AI把结论的边界逐项摊开，再由自己对照原文检查。</description>
      <pubDate>Sun, 27 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>英文长句看不懂，先拆主干再讨论译法</title>
      <link>https://ohmygp.com/posts/batch-011-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-10-knowledge-1</guid>
      <description>遇到英文长句，急着要求“翻译得通顺”，容易把结构上的疑问藏进顺口的中文。更稳妥的做法是先得到一张可以核对的关系图：主句说什么，哪部分修饰名词，哪部分给出条件。等关系清楚，再讨论中文语序。下面不用真实论文，只用一段作者原创的园艺课程材料练习。</description>
      <pubDate>Sun, 27 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>英文文献先读什么：让AI整理研究问题与证据位置</title>
      <link>https://ohmygp.com/posts/batch-011-day-09-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-09-knowledge-4</guid>
      <description>一上来要求AI“全面总结论文”，容易得到段段完整、却无法回到原文核对的介绍。更实用的起点，是给自己的阅读问题排顺序：我要找的变量是什么？作者如何观察它？结论依据哪张表、哪段话？先定位，再细读，才能知道摘要省略了什么，也能避免把中文解释当成英文原文的替代品。</description>
      <pubDate>Sat, 26 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>用AI整理法律咨询材料，先把事实、诉求和缺口分开</title>
      <link>https://ohmygp.com/posts/batch-011-day-09-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-09-knowledge-3</guid>
      <description>遇到交易纠纷，人容易把时间、证据、猜测和诉求混在一起。让AI帮忙时，可以把任务限制为整理个人手头的材料：发生了什么、自己想解决什么、还缺什么记录。把这些说明白，就能减少咨询时反复翻找截图的时间。下面只演示材料组织，不解释法律适用，也不判断任何人的权利义务。</description>
      <pubDate>Sat, 26 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>新闻稿整理时，怎样保留消息来源和不确定性</title>
      <link>https://ohmygp.com/posts/batch-011-day-09-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-09-knowledge-2</guid>
      <description>把几份材料交给AI合成新闻稿，常见问题不是漏了形容词，而是把计划写成完成、把单方说法写成共同确认。一句话原来有发言人、时间和范围，压缩之后只剩一个肯定结论，消息的性质就变了。可以先建立消息对应关系，再决定哪些内容进入标题和导语。</description>
      <pubDate>Sat, 26 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>节日活动文案怎样避免日期、对象和安排互相打架</title>
      <link>https://ohmygp.com/posts/batch-011-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-09-knowledge-1</guid>
      <description>一段活动介绍可以很热闹，却让读者不知道自己能否参加。让AI帮忙时，最有价值的任务是把散落的规则合成一条可执行的参与路径。节日名称只负责解释为什么办活动，不能代替具体日期，更不能自动推出放假、免费或人人有礼。</description>
      <pubDate>Sat, 26 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>长通知重新排版，先锁定不能改的原文信息</title>
      <link>https://ohmygp.com/posts/batch-011-day-08-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-08-knowledge-4</guid>
      <description>一份长通知重新分段后，日期、地点往往更醒目，例外却可能消失。尤其是“仅限”“不含”“另行通知”这些短词，删掉后文章读着更顺，办事规则却变了。请AI整理前，应先建立不能改的信息清单，再明确允许调整的是呈现方式，而不是通知本身的决定。</description>
      <pubDate>Fri, 25 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>教案提示词怎样写：让目标、活动和检查对应起来</title>
      <link>https://ohmygp.com/posts/batch-011-day-08-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-08-knowledge-3</guid>
      <description>用AI写教案，容易得到热闹的环节：看图、讨论、分组展示、教师总结。但如果目标是“根据条件筛选”，课堂却一直在听讲，最后只问“听懂了吗”，目标、活动和检查就没有接上。提示词需要先把学习结果改成可观察的动作，再围绕这个动作安排练习。</description>
      <pubDate>Fri, 25 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>PPT资料太多，怎样压缩成支持结论的证据</title>
      <link>https://ohmygp.com/posts/batch-011-day-08-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-08-knowledge-2</guid>
      <description>准备PPT时，最难的往往不是字太多，而是材料之间没有分工。把每一段都缩短，仍然可能得到一页塞满短句的幻灯片。更有效的做法是给每条材料安排身份：它是直接证据、解释背景、限制条件，还是暂时用不上。AI可以协助分类，人必须检查结论有没有跨过证据的边界。</description>
      <pubDate>Fri, 25 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>让AI生成PPT提纲，先定每页要回答的问题</title>
      <link>https://ohmygp.com/posts/batch-011-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-08-knowledge-1</guid>
      <description>把一段资料交给AI，要求“做成六页PPT”，很容易得到背景、现状、问题、方案、总结这样的目录。目录看似完整，听众却仍不知道为什么要看下一页。做提纲更有用的起点，是把每页写成一个听众真的会问的问题，再给它安排回答和证据。</description>
      <pubDate>Fri, 25 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从会议纪要到执行清单，任务负责人不能靠AI猜</title>
      <link>https://ohmygp.com/posts/batch-011-day-07-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-07-knowledge-4</guid>
      <description>讨论里有人说得多，不代表他愿意承担后续工作；谁提出问题，也不一定由谁解决。AI可以帮忙拆任务，但如果为了填满表格而猜负责人，清单越整齐，交接风险可能越大。更实用的方式是把已承诺任务与待分配任务分开，再由团队确认缺口。</description>
      <pubDate>Thu, 24 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>会议纪要怎样区分决定、建议和待确认事项</title>
      <link>https://ohmygp.com/posts/batch-011-day-07-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-07-knowledge-3</guid>
      <description>整理讨论记录时，最需要保留的并非每一个语气词，而是话语的状态：“建议换方案”“如果样品合格就换”“已经同意换”指向三种不同结果。让AI压缩内容之前，先要求它区分决定、建议和待确认事项，才能避免把讨论写成承诺。</description>
      <pubDate>Thu, 24 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>AI写通知，先把对象、动作、期限补齐</title>
      <link>https://ohmygp.com/posts/batch-011-day-07-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-07-knowledge-2</guid>
      <description>一句“请相关人员及时办理”，看起来简洁，却把判断负担留给了读者：谁算相关人员？办理什么？什么时候算及时？用AI写通知，可以先不谈文采，先补一张对象、动作、期限表，再组织正文。这样尤其适合预约变更、材料补交和活动安排等日常通知。</description>
      <pubDate>Thu, 24 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>荐书稿怎样交代阅读门槛：把章节示例和读者基础对上</title>
      <link>https://ohmygp.com/posts/batch-011-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-07-knowledge-1</guid>
      <description>荐书稿最容易省掉的，恰好是读者最需要的判断：这本书要求我先会什么？每天读十分钟能不能跟上？如果只想解决一个小问题，应该从哪里开始？让AI把介绍写得热情并不难，难的是让推荐建立在可检查的章节材料上。</description>
      <pubDate>Thu, 24 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>公众号长文怎样安排案例，避免观点和例子互相脱节</title>
      <link>https://ohmygp.com/posts/batch-011-day-06-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-06-knowledge-4</guid>
      <description>长文里塞进几个故事，并不会自动增加说服力。观点谈如何减少交接误解，案例却只描写一个人多么认真；读者记住了人物，仍不知道该怎么做。安排案例，先要写清它负责说明的那一个判断，再决定需要哪些细节。</description>
      <pubDate>Wed, 23 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>文案结尾怎样邀请行动：先判断读者准备好了哪一步</title>
      <link>https://ohmygp.com/posts/batch-011-day-06-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-06-knowledge-3</guid>
      <description>文案写到结尾，常会突然冒出一句“赶快报名”。前面还在解释是什么，后面却要求读者立刻投入时间、提交资料。动作本身很清楚，读者却缺少决定所需的信息。写行动邀请，可以先问：读完这一段的人，已经知道多少，还差哪一个问题没解决？</description>
      <pubDate>Wed, 23 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>拆解一篇笔记的结构，怎样避免照搬它的故事</title>
      <link>https://ohmygp.com/posts/batch-011-day-06-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-06-knowledge-2</guid>
      <description>读到一篇顺畅的笔记，很容易想让AI“照这个感觉写”。问题在于，感觉里常常混着原作者的经历、场景转折和独特比喻。只替换名词，作品仍可能沿着同一条故事轨道走。更稳妥的拆法，是先记录每段承担什么任务，再把原文收起来，用自己的材料重新决定顺序。</description>
      <pubDate>Wed, 23 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>AI应用教程怎样写：把操作结果和适用条件放在一起</title>
      <link>https://ohmygp.com/posts/batch-011-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-06-knowledge-1</guid>
      <description>写AI应用教程，最容易漏掉的不是提示词，而是提示词周围的条件。只说“把材料发给AI，它就会整理”，读者遇到相反结论、缺字段或格式变化时，仍然不知道怎么办。教程要交付的是一条可检查的路径：我给了什么，期待拿到什么，哪些情况必须停下来补材料。</description>
      <pubDate>Wed, 23 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>聊天记录整理成清单，怎样避免把讨论写成决定</title>
      <link>https://ohmygp.com/posts/batch-011-day-05-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-05-knowledge-4</guid>
      <description>一段聊天整理成待办，最危险的词往往不是错别字，而是“已确定”。有人说“可以考虑”，有人说“我看看”，最后清单却写成“周五完成”。把聊天变得整齐，需要同时保住发言人、条件和确认状态，否则清单越好看，误会越容易被当作事实执行。</description>
      <pubDate>Tue, 22 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>公众号开头怎么写：把读者困惑接到文章承诺</title>
      <link>https://ohmygp.com/posts/batch-011-day-05-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-05-knowledge-3</guid>
      <description>公众号文章开头卡住时，很多人会让AI“写得更有共鸣”。结果可能是人人都适用的焦虑，接一句“看完彻底改变”。开头确实变热闹了，读者却不知道接下来能得到什么。更好用的做法，是先找出一个具体的卡点，再把正文真正能完成的动作写成承诺。</description>
      <pubDate>Tue, 22 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>播客文字稿怎么整理：保留观点归属和时间位置</title>
      <link>https://ohmygp.com/posts/batch-011-day-05-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-05-knowledge-2</guid>
      <description>播客文字稿整理得很顺，有时恰恰值得多看一眼。主持人的追问可能被改成嘉宾的主张，嘉宾后半句的转折可能被拿掉，假设也可能变成结论。整理任务的重点，是让读者快速找到内容，同时还能回到原话判断它成立的条件。</description>
      <pubDate>Tue, 22 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>种草文案先列证据，别让AI虚构使用体验</title>
      <link>https://ohmygp.com/posts/batch-011-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-05-knowledge-1</guid>
      <description>“帮我写得像亲自用过”很容易让种草文案走偏。没有使用记录时，细腻的手感、连续使用的变化、朋友的称赞，都只是缺少凭据的情节。想让文案有吸引力，可以从读者的选择困难入手，把已有信息解释清楚，而不是替自己补出一段体验。</description>
      <pubDate>Tue, 22 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>长文章改口播，先保留结论成立的条件</title>
      <link>https://ohmygp.com/posts/batch-011-day-04-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-04-knowledge-4</guid>
      <description>“帮我压成一段口播，越短越好”，会把改写目标推向字数。但一句话的关键条件往往最不起眼：如果、在某范围内、暂时、还需要检查。删掉这些词，口播可能更干脆，观点却已经变成另一回事。</description>
      <pubDate>Mon, 21 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>评论区回复怎样接住问题，而不是统一求点赞</title>
      <link>https://ohmygp.com/posts/batch-011-day-04-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-04-knowledge-3</guid>
      <description>把整篇文章交给AI，要求“生成十条互动金句”，常能得到一批热情回复：“你说得太对了”“欢迎分享你的故事”。可读者问的是尺寸、步骤或错误，这些句子没有解决问题。回复的价值首先在于接住具体意图，互动只是可能的后续。</description>
      <pubDate>Mon, 21 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>发布时间让AI怎么帮忙：从猜黄金时段改为记录实验</title>
      <link>https://ohmygp.com/posts/batch-011-day-04-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-04-knowledge-2</guid>
      <description>问AI“我的内容什么时候发最好”，很容易拿到一张精确到分钟的表。分钟越具体，理由似乎越可信：上班前会刷手机，午休适合阅读，晚上适合互动。但如果没有你的读者记录和实际发布资料，这些只是可能的场景，无法直接决定哪个时间更适合你。</description>
      <pubDate>Mon, 21 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>短视频脚本提示词里，为什么要分别写画面和旁白</title>
      <link>https://ohmygp.com/posts/batch-011-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-04-knowledge-1</guid>
      <description>一份短视频脚本如果只有连贯的口播，开拍时常会遇到问题：这句话到底拍什么，动作做到哪一步，观众能不能看到你说的差别？让AI同时写画面与旁白，不是多加一列表格，而是提前检查讲解有没有可以呈现的依据。</description>
      <pubDate>Mon, 21 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>选题关键词怎么组合：用读者问题筛掉空泛题目</title>
      <link>https://ohmygp.com/posts/batch-011-day-03-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-03-knowledge-4</guid>
      <description>“租房、收纳、新手、低成本”四个词，排列一下就能生成很多题目。但题目多不等于问题清楚。“租房新手必学的低成本收纳智慧”，读者仍不知道会学到什么，作者也不知道该准备哪一张图。让AI组合词之前，先给每类词一个用途。</description>
      <pubDate>Sun, 20 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>治愈文案不靠堆金句：给AI一条情绪变化线</title>
      <link>https://ohmygp.com/posts/batch-011-day-03-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-03-knowledge-3</guid>
      <description>“愿你被世界温柔以待”可以表达祝福，但把祝福连成整篇文字，读者未必知道它在回应哪种处境。让AI写温柔的文案时，可以先提供一个微小的变化，允许人物只松一口气，不必在结尾突然想通全部人生。</description>
      <pubDate>Sun, 20 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>微头条的十种框架，怎样按材料选择而非随机套用</title>
      <link>https://ohmygp.com/posts/batch-011-day-03-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-03-knowledge-2</guid>
      <description>面对一排写作框架，最容易做的事是随机选一个，再让AI把各个栏目填满。故事式需要情节，数据式需要数字，专家式需要可靠观点。如果手头只有一份操作笔记，强行填成故事加统计，稿子看似丰富，新增内容却可能完全没有根据。</description>
      <pubDate>Sun, 20 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>情绪文案怎样避免空话：把感受落到具体动作</title>
      <link>https://ohmygp.com/posts/batch-011-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-03-knowledge-1</guid>
      <description>让AI写“有共鸣、有感染力”的文字，常见候选是“生活不易，但总有人为你点亮一盏灯”。这类句子表达了态度，却没有告诉读者发生了什么。若每篇都能放同一句结尾，它就很难承载这一次特别的感受。</description>
      <pubDate>Sun, 20 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>热点写作先做事实卡，别让AI补出现场细节</title>
      <link>https://ohmygp.com/posts/batch-011-day-02-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-02-knowledge-4</guid>
      <description>遇到大家都在讨论的事件，写作者往往先想一个抓人的开头：是谁惊讶地站起来，现场怎样沉默，结尾又如何反转。可这些细节若没有材料，写得再生动也是新增事实。让AI按完整故事输出之前，先决定它究竟拿到了哪些证据。</description>
      <pubDate>Sat, 19 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>小红书经验帖怎样写：先补齐使用条件</title>
      <link>https://ohmygp.com/posts/batch-011-day-02-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-02-knowledge-3</guid>
      <description>“我这样整理后，再也没乱过”，听起来像一条完整经验，却缺少最重要的信息：整理什么，谁在使用，过了多久，什么时候又会失效。把一段简短感想交给AI扩写，若没有条件约束，局部经历很容易变成人人适用的建议。</description>
      <pubDate>Sat, 19 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>个人IP不是虚构人设：让AI整理你的真实经历</title>
      <link>https://ohmygp.com/posts/batch-011-day-02-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-02-knowledge-2</guid>
      <description>“帮我打造一个有故事的个人IP”，经常会把写作方向带向戏剧化转折。普通经历似乎不够完整，非要加上一次失败、一个顿悟和一场逆袭。但身份介绍的任务，是让别人知道你做过什么、愿意分享什么；叙事完整不能以改写人生为代价。</description>
      <pubDate>Sat, 19 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>同一段文案改两版，怎样让比较有依据</title>
      <link>https://ohmygp.com/posts/batch-011-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-02-knowledge-1</guid>
      <description>让AI“写一版温柔的，再写一版有冲击力的”，容易得到两个风格鲜明的版本。但如果其中一版增加优惠，另一版更换读者，最后选中的究竟是语气还是新条件？比较之前，把不允许变的部分锁住，才能说清为什么保留某个改动。</description>
      <pubDate>Sat, 19 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>拆解对标账号，先把观察记录和猜测分开</title>
      <link>https://ohmygp.com/posts/batch-011-day-01-knowledge-4</link>
      <guid>https://ohmygp.com/posts/batch-011-day-01-knowledge-4</guid>
      <description>把一个账号链接发给AI，再问“它为什么做得好”，很容易得到一份完整得令人放心的分析：定位清晰、发布时间精准、内容击中痛点。问题在于，如果没有读到具体作品，也没有后台记录，这些判断到底依据什么？一句通顺的原因分析，不等于已经取得了因果证据。</description>
      <pubDate>Fri, 18 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>标题有情绪，也要有事实：给AI划清夸张的边界</title>
      <link>https://ohmygp.com/posts/batch-011-day-01-knowledge-3</link>
      <guid>https://ohmygp.com/posts/batch-011-day-01-knowledge-3</guid>
      <description>一篇文章讲“如何把会议讨论整理成待办”，交给AI生成标题，可能变成“学会这一招，工作效率翻倍”。这句话看起来与效率有关，却已经离开了正文。正文提供整理方法，没有测量效率，更没有证明所有人都能得到同样收益。标题的情绪不能填补证据的空白。</description>
      <pubDate>Fri, 18 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>给AI一份真实书摘，怎样写出不编情节的荐书稿</title>
      <link>https://ohmygp.com/posts/batch-011-day-01-knowledge-2</link>
      <guid>https://ohmygp.com/posts/batch-011-day-01-knowledge-2</guid>
      <description>“把这本书写得让人想读”，很容易变成一个没有边界的任务。模型可能补出感人的人物故事、好记的金句，还顺手替作者概括一个他未必表达过的主张。读起来越顺，越需要追问：哪些内容确实来自书，哪些只是写作者为了介绍方便补上的连接？</description>
      <pubDate>Fri, 18 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>朋友圈软广先写给谁看：把产品资料变成一条具体消息</title>
      <link>https://ohmygp.com/posts/batch-011-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-011-day-01-knowledge-1</guid>
      <description>“帮我写一条有吸引力的朋友圈软广”，看起来已经提出任务，实际上还留着很大的空白。写给谁，读者为什么此刻需要它，有哪些事实可以说，写完希望对方做什么，都没有说明。模型可以补出一段热闹的话，却也容易把这些空白补成并不存在的体验。</description>
      <pubDate>Fri, 18 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 BLEU、ROUGE 面试题延伸：答案更像参考，就一定更对吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-10-knowledge-1</guid>
      <description>一份答案几乎照着参考写，仍然可能把“七天”改成“七个月”。另一份换了说法，却准确保留了含义。如果只按词面重合挑选答案，两个结果可能被排反。文本指标能提供信号，事实判断还需要回到明确的依据。</description>
      <pubDate>Thu, 17 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：逻辑地址怎样通过页表变成物理地址</title>
      <link>https://ohmygp.com/posts/batch-010-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-10-interview-3</guid>
      <description>逻辑地址到物理地址的题，最容易错在两处：把页号当成字节地址，或者把十六进制字符串直接从某一位切开。正确做法是先固定页大小，再把地址拆成页号和页内偏移。映射改变的是所在页框，页里的位置并不随之移动。</description>
      <pubDate>Thu, 17 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MongoDB 的 profiler 能告诉你什么，不能告诉你什么</title>
      <link>https://ohmygp.com/posts/batch-010-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-10-interview-2</guid>
      <description>数据库变慢，打开 profiler 能不能立刻知道该加哪个索引？不一定。分析器能记录操作的相关执行信息，但记录范围受配置影响，字段也需要结合查询与执行计划理解。先问它采了什么、没采什么，再讨论某条慢操作意味着什么。</description>
      <pubDate>Thu, 17 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：BLEU 和 ROUGE 为什么不能互相替代</title>
      <link>https://ohmygp.com/posts/batch-010-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-10-interview-1</guid>
      <description>生成文本评测里经常出现 BLEU 与 ROUGE，但把它们简称为“准确率”和“召回率”，很容易丢掉重要限定。它们衡量的是候选与参考文本之间某种形式的重合，不直接判断答案是否真实，也不是同一个数字换一个名字。</description>
      <pubDate>Thu, 17 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从测试集泄漏面试题延伸：相似样本怎样跨集合去重</title>
      <link>https://ohmygp.com/posts/batch-010-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-09-knowledge-1</guid>
      <description>把一份文档切成多个段落，然后随机分成训练集和测试集，文件名不同，内容就独立了吗？如果测试段落的近似版本、相邻答案片段或原文改写已经在训练里，按行随机分配仍然会留下很强的重叠。更可靠的入口，是先定义哪些记录不能跨集合，再分配组。</description>
      <pubDate>Wed, 16 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数组名加一与数组地址加一，为什么走得不一样</title>
      <link>https://ohmygp.com/posts/batch-010-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-09-interview-3</guid>
      <description>数组名 a 和数组地址 &amp;a 打印出来似乎一样，为什么分别加一却走了不同距离？答案不是“编译器随便多跳了几个字节”，而是它们在表达式中的类型不同。指针运算必须根据所指对象解释，地址外观看起来相同并不能代替类型规则。</description>
      <pubDate>Wed, 16 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：硬币数量有限，凑出目标金额还能一直贪心吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-09-interview-2</guid>
      <description>面额大的硬币先拿，剩下金额再继续，这个办法什么时候正确？先把题意说完整：本文讨论任意正整数面额、每种数量有限、恰好凑出目标金额，并最小化硬币总数。若题目额外给定特殊面额结构，可以另行证明更简单策略，不能把一般情况与特例混用。</description>
      <pubDate>Wed, 16 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：测试题混进训练集，大模型评测还可信吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-09-interview-1</guid>
      <description>一个模型在测试题上答得很漂亮，是学会了解题能力，还是曾经见过原题？对使用大规模公开资料训练的模型，这个疑问不能靠一句“测试集是独立文件”解决。独立文件可能仍包含相同段落、改写题目或直接暴露答案的解析。</description>
      <pubDate>Wed, 16 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从优势函数面试题延伸：结束和超时，为什么要分开记录</title>
      <link>https://ohmygp.com/posts/batch-010-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-08-knowledge-1</guid>
      <description>训练记录里只有一个 done 字段，看上去很省事。但一次交互结束，可能是任务真的完成，也可能只是采样时间用完。如果两种情况都把后续价值直接当成零，价值目标就可能在同一个状态上产生完全不同的含义。</description>
      <pubDate>Tue, 15 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx 会合并 URL 双斜线吗，代理时又会发生什么</title>
      <link>https://ohmygp.com/posts/batch-010-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-08-interview-3</guid>
      <description>客户端发送 /api//v1，后端收到的却可能是 /v1，也可能仍是 /api//v1。问题不只是 Nginx 会不会合并斜线，而是匹配、重写和转发分别使用了哪一种路径表示。只看一条配置里有没有多写一个斜线，很容易把几个阶段混在一起。</description>
      <pubDate>Tue, 15 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：栈耗尽、堆耗尽和越界写，是同一种溢出吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-08-interview-2</guid>
      <description>“程序发生内存溢出”，到底是递归层数太深、动态分配失败，还是向数组外面写了数据？这三种情况经常被放进同一个词里，却分别涉及调用资源、分配资源和访问合法性。先把问题说准确，才能找到对应的检查方法。</description>
      <pubDate>Tue, 15 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：优势函数为什么要从奖励里减掉一个基线</title>
      <link>https://ohmygp.com/posts/batch-010-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-08-interview-1</guid>
      <description>一个动作拿到正奖励，就一定应该提高它的概率吗？如果在当前状态下，其他选择通常能带来更高回报，这个动作仍可能相对较差。优势函数提供的正是这种比较：不只问结果有多少，还问它比当前策略在这个状态的通常水平好多少。</description>
      <pubDate>Tue, 15 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 PPO 面试题延伸：裁剪比率和 KL 约束各管什么</title>
      <link>https://ohmygp.com/posts/batch-010-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-07-knowledge-1</guid>
      <description>PPO 的比率裁剪和 RLHF 中的参考模型 KL 惩罚，经常一起出现，于是被误读成两个名字不同的同一约束。它们比较的对象、进入目标的方式和能提供的保证都不同。把这些分开，才能解释为什么“已经裁剪”之后仍然需要监测策略偏移。</description>
      <pubDate>Mon, 14 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Spring MVC 怎样把一次请求送到 Controller</title>
      <link>https://ohmygp.com/posts/batch-010-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-07-interview-3</guid>
      <description>一个请求到了 Controller 方法之前，究竟经过哪些步骤？如果只背 DispatcherServlet、HandlerMapping、HandlerAdapter、ViewResolver，容易误以为所有返回值最后都要渲染页面。</description>
      <pubDate>Mon, 14 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：相邻交换几次，才能把同一个字母聚到一起</title>
      <link>https://ohmygp.com/posts/batch-010-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-07-interview-2</guid>
      <description>字符串里几个相同字母隔着其他字符，最多交换 m 次相邻字符，能把多长的一段相同字母聚在一起？直接搜索所有交换会迅速膨胀。更好的入口是先忘掉其他字符的身份，只记录目标字符出现在哪里。</description>
      <pubDate>Mon, 14 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RLHF 里的 PPO，一轮更新到底做了什么</title>
      <link>https://ohmygp.com/posts/batch-010-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-07-interview-1</guid>
      <description>RLHF 流程里经常出现 PPO，但如果只背“采样、打分、更新”，仍然说不清为什么要保存旧概率、价值模型做什么，以及参考模型为何不能简单等同于旧策略。理解一轮更新，先把数据从哪里来、每个信号给谁使用串起来。</description>
      <pubDate>Mon, 14 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 GraphRAG 面试题延伸：同名实体怎样合并才不会串事实</title>
      <link>https://ohmygp.com/posts/batch-010-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-06-knowledge-1</guid>
      <description>两份材料都提到“星河项目”，建图时是不是应该合成一个节点？如果它们分别属于两个独立空间，合并后可能把甲空间的负责人连到乙空间的截止时间上。名字看起来一致，事实却被错误拼接；图检索再流畅，也只是在一张有误的图上推理。</description>
      <pubDate>Sun, 13 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：构造函数里调用虚函数，会进入派生类吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-06-interview-3</guid>
      <description>基类构造函数调用一个虚函数，创建的明明是派生类对象，为什么没有进入派生类覆盖版本？这并不意味着虚函数失效，而是构造和析构期间，语言对当前对象的虚派发有专门规则。先看执行处于哪一阶段，再判断调用目标。</description>
      <pubDate>Sun, 13 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：五台打印机，每个进程要两台，怎样判断死锁风险</title>
      <link>https://ohmygp.com/posts/batch-010-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-06-interview-2</guid>
      <description>五台相同打印机，每个进程最多需要两台，而且一次只申请一台。最多允许几个进程竞争，才能在题设条件下保证不出现资源死锁？答案不能只靠“五除以二”。这道题考的是最坏分配状态下，是否总有一个进程能够继续完成。</description>
      <pubDate>Sun, 13 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：GraphRAG 为什么不只是把向量库换成知识图谱</title>
      <link>https://ohmygp.com/posts/batch-010-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-06-interview-1</guid>
      <description>把 RAG 里的向量库换成图数据库，就算 GraphRAG 吗？这个理解漏掉了更重要的环节：图是怎样从资料中建立的，图上信息怎样组织成可用上下文，以及问题为什么需要关系或全局概览。这里以原始 GraphRAG 研究及其开源项目思路为例，不把所有图检索方案都定义成同一个实现。</description>
      <pubDate>Sun, 13 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 RAG-Fusion 面试题延伸：多条查询怎样避免问成同一个问题</title>
      <link>https://ohmygp.com/posts/batch-010-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-05-knowledge-1</guid>
      <description>给同一个问题生成五条搜索语句，不代表获得了五种视角。它们可能只是同义改写，仍然全在寻找同一类内容。多查询的价值，应该体现在原问题所需证据是否更完整，而不是日志里出现了多少次检索调用。</description>
      <pubDate>Sat, 12 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx stub_status 里的四种连接数怎么看</title>
      <link>https://ohmygp.com/posts/batch-010-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-05-interview-3</guid>
      <description>看到 Nginx 状态页显示几十个连接，能不能说当前每秒正在处理几十个请求？不能。连接、请求和速率是不同对象，瞬时状态与启动以来的累计值也不能混算。stubstatus 的字段不多，真正的考点是每一项究竟在数什么。</description>
      <pubDate>Sat, 12 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：二叉树有多少节点，为什么叶子数等于双子节点数加一</title>
      <link>https://ohmygp.com/posts/batch-010-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-05-interview-2</guid>
      <description>一棵二叉树有九个叶节点、四个只有一个孩子的节点，能不能算出总节点数？这类题不需要猜树的形状，关键是把“节点分几类”和“树一共有几条边”联系起来。先说明这里的二叉树，每个节点最多两个孩子，并不是每个非叶节点都必须有两个孩子。</description>
      <pubDate>Sat, 12 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RAG-Fusion 怎样把多次查询的排名合在一起</title>
      <link>https://ohmygp.com/posts/batch-010-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-05-interview-1</guid>
      <description>同一个问题换几个表达再检索，结果未必能直接拼起来。不同列表有自己的顺序，分数尺度也可能不同。RAG-Fusion 把多查询召回与排名融合连接起来，其中常见的 RRF 规则不比较原始分数，而是根据文档在各列表里的名次累计贡献。</description>
      <pubDate>Sat, 12 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 Rerank 面试题延伸：有限预算下怎样分配候选名额</title>
      <link>https://ohmygp.com/posts/batch-010-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-04-knowledge-1</guid>
      <description>重排模型只允许处理一小批候选时，最简单的方案是把初排分数最高的若干条塞进去。但如果前面的条目都来自同一份文档的相邻切块，有限预算可能被相似内容占满，另一条检索路径找到的独立证据根本没有机会参与比较。</description>
      <pubDate>Fri, 11 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：ZooKeeper 的命名服务怎样给资源一个稳定入口</title>
      <link>https://ohmygp.com/posts/batch-010-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-04-interview-3</guid>
      <description>分布式环境里，客户端怎样知道某个资源现在在哪里？一种办法是提前约定一个稳定名字，再让这个名字指向可读取的定位信息。ZooKeeper 的层次化命名空间可以承担这种协调入口，但不能因此把它理解成任意规模的文件系统或万能业务主键库。</description>
      <pubDate>Fri, 11 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：const int* 和 int* const，究竟谁不能改</title>
      <link>https://ohmygp.com/posts/batch-010-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-04-interview-2</guid>
      <description>const int p 和 int const p 只差一个位置，却限制了不同的修改动作。最容易犯的错误，是把“不能通过这个指针改对象”，听成“这个对象在任何地方都不能变”；或者把指针本身固定，误认为它指向的值也固定。</description>
      <pubDate>Fri, 11 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Rerank 为什么要在召回后再排一次</title>
      <link>https://ohmygp.com/posts/batch-010-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-04-interview-1</guid>
      <description>搜索结果主题都对，却把真正能回答问题的段落排在后面，这时可以考虑 Rerank。但它不是一个放在检索后面就能自动修复所有错误的按钮。理解它，先要区分两个任务：从大量文档中找出候选，以及在已有候选里做更细的比较。</description>
      <pubDate>Fri, 11 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 HyDE 面试题延伸：查询改写怎样避免把问题带偏</title>
      <link>https://ohmygp.com/posts/batch-010-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-03-knowledge-1</guid>
      <description>检索问题改写得更完整，结果却更不符合用户要求，这并不罕见。原因可能不是向量模型太弱，而是改写时悄悄更换了问题。尤其当生成内容带着合理的背景补充时，新增细节很容易被后续流程误当成用户已经确认的条件。</description>
      <pubDate>Thu, 10 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Spring Bean 从定义到可用，经历了哪些步骤</title>
      <link>https://ohmygp.com/posts/batch-010-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-03-interview-3</guid>
      <description>Spring 帮你创建对象，但一个 Bean 从配置出现到能够被业务使用，远不止调用一次构造器。答生命周期题，最容易出错的是把“修改定义”“创建实例”和“初始化后包装”混成同一段流程，最后说不清扩展点到底作用于谁。</description>
      <pubDate>Thu, 10 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：三个警察和三个囚徒过河，怎样用 BFS 找最短方案</title>
      <link>https://ohmygp.com/posts/batch-010-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-03-interview-2</guid>
      <description>三个警察和三个囚徒过河，凭直觉往返安排，很容易漏掉另一岸的约束。把它改写成状态图后，问题会清楚得多：什么叫一个局面，哪些动作能产生新局面，以及怎样知道找到的是最少渡河次数。</description>
      <pubDate>Thu, 10 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：HyDE 为什么先编一篇文档再去检索</title>
      <link>https://ohmygp.com/posts/batch-010-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-03-interview-1</guid>
      <description>一个问题只有几个字，知识库里的段落却往往包含背景、术语和完整解释。直接把两者编码成向量，表达形式的差异有时会妨碍检索。HyDE 给出的思路是：先根据问题生成一篇假设性文档，再用它的向量去寻找真实资料。</description>
      <pubDate>Thu, 10 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从梯度检查点面试题延伸：训练恢复为什么不能只保存权重</title>
      <link>https://ohmygp.com/posts/batch-010-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-02-knowledge-1</guid>
      <description>训练进程退出后，把模型权重加载回来，为什么接下来的损失曲线仍可能和原来不同？因为训练不是一个只依赖当前参数的函数。优化器记住了过去的更新，调度器记录了进度，数据加载和随机数也有自己的位置。恢复文件能被读取，与训练真正接着原轨迹继续，是两种不同承诺。</description>
      <pubDate>Wed, 09 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx 的 server_name 写下划线，就能拒绝陌生域名吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-02-interview-3</guid>
      <description>在配置里写上 servername ，是不是就能拦住所有陌生域名？很多误解来自把一个约定俗成的占位名字，当成了带特殊语义的通配符。真正决定请求落到哪里的，是监听地址、端口、名称匹配，以及这些条件下的默认服务器。</description>
      <pubDate>Wed, 09 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：全局变量和局部变量一定分别住在堆和栈吗</title>
      <link>https://ohmygp.com/posts/batch-010-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-02-interview-2</guid>
      <description>“全局变量在堆，局部变量在栈。”这句话同时混淆了几件事：名字能在哪里被访问，对象活多久，以及某个编译器最后怎样安排存储。要回答 C 语境里的这道题，先把三个维度拆开，才不会被一个局部静态变量轻易推翻。</description>
      <pubDate>Wed, 09 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：梯度检查点为什么能用计算换显存</title>
      <link>https://ohmygp.com/posts/batch-010-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-02-interview-1</guid>
      <description>训练时显存不够，除了减小批次，还可能开启梯度检查点。但它不是把模型偷偷压缩了，也不是定期把训练进度存到磁盘。这里的检查点指激活保存策略：前向少保存一些中间张量，反向求导需要它们时，再把相应前向片段重新执行。</description>
      <pubDate>Wed, 09 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 RMSNorm 面试题延伸：平方求和为什么也会溢出</title>
      <link>https://ohmygp.com/posts/batch-010-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-01-knowledge-1</guid>
      <description>读到 RMSNorm 的公式，很容易把实现写成“逐个平方、求平均、开根、再相除”。对普通数字，这条路径没有问题。但把输入换成两个极大的有限数，平方可能先变成无穷，最后得到的归一化结果反而接近零。数学答案并没有变成零，坏掉的是中间计算。</description>
      <pubDate>Tue, 08 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：public、protected、默认和 private 到底管到哪</title>
      <link>https://ohmygp.com/posts/batch-010-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-010-day-01-interview-3</guid>
      <description>“public 谁都能访问，protected 子类能访问，private 只有自己能访问。”这张口诀表能帮助入门，却很容易在一道跨包继承题上失效。Java 的访问控制不只检查有没有继承关系，还检查访问发生在哪里、对象表达式的类型是什么，以及声明所在的类型本身是否可访问。</description>
      <pubDate>Tue, 08 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：不用字符串，怎样判断一个整数是回文数</title>
      <link>https://ohmygp.com/posts/batch-010-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-010-day-01-interview-2</guid>
      <description>判断 12321 是不是回文，转成字符串再反转当然直观。但如果题目限制不能使用字符串，真正的考点就变成了：怎样取出末位、怎样缩短原数，以及怎样避免为了检查一个数，先把整个数反转到溢出。</description>
      <pubDate>Tue, 08 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RMSNorm 比 LayerNorm 少做了什么</title>
      <link>https://ohmygp.com/posts/batch-010-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-010-day-01-interview-1</guid>
      <description>一句“RMSNorm 是简化版 LayerNorm”，容易让人以为两者只是少写一行代码。真正要问的是：它省掉了什么统计量，因此失去了什么性质，又保留了什么性质？把这三件事说清，比背一个速度结论更有用。</description>
      <pubDate>Tue, 08 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 Agent 记忆面试题延伸：一个 Agent 不够用时，多 Agent 怎么协作</title>
      <link>https://ohmygp.com/posts/batch-009-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-10-knowledge-1</guid>
      <description>这个系列今天的真题解析讲单 Agent 的短期与长期记忆——一个 Agent 怎么记住事情。这篇延伸讲另一个维度：一个脑子装不下、管不过来时，怎么组织多个 Agent 协作。</description>
      <pubDate>Mon, 07 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Agent 的短期记忆和长期记忆怎么实现</title>
      <link>https://ohmygp.com/posts/batch-009-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-10-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「Agent 的记忆机制怎么设计」考的不是背「短期加长期」，而是说清两层记忆怎么落地：短期怎么在有限窗口里腾挪，长期的写入、检索、遗忘怎么接到主循环上。</description>
      <pubDate>Mon, 07 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：ISBN 的最后一位识别码是怎么算出来的</title>
      <link>https://ohmygp.com/posts/batch-009-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-10-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试题集整理，与任何公司的当前招聘无关。题面很生活化：一本正式出版的图书都有一个 ISBN 号码，前 9 位是数字，第 10 位是识别码；</description>
      <pubDate>Mon, 07 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：prefix Decoder、causal Decoder、Encoder-Decoder 有啥区别</title>
      <link>https://ohmygp.com/posts/batch-009-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-10-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「prefix Decoder、causal Decoder、Encoder-Decoder 有什么区别」是大模型面试里最经典的架构题，考的不是背模型名单，而是你能不能把三种架构的差异收拢到一…</description>
      <pubDate>Mon, 07 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从骰子期望题延伸：什么时候该收手，期望决策与最优停止怎么想</title>
      <link>https://ohmygp.com/posts/batch-009-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-09-knowledge-1</guid>
      <description>「扔骰子返现，不满意可以再扔一次」这类题的完整计算，这个系列昨天的真题解析已经做过——结论是 4.25 元，分界点 3.5。那道题背后的通用框架比答案本身值钱：凡是「看完结果可以选择再来一次」的题目，都是同一套期望决策框架的实例。这篇把框架抽出来讲透，以后遇到任何变体都能套。</description>
      <pubDate>Sun, 06 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：用 Zookeeper 怎么实现一个分布式队列</title>
      <link>https://ohmygp.com/posts/batch-009-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-09-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「用 Zookeeper 实现分布式队列」这类题，真正考的不是背步骤，而是你能不能用协调服务暴露的两个原语——顺序节点与 Watcher——拼出一个有正确性保证的队列，并且说清它与专业消息队列…</description>
      <pubDate>Sun, 06 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：混合精度训练为什么要给 loss 做缩放</title>
      <link>https://ohmygp.com/posts/batch-009-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-09-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「混合精度训练为什么要做 loss scaling」这道题，表面上问的是一个技巧，实际考你能不能把 FP16 的数值范围、反向传播的链式放大、动态调档策略三件事串成一条逻辑链。</description>
      <pubDate>Sun, 06 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：首 token 延迟和吞吐，推理性能到底怎么衡量</title>
      <link>https://ohmygp.com/posts/batch-009-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-09-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「如何衡量大模型的推理速度」这道题，考的不是让你背几个缩写，而是你能不能把「快」这个模糊的词拆成可测量、可对比、可写进 SLA 的指标。</description>
      <pubDate>Sun, 06 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从奖励模型面试题延伸：偏好数据从哪来，人工标注、AI 反馈、规则奖励怎么选</title>
      <link>https://ohmygp.com/posts/batch-009-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-08-knowledge-1</guid>
      <description>这个系列的前一篇真题解析讲过奖励模型（RM）怎么用偏好数据训练，那篇的结论里埋着一个没展开的问题：偏好数据本身从哪来？「同一提示下两个回答谁更好」这个判断，总得有个裁判来下。本篇就把这个裁判问题讲透——三条主流生产路线，各自的成本、质量和适用阶段。</description>
      <pubDate>Sat, 05 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：new[] 出来的数组用 delete 释放，会发生什么</title>
      <link>https://ohmygp.com/posts/batch-009-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-08-interview-3</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。题面只有两行代码：用 new ClassA[5] 申请一个对象数组，然后用 delete（少了一对 []）释放，问构造函数和析构函数各执行几次。</description>
      <pubDate>Sat, 05 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：骰子扔一次不满意可以再扔一次，期望收益是多少</title>
      <link>https://ohmygp.com/posts/batch-009-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-08-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。题面很短：扔一个骰子，扔到几点就返现几元；第一次扔完看到点数后，你可以二选一——直接拿走这个点数，或者再扔一次，但这时只能拿第二次的点数。玩一轮的期望收益是多少？</description>
      <pubDate>Sat, 05 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：训练曲线突然冒出一根刺，loss 突刺是怎么回事</title>
      <link>https://ohmygp.com/posts/batch-009-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。loss 突刺（loss spike）指的是训练过程中 loss 曲线在平稳下降时突然向上冲出一根尖峰。</description>
      <pubDate>Sat, 05 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从「复读机」面试题延伸：temperature、top-p、top-k，解码参数到底怎么调</title>
      <link>https://ohmygp.com/posts/batch-009-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-07-knowledge-1</guid>
      <description>这个系列的前一篇真题解析讲过「大模型为什么会变复读机」，成因机制那边已经讲透，本篇不重复展开。这里换个视角，写一份解码参数的调节手册：模型每生成一个 token 都要从概率分布里做一次选择，贪心、束搜索、temperature、top-k、top-p 这些旋钮各自改变什么、不同任…</description>
      <pubDate>Fri, 04 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MongoDB 的存储引擎 WiredTiger 是怎么工作的</title>
      <link>https://ohmygp.com/posts/batch-009-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-07-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「MongoDB 的存储特性与内部原理」这类题，面试官真正想听的是你能不能以 WiredTiger 为骨架讲清三件事：写入路径怎么走、并发怎么控、磁盘怎么省。</description>
      <pubDate>Fri, 04 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：内存的内部碎片和外部碎片是什么</title>
      <link>https://ohmygp.com/posts/batch-009-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-07-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「讲讲内部碎片、外部碎片，如何解决」是操作系统面试的常驻题，真正考的不是两个名词背诵，而是你能不能说清各自的成因，以及分页、伙伴系统、slab 这些机制分别在对付哪一种。</description>
      <pubDate>Fri, 04 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RLHF 的奖励模型是怎么训练出来的</title>
      <link>https://ohmygp.com/posts/batch-009-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-07-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。RLHF 的经典三步大家都知道个名字：SFT、训练奖励模型、PPO 强化。这道题考的是中间这一步拆开后你知不知道细节——奖励模型（RM）从哪来的、偏好数据长什么样、损失函数为什么那么设计。</description>
      <pubDate>Fri, 04 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从分块面试题延伸：RAG 知识库从原始文档到可检索索引，完整流水线怎么搭</title>
      <link>https://ohmygp.com/posts/batch-009-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-06-knowledge-1</guid>
      <description>面试里被问「RAG 的分块有哪些切法」时，这个系列另有一篇真题解析专门拆解分块方法本身。本篇换个视角：分块只是索引构建流水线的中间一环，从原始文档到可检索索引，端到端要走解析、清洗、分块、嵌入、入库五步，每一步都有典型坑。索引质量在上线前就已定型——线上检索烂，多半是这里埋的雷。</description>
      <pubDate>Thu, 03 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Go 函数里 panic 被 recover 后，返回值到底是什么</title>
      <link>https://ohmygp.com/posts/batch-009-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-06-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。题目很短：Go 函数返回值未命名，执行中发生 panic，但在函数内 recover 了，函数返回什么？</description>
      <pubDate>Thu, 03 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：环形手串上同色不能挤在 m 颗珠子里，怎么数违规颜色</title>
      <link>https://ohmygp.com/posts/batch-009-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-06-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料整理，与任何公司的当前招聘无关。题意：一条 n 颗珠子串成的环形手串，每颗珠子可以无色，也可以涂若干种颜色，颜色共 c 种。要求是：任意一种颜色，在任意连续的 m 颗珠子里至多出现一次。</description>
      <pubDate>Thu, 03 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RAG 的文档分块有哪些切法</title>
      <link>https://ohmygp.com/posts/batch-009-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「RAG 的文本分块有哪些方法」是检索增强方向的高频题，表面是让你背方法清单，实际考两件事：能不能说清每种切法切的是什么边界，以及块大小这个旋钮往哪边拧、代价是什么。</description>
      <pubDate>Thu, 03 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从时间轮面试题延伸：定时任务怎么实现，Timer、DelayQueue、时间轮、Quartz 怎么选</title>
      <link>https://ohmygp.com/posts/batch-009-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-05-knowledge-1</guid>
      <description>这个系列另有一篇真题解析专门拆解 Netty 时间轮的内部机制，本篇换个视角：把「定时与延迟任务」这个大类的主流方案放到一张坐标系里横向对比，回答工程上更常遇到的问题——手里这批定时任务，到底该用哪个轮子。</description>
      <pubDate>Wed, 02 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Netty 的时间轮是怎么管理海量定时任务的</title>
      <link>https://ohmygp.com/posts/batch-009-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-05-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「Netty 的时间轮（HashedWheelTimer）用法、实现原理、会不会不准时、怎么解决」是一个三连问：前半问数据结构，后半问工程坑。</description>
      <pubDate>Wed, 02 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：四个作业排队执行，平均周转时间怎么算</title>
      <link>https://ohmygp.com/posts/batch-009-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-05-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料整理，与任何公司的当前招聘无关。原题以选择题形式出现：现有 4 个同时到达的作业 J1、J2、J3、J4，执行时间分别是 1、3、5、7 小时，系统按单道方式运行并采用短作业优先（SJF）算法，问平均周转时间是多少。</description>
      <pubDate>Wed, 02 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：大模型为什么会变成「复读机」</title>
      <link>https://ohmygp.com/posts/batch-009-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-05-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「大模型为什么会出现复读机问题」是文本生成方向的常考题，很多人的答案停在「解码策略不够好」这一句，但真正要讲清的是三层成因——解码、数据、概率自我强化——以及每层对策能管到哪、管不到哪。</description>
      <pubDate>Wed, 02 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从推理框架面试题延伸：从一个模型文件到一个在线 API，推理服务落地要走几步</title>
      <link>https://ohmygp.com/posts/batch-009-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-04-knowledge-1</guid>
      <description>这个系列前一天有一篇真题解析，把 vLLM、TensorRT-LLM、TGI 三个推理框架的特性横向对比了一遍——那篇回答的是「选什么」。但面试和工作中更常见的后续问题是：选定框架之后，一个躺在磁盘上的模型文件，怎么变成别人能调用的在线 API？</description>
      <pubDate>Tue, 01 Dec 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：CSMA/CD 是什么，为什么现在的交换网络不用它了</title>
      <link>https://ohmygp.com/posts/batch-009-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。CSMA/CD 是以太网半双工时代的介质访问控制协议，IEEE 802.3 标准里的经典设计。</description>
      <pubDate>Tue, 01 Dec 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：new/delete 和 malloc/free 的区别只在写法吗</title>
      <link>https://ohmygp.com/posts/batch-009-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-04-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「new/delete 和 malloc/free 有什么区别」是 C++ 面试的钉子户，很多人能背出「new 会调构造函数」就停了，但题目问的是「底层实现」，真正要考的是你能不能把差异拆成构…</description>
      <pubDate>Tue, 01 Dec 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：PyTorch 的 DP 和 DDP 到底有什么区别</title>
      <link>https://ohmygp.com/posts/batch-009-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。DP 和 DDP 都是 PyTorch 的数据并行 API，干的活一样——把一批数据切到多张卡上算、汇总梯度、更新参数——但面试官要的不是「都是数据并行」这句废话，而是进程模型、梯度同步路径和…</description>
      <pubDate>Tue, 01 Dec 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 LoRA 面试题延伸：QLoRA、AdaLoRA、DoRA，LoRA 家族都改了什么</title>
      <link>https://ohmygp.com/posts/batch-009-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-03-knowledge-1</guid>
      <description>这个系列另有一篇真题解析专门讲 LoRA 秩 r 的选取权衡，本篇换个主轴：把 LoRA 家族里三个最有代表性的变体——QLoRA、AdaLoRA、DoRA——摆在一起，讲清它们各自针对什么问题、动了哪一刀、实际选型怎么取舍。</description>
      <pubDate>Mon, 30 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：调用 t.run() 和 t.start() 有什么区别</title>
      <link>https://ohmygp.com/posts/batch-009-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-03-interview-3</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料整理，与任何公司的当前招聘无关。这道题以选择题形式出现：给一段 main 方法里 t.run() 再打印字符串的代码，问输出是什么。它考的是 Java 并发里最基础也最容易想当然的一个语义陷阱。</description>
      <pubDate>Mon, 30 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：时针分针秒针，一天到底重合多少次</title>
      <link>https://ohmygp.com/posts/batch-009-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。钟表重合题看着像脑筋急转弯，真正考的是你能不能把它翻译成相对速度的追及模型——会建模的人眼里，这题就是三道除法加一处边界判断。</description>
      <pubDate>Mon, 30 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：大模型推理加速框架那么多，各自强在哪</title>
      <link>https://ohmygp.com/posts/batch-009-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「推理加速框架有哪些、各自什么特点」是典型的横向对比题，面试官想看的不是你背出一串框架名单，而是你能不能把差异收拢成几条清晰的优化主线，并落到选型结论上。</description>
      <pubDate>Mon, 30 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从「知识注入」面试题延伸：预训练、继续预训练、SFT、RLHF，四个阶段各练什么</title>
      <link>https://ohmygp.com/posts/batch-009-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-02-knowledge-1</guid>
      <description>这个系列的前一篇真题解析辨析过一个焦点问题：大模型的知识主要在哪一阶段进模型。那篇只讲注入时机这一个点，本篇把镜头拉远，把大模型从一堆语料到一个顺手助手的完整训练流水线走一遍——预训练、继续预训练、监督微调、人类反馈对齐四个阶段，各自的目标、数据形态、能力产出和成本量级分别是什么…</description>
      <pubDate>Sun, 29 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MongoDB 的 ObjectID 里装了哪些信息</title>
      <link>https://ohmygp.com/posts/batch-009-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-02-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「ObjectID 由哪些部分组成」表面是背结构，实际考的是你能否从 12 个字节的分工里推出它的两条核心性质：为什么分布式环境下能保证唯一，又为什么天然大致有序。</description>
      <pubDate>Sun, 29 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：一颗 CPU 每秒大概能执行多少条指令</title>
      <link>https://ohmygp.com/posts/batch-009-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「一颗现代处理器每秒大概能执行多少条简单指令，有哪些主要影响因素」是典型的数量级估算题：面试官不要精确值，要的是你现场拆出「主频 × IPC × 核数」这条因子链，并对每个因子的量级有硬件常识…</description>
      <pubDate>Sun, 29 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：LoRA 的 Rank 设成多少才合适</title>
      <link>https://ohmygp.com/posts/batch-009-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「LoRA 的 rank 设多少合适」没有标准数字答案，面试官真正想听的是你能不能把秩 r 背后的三方权衡讲清楚：它如何决定参数量与成本、如何影响效果上限、又如何与过拟合风险挂钩。</description>
      <pubDate>Sun, 29 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 CPU 指令估算题延伸：面试里的数量级估算，费米估算法怎么拆</title>
      <link>https://ohmygp.com/posts/batch-009-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-01-knowledge-1</guid>
      <description>面试里有一类让人当场卡壳的题：「一颗 CPU 每秒大约执行多少条指令」「一座城市有多少部电梯」。这个系列另有一篇真题解析专门拆解 CPU 指令那道题的硬件背景，本篇换个视角：把这类题背后的通用方法论——费米估算法——讲透。</description>
      <pubDate>Sat, 28 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：C++ 的引用和指针到底差在哪</title>
      <link>https://ohmygp.com/posts/batch-009-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-009-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。引用与指针的区别是 C++ 面试的常驻题，背出「引用是别名」只能算开场白，面试官想听的是语义、内存形态、使用约束三个层面各自的差异，以及函数传参时怎么选。</description>
      <pubDate>Sat, 28 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：把数组里的 0 全部移到尾部，还不能打乱顺序</title>
      <link>https://ohmygp.com/posts/batch-009-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-009-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。原题要求写一个函数：把整型数组里的 0 全部移到末尾，其余非 0 整数移到前面且保持原有相对顺序，函数返回结果中第一个 0 的下标。</description>
      <pubDate>Sat, 28 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：大模型的「知识」到底是预训练装的还是微调装的</title>
      <link>https://ohmygp.com/posts/batch-009-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-009-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「大模型的知识是预训练装的还是微调装的」看似二选一，真正考的是你能不能讲清两个阶段的训练目标与数据形态差在哪，以及由此推出的工程结论：想给模型灌新知识，该走哪条路。</description>
      <pubDate>Sat, 28 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 token 鉴权面试题延伸：分布式系统的会话与鉴权方案怎么选</title>
      <link>https://ohmygp.com/posts/batch-008-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-10-knowledge-1</guid>
      <description>同批的 token 鉴权真题讲了 token 与 session 两种机制的逐项对比。这篇把视野拉宽：真实的系统里选项不止两个——本地 session、集中式 session、JWT、OAuth2 各占据选型坐标系的一个象限，选型就是按场景问题一步步收缩。</description>
      <pubDate>Fri, 27 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MHA、MQA、GQA 三种注意力怎么权衡</title>
      <link>https://ohmygp.com/posts/batch-008-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-10-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。MHA、MQA、GQA 的对比是注意力机制方向的标准题，考点不在三个缩写各代表什么，而在于：它们其实是同一条权衡轴上的三个点——KV 头数越少，KV Cache 越小、解码越快，但质量损失越大。</description>
      <pubDate>Fri, 27 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：LayerNorm 放前面还是放后面，Pre-LN 和 Post-LN 差在哪</title>
      <link>https://ohmygp.com/posts/batch-008-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-10-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。Pre-LN 与 Post-LN 的差别，字面看只是把 LayerNorm 挪了一格，但这一格决定了深层 Transformer 能不能稳定训练——它是理解现代大模型结构的一把钥匙。</description>
      <pubDate>Fri, 27 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：微调后的灾难性遗忘是怎么回事</title>
      <link>https://ohmygp.com/posts/batch-008-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-10-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「微调后通用能力下降」是每个做大模型微调的人都会撞上的现象，面试里它的正式名字叫灾难性遗忘（catastrophic forgetting）：模型学会新任务的同时，把预训练阶段积累的通用能力「挤掉…</description>
      <pubDate>Fri, 27 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 Nginx 面试题延伸：事件驱动架构为什么赢了，一图看懂 Reactor 与 epoll</title>
      <link>https://ohmygp.com/posts/batch-008-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-09-knowledge-1</guid>
      <description>同批的 Nginx 真题讲了它和 Apache 两款产品在进程模型上的逐项对比。这篇退一步，不看具体产品，专门讲背后那个架构模式本身：事件驱动到底凭什么把单机连接数从几千推到万级以上，Reactor 的角色怎么分工，epoll 的两种触发模式又该怎么选。</description>
      <pubDate>Thu, 26 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Zookeeper 怎么感知集群里节点的上下线</title>
      <link>https://ohmygp.com/posts/batch-008-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-09-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Zookeeper 怎么感知节点上下线」表面是集群管理题，实际考的是三个原语的协同：临时节点、Watcher、会话超时。单个讲都不难，面试官要的是它们怎么拼成一套完整的存活性检测机制。</description>
      <pubDate>Thu, 26 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：进程间通信有哪些方式，各自适合什么场景</title>
      <link>https://ohmygp.com/posts/batch-008-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-09-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面经资料，与任何公司的当前招聘无关。「进程间通信有哪些方式」是操作系统部分的保留题，难不倒背书的人，但面试官想听的不是罗列名词，而是每种方式在速度、数据形态、同步语义上的差异，以及「这个场景为什么选它」。</description>
      <pubDate>Thu, 26 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MoE 混合专家的门控网络是怎么路由的</title>
      <link>https://ohmygp.com/posts/batch-008-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-09-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。MoE（Mixture-of-Experts，混合专家）是大模型架构方向的高频考点：模型总参数可以翻到几千亿甚至上万亿，单个 token 的计算量却不能同比例膨胀，靠的就是门控网络的路由机制。</description>
      <pubDate>Thu, 26 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从思维树面试题延伸：CoT、ToT、GoT，让模型「想清楚」的方法是怎么进化的</title>
      <link>https://ohmygp.com/posts/batch-008-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-08-knowledge-1</guid>
      <description>这篇文章延伸自一道经典面试题「思维树 ToT 是怎么把思维链扩展成搜索的」。真题解析聚焦 ToT 内部的状态、生成、评估、搜索四要素，本文退后一步看整条演进线：从链到树再到图，每一代结构多出来的是什么能力，代价是什么，以及面对具体任务该怎么选。</description>
      <pubDate>Wed, 25 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：路由器收到 TTL=1 的报文会怎么处理</title>
      <link>https://ohmygp.com/posts/batch-008-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-08-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。题目只有一句话：路由器收到 TTL 值为 1 的 IP 报文时采取什么策略？</description>
      <pubDate>Wed, 25 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：带权任务有依赖，怎么让重要的任务尽量先执行</title>
      <link>https://ohmygp.com/posts/batch-008-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-08-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题目要求对带权的有向无环图（DAG）排序：不违背依赖关系，且权重大的任务尽量靠前。它在 Agent 任务编排、数据管线调度里天天出现——「依赖约束加优先级」几乎是最常见的排序需求。</description>
      <pubDate>Wed, 25 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：思维树 ToT 是怎么把思维链扩展成搜索的</title>
      <link>https://ohmygp.com/posts/batch-008-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。思维链（CoT）大家已经很熟：让模型把中间步骤一步步写出来。思维树（ToT）是在它之上的下一个考点——为什么线性链条不够，以及把推理组织成搜索需要哪几个零件。</description>
      <pubDate>Wed, 25 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 DPO 面试题延伸：从 RLHF 到 DPO，大模型对齐方法是怎么演进的</title>
      <link>https://ohmygp.com/posts/batch-008-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-07-knowledge-1</guid>
      <description>这篇文章延伸自一道经典面试题「DPO 为什么能替代 RLHF」。真题解析聚焦两者机制差异，本文换个视角：把对齐方法拉成一条演进线，看清每一代方法到底在解决上一代的什么短板，以及今天做选型时该按什么坐标系下判断。</description>
      <pubDate>Tue, 24 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx 凭什么比 Apache 扛得住高并发</title>
      <link>https://ohmygp.com/posts/batch-008-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-07-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「Nginx 和 Apache 的区别」是 Web 服务器方向的保留题目，背特性清单只能拿基础分，真正的考点是并发模型：为什么「一连接一进程」注定扛不住高并发，事件驱动又赢在哪。</description>
      <pubDate>Tue, 24 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：删掉最少的字符，把串变成最长回文</title>
      <link>https://ohmygp.com/posts/batch-008-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-07-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地笔试题集资料，与任何公司的当前招聘无关。这道题的第一层陷阱不在算法，而在题意转换——很多人读完题就开始枚举删除方案，方向从一开始就错了。</description>
      <pubDate>Tue, 24 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：DPO 为什么能成为 RLHF 的替代方案</title>
      <link>https://ohmygp.com/posts/batch-008-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-07-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。DPO 是大模型对齐方向的高频考点，面试官真正想听的往往不是「DPO 不用强化学习」这句结论，而是它凭什么可以不要、又付出了什么代价。</description>
      <pubDate>Tue, 24 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从混合检索面试题延伸：RAG 效果不好时，按什么顺序排查和调优</title>
      <link>https://ohmygp.com/posts/batch-008-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-06-knowledge-1</guid>
      <description>聊混合检索的面试题里，混合检索只是「召回」这一个环节的对策。真到项目里 RAG 效果不好，问题可能出在流水线的任何一段。这篇文章把整条流水线摊开，给出一份「症状 → 环节 → 对策」的排查顺序——核心原则一句话：排查顺序就是数据流动的顺序，从前往后逐段对照，改一处、回归一次，再动…</description>
      <pubDate>Mon, 23 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：大端小端是什么，怎么判断当前机器的字节序</title>
      <link>https://ohmygp.com/posts/batch-008-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-06-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。字节序是 C/C++ 面试的常驻题，问题本身简单，但它连着网络编程、文件格式、跨平台序列化一整串工程问题，答出这些连线才算答完。</description>
      <pubDate>Mon, 23 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：3 个主存块走一遍访问序列，LRU 缺页多少次</title>
      <link>https://ohmygp.com/posts/batch-008-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-06-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地留存的早年笔试卷（选择题），与任何公司的当前招聘无关。题目很短：一个进程分到 3 个主存块，页面访问序列是 1、2、3、4、1、2、5、1、2、3、4、5，用 LRU 置换算法，缺页多少次？选项 9、10、11、12。</description>
      <pubDate>Mon, 23 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RAG 为什么要把向量检索和关键词检索混着用</title>
      <link>https://ohmygp.com/posts/batch-008-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。RAG 系统的第一道质量关口是召回——检索不到对的材料，后面生成再强也是白搭。而「为什么向量检索之外还要混一路关键词检索」正是考察召回理解的经典题。</description>
      <pubDate>Mon, 23 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 ZeRO 面试题延伸：大模型训练的显存都花在哪，一图看懂省钱路线</title>
      <link>https://ohmygp.com/posts/batch-008-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-05-knowledge-1</guid>
      <description>聊 ZeRO 的面试题里有个前置问题常被跳过：那 16N 字节的账到底是怎么来的？这篇文章把那笔账拆开算清楚——训练显存由哪几本账构成、各占多少、每种优化手段分别砍哪一本。看懂账本，「选 ZeRO 还是梯度检查点」就不再是背答案，而是查表。</description>
      <pubDate>Sun, 22 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Go 的 GMP 调度模型是怎么回事</title>
      <link>https://ohmygp.com/posts/batch-008-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-05-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。GMP 是 Go 面试的必答题，但很多人只背得出三个字母的全称，讲不清为什么需要中间这层 P。这篇文章按「为什么 → 是什么 → 怎么运转」的顺序把它讲透。</description>
      <pubDate>Sun, 22 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数组里三个数各自出现超过 n/4 次，怎么找出来</title>
      <link>https://ohmygp.com/posts/batch-008-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-05-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（原题面写作「三个数字出现超过 3/4」，按惯例理解为三个数各自出现次数超过 n/4），与任何公司的当前招聘无关。这道题是摩尔投票法的推广版，单候选版本人人会背，一推广到多候选就卡住一大片人。</description>
      <pubDate>Sun, 22 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：ZeRO 的三个阶段各切分什么状态</title>
      <link>https://ohmygp.com/posts/batch-008-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-05-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「ZeRO 三个阶段各切什么」是大模型训练方向的高频考点，答案本身一句话能背完，但面试官真正想听的是：为什么这些状态值得切，以及切了之后通信上付出了什么。</description>
      <pubDate>Sun, 22 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 Top-K 面试题延伸：内存装不下的时候，海量数据 Top-K 还有哪些招</title>
      <link>https://ohmygp.com/posts/batch-008-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-04-knowledge-1</guid>
      <description>这是一篇知识延伸文章：此前一篇真题解析讲了内存装得下时的 Top-K——扫一遍数据、维护一个 K 大小的小顶堆，O(N log K) 收工。本文换主轴：当数据量远超内存，堆解法的前提不复存在，此时有哪些方法、各自的精度代价是什么？堆解法的细节不再重复。</description>
      <pubDate>Sat, 21 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：token 鉴权和传统 session 验证差在哪</title>
      <link>https://ohmygp.com/posts/batch-008-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面经资料整理，与任何公司的当前招聘无关。「基于 token 的后台鉴权和用户名密码加 session 有什么具体不同」是后端面试的经典对比题。模型 API 网关的 API Key、JWT 设计也直接复用这套框架。</description>
      <pubDate>Sat, 21 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：含 char、uint64、uint32 的结构体 sizeof 是多少</title>
      <link>https://ohmygp.com/posts/batch-008-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-04-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试真题复盘，题目原型出自一份校园招聘笔试卷，与任何公司的当前招聘无关。结构体对齐是 C/C++ 笔试的钉子户，题目形式固定：给几个不同类型的成员，问 sizeof 是多少。会算只是及格，能讲清三条规则、顺手给出重排优化才是满分答法。</description>
      <pubDate>Sat, 21 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：3D 并行是怎么把数据、张量、流水线并行组合起来的</title>
      <link>https://ohmygp.com/posts/batch-008-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。训练千亿参数级模型，单卡既装不下也算不动，「3D 并行怎么组合」因此成了分布式训练面试的必问题。答好它的关键不是背三个名词，而是讲清每种并行各切哪个维度、各自的通信脾气，以及组合时谁先谁后。</description>
      <pubDate>Sat, 21 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 RoPE 面试题延伸：位置编码全景，从绝对位置到旋转编码再到长度外推</title>
      <link>https://ohmygp.com/posts/batch-008-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-03-knowledge-1</guid>
      <description>这是一篇知识延伸文章：同批的面试真题解析讲了 RoPE 自身的旋转机制，本文换一个主轴——把位置编码放进演进坐标系里看，回答两个更大的问题：这条技术线沿什么脉络走到 RoPE？模型训练长度不够用时，又有哪些主流的外推方案？RoPE 的公式推导不再重复，需要的话去看那篇真题解析。</description>
      <pubDate>Fri, 20 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MongoDB 的聚合管道各阶段是怎么工作的</title>
      <link>https://ohmygp.com/posts/batch-008-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-03-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「什么是聚合」「聚合管道怎么工作」是 MongoDB 面试的常客。AI 应用的行为日志分析、标注数据统计常常落在 MongoDB 上，聚合管道就是主要的分析入口，值得讲透。</description>
      <pubDate>Fri, 20 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：二叉树的最大通路长度，递归怎么设计</title>
      <link>https://ohmygp.com/posts/batch-008-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。「求二叉树的最大通路长度」——也叫二叉树的直径——是树形 DP 的入门招牌题。题目一句话：任意两个节点之间的最长路径有多少条边。</description>
      <pubDate>Fri, 20 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：RoPE 旋转位置编码凭什么成为主流</title>
      <link>https://ohmygp.com/posts/batch-008-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。RoPE（旋转位置编码）是当下主流开源大模型几乎标配的位置编码方案，面试官问它，考的往往不是背公式，而是「为什么转一转就能带上位置信息」这层直觉。</description>
      <pubDate>Fri, 20 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 PagedAttention 面试题延伸：大模型推理的显存账本，参数、KV Cache、激活各占多少</title>
      <link>https://ohmygp.com/posts/batch-008-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-02-knowledge-1</guid>
      <description>上一篇真题解析讲了 PagedAttention 的分页机制本身，本篇把镜头拉远：一次大模型推理服务，显存到底花在哪几本账上，每本账随什么增长、怎么估算、用什么手段省。面试里被问「7B 模型部署要多少显存」时，能当场把账算清的人，和只会说「参数乘 2 字节」的人，高下立判。</description>
      <pubDate>Thu, 19 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：10.1.8.0/24 与 10.1.9.0/24 能汇总成哪个网段</title>
      <link>https://ohmygp.com/posts/batch-008-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-02-interview-3</guid>
      <description>先说明属性：这是一篇历史笔试真题复盘，题目出自本地历年笔试题集，与任何公司的当前招聘无关。CIDR 路由聚合是网络笔试的稳定考点，四个选项里往往既有「看着对」的 10.1.0.0/16，也有「方向反了」的 10.1.10.0/24。</description>
      <pubDate>Thu, 19 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：一个写者三个读者，用 P、V 操作怎么协调</title>
      <link>https://ohmygp.com/posts/batch-008-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。信号量题见过生产者-消费者的人不少，但这题的约束形状不一样：A 往缓冲区写数据，B、C、D 各读一次之后 A 才能再写。考点不是互斥，而是「多读者各读一次」的计数同步。</description>
      <pubDate>Thu, 19 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：PagedAttention 是怎么解决 KV Cache 显存浪费的</title>
      <link>https://ohmygp.com/posts/batch-008-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。大模型推理服务面试里，「vLLM 为什么快」几乎必问，而答案的核心就是 2023 年 vLLM 论文提出的 PagedAttention——一道把操作系统虚拟内存思想搬进 GPU 显存管理的经…</description>
      <pubDate>Thu, 19 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 LoRA 面试题延伸：PEFT 家族怎么选，Adapter、Prefix、Prompt、LoRA 各适合什么场景</title>
      <link>https://ohmygp.com/posts/batch-008-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-01-knowledge-1</guid>
      <description>上一篇真题解析讲了 LoRA 内部「B 矩阵为什么初始化为全零」这一个机制细节，本篇换个视角：把镜头拉远到整个参数高效微调（PEFT）家族。面试里被问「你知道哪些 PEFT 方法、怎么选」时，零散背名字没用，面试官想听的是一张选型坐标系：每条路线往模型里插了什么、代价是什么、什么…</description>
      <pubDate>Wed, 18 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：虚函数表是怎么支撑运行时多态的</title>
      <link>https://ohmygp.com/posts/batch-008-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-008-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面经资料整理，与任何公司的当前招聘无关。「虚函数的底层实现」是 C++ 面试里被问得最细的题目之一，光说「通过虚表实现多态」远远不够，面试官要听的是布局、槽位和调用开销这三个层面。</description>
      <pubDate>Wed, 18 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：从 300 万条字符串里找最热门的 10 条</title>
      <link>https://ohmygp.com/posts/batch-008-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-008-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。Top-K 是数据处理面试的常客：300 万条字符串找最热门的 10 条，内存装得下，考点全在「怎么用最小代价维护一个动态门槛」。</description>
      <pubDate>Wed, 18 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：LoRA 微调为什么把 B 矩阵初始化为全 0</title>
      <link>https://ohmygp.com/posts/batch-008-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-008-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料整理，与任何公司的当前招聘无关。LoRA 几乎是大模型微调的默认选项，而「两个低秩矩阵分别怎么初始化」是追问率极高的细节题——背出「B 全零、A 高斯」只是及格线，讲清为什么才算过关。</description>
      <pubDate>Wed, 18 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从概率面试题延伸：几何概型、条件概率与期望，面试概率题的通用解法</title>
      <link>https://ohmygp.com/posts/batch-007-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-10-knowledge-1</guid>
      <description>同批的真题解析把「线段随机切两刀、三段成三角形」那道题完整推了一遍：翻译不等式、画样本空间、约束围可行域、面积比得 1/4。那是一道题的做法；这篇我们看一类题的做法——面试里的概率题翻来覆去就四种题型，先认出题型，再套用对应的固定套路，绝大多数题都能在五分钟内收尾。</description>
      <pubDate>Tue, 17 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：7 个 A 7 个 B 任意前缀 A 不少于 B，有多少种合法排列</title>
      <link>https://ohmygp.com/posts/batch-007-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-10-interview-3</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面是：一个序列由 7 个 A 和 7 个 B 组成，要求任意前缀中 A 的个数不少于 B 的个数，问这样的序列有多少个。四个选项围着 429 打转，答案是 429——卡特兰数 C(7)。</description>
      <pubDate>Tue, 17 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：百万用户的站内短信系统，读扩散和写扩散怎么选</title>
      <link>https://ohmygp.com/posts/batch-007-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-10-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面大意是：一个 SNS 系统有百万级注册用户、日活只有千级，要实现用户之间的站内私信，还要实现管理员对全体用户的群发，请给出数据设计与实现方案。</description>
      <pubDate>Tue, 17 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线段上随机取两个点，三段能拼成三角形的概率是多少</title>
      <link>https://ohmygp.com/posts/batch-007-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-10-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。一条长为 1 的线段，独立均匀地随机切两刀，得到的三段能拼成三角形的概率是多少？答案是 1/4。但面试官要的不是这个数字，而是你如何把「概率」一步步翻译成「面积」。</description>
      <pubDate>Tue, 17 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 ARP 面试题延伸：DHCP、MAC 表与 ICMP，局域网通信全景</title>
      <link>https://ohmygp.com/posts/batch-007-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-09-knowledge-1</guid>
      <description>同一批的真题解析把 ARP 这一个协议讲透了：报文长什么样、缓存怎么建、免费 ARP 干什么用。这篇换一个更大的视角——一台新设备插上网线或连上 Wi-Fi，从「一无所有」到发出第一个数据包，到底有哪些协议在暗中接力。把这条时间线走一遍，局域网通信的全景就有了。</description>
      <pubDate>Mon, 16 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：两个线程各执行 50 次 tally++，最终结果的范围是多少</title>
      <link>https://ohmygp.com/posts/batch-007-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-09-interview-3</guid>
      <description>先说明属性：这是一篇历史笔试题的复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面很短：全局变量 tally 初值为 0，两个线程各自执行 50 次 tally++，没有任何同步措施，问最终结果是多少。</description>
      <pubDate>Mon, 16 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：什么是 CDN，它靠什么给静态资源提速</title>
      <link>https://ohmygp.com/posts/batch-007-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-09-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题的复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。「什么是 CDN」看起来像送分题，但能答到第二层——调度怎么把用户导到最近的节点、缓存过期后会发生什么——才算真懂。这道题拆开就是四块组件加两条路径。</description>
      <pubDate>Mon, 16 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：final 关键字到底锁住了什么，修饰类、方法和变量各是什么语义</title>
      <link>https://ohmygp.com/posts/batch-007-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-09-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「final 有什么用」几乎每个 Java 面试都会问，多数人能背出三个位置的答案，但面试官追问「final 引用指向的对象能改吗」「final 在并发里还有什么用」时，背书就露馅了。</description>
      <pubDate>Mon, 16 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从栈溢出面试题延伸：JVM 内存区域全景图，每个区域怎么溢出、怎么排查</title>
      <link>https://ohmygp.com/posts/batch-007-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-08-knowledge-1</guid>
      <description>同批的面试真题解析讲了虚拟机栈这一个区域的两种溢出：容量到顶抛 StackOverflowError，扩容失败抛 OutOfMemoryError。这篇把镜头拉远：JVM 运行时到底有哪几块内存区域，每块存什么、怎么溢出、出问题从哪儿入手排查。</description>
      <pubDate>Sun, 15 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：NFS 和 SMB 同时共享同一个文件系统，会出什么问题</title>
      <link>https://ohmygp.com/posts/batch-007-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-08-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。场景很常见：一台存储服务器上放着同一份数据盘，既用 NFS 挂给 Linux 计算节点，又用 SMB 共享给办公侧访问。问题是：同一个文件被两边同时读写，会出什么事？</description>
      <pubDate>Sun, 15 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：斐波那契数列要求比 O(n) 更快，矩阵快速幂怎么推</title>
      <link>https://ohmygp.com/posts/batch-007-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-08-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面很直接：求斐波那契数列第 N 项，要求时间复杂度优于 O(n)。</description>
      <pubDate>Sun, 15 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：栈也会内存溢出？StackOverflowError 和 OOM 不是一回事</title>
      <link>https://ohmygp.com/posts/batch-007-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「虚拟机栈什么情况下抛 StackOverflowError，什么情况下抛 OutOfMemoryError」是 Java 面试里区分度很高的一题：很多人背过「递归太深会栈溢出」，却说不出栈和 O…</description>
      <pubDate>Sun, 15 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从单调栈面试题延伸：单调栈和单调队列，各解决哪类最值问题</title>
      <link>https://ohmygp.com/posts/batch-007-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-07-knowledge-1</guid>
      <description>同批的真题复盘用单调栈解了「区间最小值 × 区间和」那道笔试题，把那道题的推导讲透了。这篇把镜头拉远：单调栈还有个兄弟叫单调队列，两者名字像、都靠「单调性」吃饭，管的却是两类不同的最值问题。搞清楚「哪类问题用哪个结构」，比背任何模板都重要。</description>
      <pubDate>Sat, 14 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：主键和唯一索引有什么区别，唯一索引能存 NULL 吗</title>
      <link>https://ohmygp.com/posts/batch-007-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-07-interview-3</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。原题是一道选择题，问关于主键和唯一索引的哪些说法是错误的，四个选项的大意是：唯一索引的列允许为 NULL；一个表的外键必定是另一张表的主键；一张表中只能有一个唯一性索引；</description>
      <pubDate>Sat, 14 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：三道程序的计算和 IO 时间已知，单道和多道环境各要跑多久</title>
      <link>https://ohmygp.com/posts/batch-007-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-07-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题目大意：三道程序 a、b、c 共用一台 IO 设备，各自的时间表都是「计算、IO、计算」三段——a 是 30、40、10 毫秒，b 是 60、30、10，c 是 20、40、20；</description>
      <pubDate>Sat, 14 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：区间最小值乘区间和，怎么求全局最大值</title>
      <link>https://ohmygp.com/posts/batch-007-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-07-interview-1</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题目本身一句话：给定一个元素都在 0 到 100 之间的数组，选一个区间，使「区间最小值 × 区间所有数的和」最大，输出这个最大值。数组长度最大 50 万。</description>
      <pubDate>Sat, 14 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 Java 序列化面试题延伸：JSON、Protobuf、Kryo，序列化协议怎么选</title>
      <link>https://ohmygp.com/posts/batch-007-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-06-knowledge-1</guid>
      <description>同批的面试真题讲了 Java 原生序列化的机制与缺陷：能跑，但安全、兼容、体积三座大山让新系统不该再选它。那换掉它之后选什么？这篇把视角从「一个机制讲透」换成「一张坐标系做选型」：常见方案在体积、速度、跨语言、Schema 演进四个维度上各站在哪，不同业务链路该怎么落子。</description>
      <pubDate>Fri, 13 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：TCP 窗口 65535 字节、RTT 0.1 秒，最大吞吐量是多少</title>
      <link>https://ohmygp.com/posts/batch-007-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-06-interview-3</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面很短：TCP 接收窗口 65535 字节、往返时延 RTT 0.1 秒，问这条连接的最大吞吐量是多少。它考的不是背数字，而是能不能从「窗口」和「RTT」两个概念里把吞吐上限推出来。</description>
      <pubDate>Fri, 13 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MongoDB 副本集是怎么做到高可用的</title>
      <link>https://ohmygp.com/posts/batch-007-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-06-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「MongoDB 副本集怎么做到高可用」一句话的答案是「自动选主加 oplog 复制」，但面试官真正想听的是这两件事怎么配合：节点各扮演什么角色、主挂了之后按什么顺序换、写和读的一致性分别由哪个旋…</description>
      <pubDate>Fri, 13 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Java 序列化是怎么回事，为什么现在都不推荐用原生序列化</title>
      <link>https://ohmygp.com/posts/batch-007-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Java 序列化是怎么回事，为什么不推荐用原生序列化」把三个考点捆在一起问：Serializable 机制本身、serialVersionUID 与 transient 各管什么、反序列化为什么…</description>
      <pubDate>Fri, 13 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从孤儿进程面试题延伸：进程组、会话与守护进程，Linux 进程家谱一次理清</title>
      <link>https://ohmygp.com/posts/batch-007-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-05-knowledge-1</guid>
      <description>同天的真题解析讲了孤儿进程：父先退、子被 1 号进程收养。那篇文章回答的是「一个进程没爹了怎么办」，今天往后退一步，看清它所在的家谱：Linux 的进程不是一盘散沙，而是按「进程 → 进程组 → 会话」三层组织起来的。</description>
      <pubDate>Thu, 12 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：HashSet 是怎么去重的，为什么说它背后就是一个 HashMap</title>
      <link>https://ohmygp.com/posts/batch-007-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-05-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「HashSet 是怎么去重的」表面考一个容器，实际考的是两件事：你知不知道 HashSet 根本没有自己的存储，以及你讲不讲得清 hashCode 与 equals 在去重里的分工。</description>
      <pubDate>Thu, 12 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：什么是孤儿进程，它和僵尸进程有什么不同</title>
      <link>https://ohmygp.com/posts/batch-007-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-05-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「什么是孤儿进程」几乎总是和「僵尸进程」一起被问到，因为它们是同一枚硬币的两面：父子进程总有一个先退出，父先退产生孤儿，子先退而父不收尸就产生僵尸。</description>
      <pubDate>Thu, 12 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：10 个节点的环上走 N 步回到原点，共有多少种走法</title>
      <link>https://ohmygp.com/posts/batch-007-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-05-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很短：编号 0 到 9 的十个节点围成一个环，从 0 号出发，每一步必须向左或向右走一格，走 N 步恰好回到 0 号节点，共有多少种走法？</description>
      <pubDate>Thu, 12 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从滑动窗口面试题延伸：定长、变长、至多 K 个约束，三类窗口题一套模板通吃</title>
      <link>https://ohmygp.com/posts/batch-007-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-04-knowledge-1</guid>
      <description>同批的真题复盘讲了「至多翻转 m 次求最长连续相同子串」这一道题的完整推导；这篇我们把镜头拉远，看滑动窗口这个题型的完整谱系：定长、变长最值、至多 K 个约束，三类看起来毫不相干的题，其实共用同一副骨架。</description>
      <pubDate>Wed, 11 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：向一台正常机器没监听的 80 端口发 SYN，会收到什么</title>
      <link>https://ohmygp.com/posts/batch-007-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-04-interview-3</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：向一台运行正常、但 80 端口没有进程监听的机器发送 TCP SYN 报文，会收到什么响应？答案：对方协议栈回一个 RST 报文，连接立即失败。</description>
      <pubDate>Wed, 11 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：筛选「订单总额少于 2000 的客户」，这条 SQL 该用 WHERE 还是 HAVING</title>
      <link>https://ohmygp.com/posts/batch-007-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-04-interview-2</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：有一张订单表（客户、金额），要筛选「订单总额少于 2000 的客户」，过滤条件 SUM(金额) &lt; 2000 应该写在 WHERE 子句还是 HAVING 子句？答案是 HAVING。</description>
      <pubDate>Wed, 11 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：最多翻转 m 个字符，怎么求最长连续相同子串</title>
      <link>https://ohmygp.com/posts/batch-007-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-04-interview-1</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：给定一个只含字符 a 和 b 的字符串，允许任选至多 m 个字符翻转（a 变 b、b 变 a），求操作后能得到的最长连续相同字符子串的长度。</description>
      <pubDate>Wed, 11 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 free 命令面试题延伸：Linux 内存到底被谁吃了，一套观测指标讲清楚</title>
      <link>https://ohmygp.com/posts/batch-007-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-03-knowledge-1</guid>
      <description>同批的面试题解析把 free 输出里 buffers 与 cached 两个列名的语义掰开讲透了——那篇解决「看不懂」，这篇解决「然后呢」：一台机器的内存水位告警响了，从看到数字到定位到代码，中间隔着一条三层排查链。系统层看够不够，进程层看是谁，应用层看为什么。</description>
      <pubDate>Tue, 10 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Netty 的线程模型是什么，它如何基于 Reactor 模式实现</title>
      <link>https://ohmygp.com/posts/batch-007-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-03-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Netty 线程模型」这道题的标准答案是四个字——主从 Reactor，但面试官真正想听的是：这四个字母落地到代码里是哪几个类，连接在它们之间怎么流转，以及为什么这套结构能撑住十万级连接。</description>
      <pubDate>Tue, 10 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：free 命令里的 buffers 和 cached 到底差在哪</title>
      <link>https://ohmygp.com/posts/batch-007-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。在 Linux 机器上敲一次 free -m，十个人里有八个会先盯着 free 那一列皱眉：「16G 的机器怎么就剩 400M 了？</description>
      <pubDate>Tue, 10 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Error 和 Exception 有什么区别，Checked 异常为什么备受争议</title>
      <link>https://ohmygp.com/posts/batch-007-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Error 和 Exception 的区别」是 Java 面试的入场题，很多人背得出「Error 是系统错误、Exception 是程序异常」这一句，却说不清这条分界线为什么是 Throwabl…</description>
      <pubDate>Tue, 10 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从二分查找面试题延伸：查找下界、旋转数组、山峰数组，二分变体一张图看懂</title>
      <link>https://ohmygp.com/posts/batch-007-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-02-knowledge-1</guid>
      <description>同批的真题复盘逐行排查了一份「找最后一个等于目标值」的错误二分代码，那份代码这里不再展开。这篇把镜头拉远：二分查找不是一段要背的代码，而是一个有三个自由度的模板族。自由度想清楚，「找第一个」「找最后一个」「插入位置」「旋转数组」「山峰数组」全是同一台机器拧不同的螺丝。</description>
      <pubDate>Mon, 09 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：进程和线程的区别是什么，多线程真的能节省时间吗</title>
      <link>https://ohmygp.com/posts/batch-007-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-02-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。这道题其实是两问：概念上进程和线程差在哪；工程上多线程什么时候真的省时间。第一问多数人会背，第二问才是拉开差距的地方。</description>
      <pubDate>Mon, 09 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：IP 地址怎么变成 MAC 地址，ARP 协议的工作全过程</title>
      <link>https://ohmygp.com/posts/batch-007-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「IP 地址和物理地址之间靠什么转换」是网络面试的入门题，但多数人只答得出「ARP」三个字母。面试官真正想听的是全过程：报文长什么样、缓存怎么工作、免费 ARP 是干什么的。</description>
      <pubDate>Mon, 09 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：这段二分查找代码错在哪，你能找出几处</title>
      <link>https://ohmygp.com/posts/batch-007-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-02-interview-1</guid>
      <description>先说明属性：这是一篇笔试真题复盘，题目出自本地历史面试资料（一道「指出程序中所有问题」的代码找错题），与任何公司的当前招聘无关。题面给出一段 C++ 代码：在升序数组里查找最后一个等于目标值的元素，存在返回下标，不存在返回 -1。</description>
      <pubDate>Mon, 09 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 MongoDB 面试题延伸：关系型不够用的时候，文档数据库什么时候能赢</title>
      <link>https://ohmygp.com/posts/batch-007-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-01-knowledge-1</guid>
      <description>同批的两篇 MongoDB 真题分别讲了分片（数据超单机后的水平拆分）和副本集（高可用）的机制细节。这篇退一步，回答一个更靠前的问题：在选型阶段，凭什么判断一个业务该用文档数据库而不是关系型？ 答案不是「数据结构灵活」一句话，而是一套可以逐维度打分的坐标系。</description>
      <pubDate>Sun, 08 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MongoDB 的分片是怎么回事，什么时候才需要分片</title>
      <link>https://ohmygp.com/posts/batch-007-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-007-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「MongoDB 分片是怎么回事」是数据库面试的常客，能背出 mongos、config server、shard 三个名词的人不少，但真正的分水岭在追问里：片键选错会发生什么，什么量级才值得上分…</description>
      <pubDate>Sun, 08 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：抽象类和接口到底差在哪，设计时怎么选</title>
      <link>https://ohmygp.com/posts/batch-007-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-007-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「抽象类和接口的区别」是 Java 面试的保留曲目，很多人会背对比表，却被一句追问问住：既然接口现在也能写方法实现，两者还有本质区别吗？有——分野不在语法，在于能不能持有状态。</description>
      <pubDate>Sun, 08 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：5 个人分 100 枚金币，第一个提案的人怎么分才能拿到最多</title>
      <link>https://ohmygp.com/posts/batch-007-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-007-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「5 个人分 100 枚金币」是博弈论逆向归纳的招牌题，很多人背过答案却讲不清过程，面试官要的恰恰是那条倒推链。</description>
      <pubDate>Sun, 08 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 CAP 面试题延伸：BASE 与分布式事务——2PC、TCC、Saga 怎么落地最终一致性</title>
      <link>https://ohmygp.com/posts/batch-006-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-10-knowledge-1</guid>
      <description>「讲讲 CAP」是道经典面试题，那道题的主轴是取舍框架——一致性、可用性、分区容忍三者不可兼得，分区不可回避，于是真正要选的是 C 还是 A。但面试答完取舍，工程上的问题才刚开始：选了 AP 之后，不一致的窗口怎么收口？跨系统的转账、下单、审批，到底用什么机制保证「最终」会一致？</description>
      <pubDate>Sat, 07 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Zookeeper 集群里每个 Server 都在扮演什么角色</title>
      <link>https://ohmygp.com/posts/batch-006-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-10-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：Zookeeper 集群下各 Server 的工作状态与角色是什么？答案的骨架是三种角色加一条状态机，但真正的考点在 Observer 的设计动机——为什么扩读不能靠加 Follower。</description>
      <pubDate>Sat, 07 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线程切换的一瞬间，操作系统到底做了什么</title>
      <link>https://ohmygp.com/posts/batch-006-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-10-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：介绍下你理解的操作系统中线程切换过程。把「一瞬间」拆成三个动作，再把「为什么贵」拆成两块成本，这道题就答完了。</description>
      <pubDate>Sat, 07 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：手写一个不可变类，要注意哪几件事</title>
      <link>https://ohmygp.com/posts/batch-006-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-10-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很短：怎么实现一个不可变类？很多人脱口而出「字段加 final」，但 final 只是四条准则里的一条。把每条准则防的是哪种破坏方式讲清楚，才是这道题的得分点。</description>
      <pubDate>Sat, 07 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从线程生命周期面试题延伸：线程协作工具箱——wait/notify、Condition、Semaphore、Phaser 怎么选</title>
      <link>https://ohmygp.com/posts/batch-006-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-09-knowledge-1</guid>
      <description>「讲讲线程的生命周期」是道经典面试题，那道题的主轴是状态机——NEW、RUNNABLE、WAITING、TIMEDWAITING、BLOCKED、TERMINATED 之间怎么迁移，wait、sleep、join 各自把线程推到哪里。</description>
      <pubDate>Fri, 06 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：怎么压测一个 RPC 接口，QPS 和延迟怎么看</title>
      <link>https://ohmygp.com/posts/batch-006-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-09-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：有一个 RPC 服务，对外提供一个查询接口，给定请求返回匹配结果——怎么测试这个接口的性能？这是一道开放设计题，新手容易答成「开很多线程打过去看 QPS」，但那只是动作不是方案。</description>
      <pubDate>Fri, 06 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：输入域名到拿到 IP，DNS 递归和迭代解析走了哪些步</title>
      <link>https://ohmygp.com/posts/batch-006-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-09-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：在浏览器输入一个域名，到拿到 IP 为止，DNS 解析走了哪些步骤？</description>
      <pubDate>Fri, 06 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：最短路还能用 k 次半价券，分层图怎么建</title>
      <link>https://ohmygp.com/posts/batch-006-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-09-interview-1</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：一个王国有 n 座城市，编号 0 到 n-1，任意两城之间都有一条魔法通道，通过要花给定的时间。你站在 0 号城，想去 1 号城；</description>
      <pubDate>Fri, 06 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 ping 面试题延伸：网络排障工具箱——ping、traceroute、nslookup、netstat、tcpdump 各看哪一层</title>
      <link>https://ohmygp.com/posts/batch-006-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-08-knowledge-1</guid>
      <description>「输入 ping 回车后发生了什么」是道经典面试题，那道题把单个命令的协议栈旅程讲透了。真到线上排障，问题换了形状：用户报「服务打不开」，你手里有一整盒工具，先抄哪个、按什么顺序、每个工具的回答能信到哪一层？本文就讲这套分层排障方法论。</description>
      <pubDate>Thu, 05 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：评论、点赞、关注提醒满天飞，消息通知系统怎么设计</title>
      <link>https://ohmygp.com/posts/batch-006-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-08-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史笔试资料（原题从测试角度提问，本文按系统设计角度重写），与任何公司的当前招聘无关。题面涉及的消息系统包含评论、点赞、关注提醒、创作者账号提醒、问答邀请和系统活动消息。</description>
      <pubDate>Thu, 05 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：20 个线程的进程 fork 一下，子进程里有几个线程</title>
      <link>https://ohmygp.com/posts/batch-006-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-08-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：一个进程有 20 个线程，某个线程里调用 fork，新进程会有 20 个线程吗？答案先放出来：不会，子进程里只有一个线程——发起 fork 的那一个。</description>
      <pubDate>Thu, 05 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Spring 事务的传播行为，REQUIRED 和 REQUIRES_NEW 差在哪</title>
      <link>https://ohmygp.com/posts/batch-006-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：讲讲 Spring 事务的传播属性。传播属性回答的问题很具体：一个带事务的方法被另一个带事务的方法调用时，内层方法的事务边界画在哪。</description>
      <pubDate>Thu, 05 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从反向代理面试题延伸：LVS、Nginx、业务网关，多层负载均衡体系怎么搭</title>
      <link>https://ohmygp.com/posts/batch-006-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-07-knowledge-1</guid>
      <description>四层（L4）在传输层工作，眼里只有 IP 和端口：看到一个五元组，按调度算法选一台后端，转发。七层（L7）在应用层工作，能看懂完整 HTTP 请求，于是能按 URL 路由、按 Header 做灰度、卸载 TLS、缓存静态内容。</description>
      <pubDate>Wed, 04 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：建一张表，主键、自增、非空、默认值这些约束怎么设计</title>
      <link>https://ohmygp.com/posts/batch-006-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-07-interview-3</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面大意：建一张「通讯录」表，要求编号是整型自动编号并做主键、姓名不可空、性别默认值为「男」、出生日期与联系方式可空、备注为长文本，从四个建表语句选项里挑出正确的那个。</description>
      <pubDate>Wed, 04 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：netstat 里一堆 SYN_SENT，是哪里出了问题</title>
      <link>https://ohmygp.com/posts/batch-006-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-07-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面大意：在一台机器上执行 netstat 查看 TCP 连接，发现大量连接处于 SYNSENT 状态，这说明什么问题？要答好它，不能只背一个状态名，得先回到三次握手的状态机。</description>
      <pubDate>Wed, 04 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：两条铁轨当栈用，车厢顺序能不能调出来</title>
      <link>https://ohmygp.com/posts/batch-006-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-07-interview-1</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：一列火车有 n 节车厢，编号 1 到 n，按编号顺序依次进站；出站方向要求把车厢排成给定的目标顺序。</description>
      <pubDate>Wed, 04 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 HashMap 面试题延伸：并发容器全景——ConcurrentHashMap、CopyOnWrite 与阻塞队列怎么选</title>
      <link>https://ohmygp.com/posts/batch-006-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-06-knowledge-1</guid>
      <description>「HashMap 是不是线程安全、并发下用什么 Map」是一道经典面试题。那道题的正解止步于「HashMap 不安全、用 ConcurrentHashMap」；本文换个角度：JUC 一整个并发容器家族摆在面前，选型依据是什么。</description>
      <pubDate>Tue, 03 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：设计一个百万 QPS 读、千级写的统一配置服务</title>
      <link>https://ohmygp.com/posts/batch-006-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-06-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：业务方要存服务参数、功能开关这类键值，配置文件逐机同步的老办法越来越难管，要求设计一个统一配置服务。</description>
      <pubDate>Tue, 03 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：僵尸进程怎么产生的，怎么找到并处理它</title>
      <link>https://ohmygp.com/posts/batch-006-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-06-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题目问「僵尸进程是什么，如何查找」。这道题的价值在于它逼你看懂进程生命周期的最后一步：退出不等于消失。</description>
      <pubDate>Tue, 03 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：想要一个有序的 Map，LinkedHashMap 和 TreeMap 怎么选</title>
      <link>https://ohmygp.com/posts/batch-006-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题目问「有没有有顺序的 Map 实现类，它们是怎么保证有序的」。答出 LinkedHashMap 和 TreeMap 两个名字只值一半分，另一半在看清：它们说的「有序」根本不是一回事。</description>
      <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从长短连接面试题延伸：心跳、重连、超时与背压，连接可靠性四件套</title>
      <link>https://ohmygp.com/posts/batch-006-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-05-knowledge-1</guid>
      <description>「长连接和短连接怎么选、Keep-Alive 和心跳什么区别」是一道经典面试题。那道题的正解止步于成本对比；本文换个角度：假设你已经决定用长连接（IM、推送、流式推理都绕不开它），接下来真正的问题是——这条连接怎么才能靠得住。</description>
      <pubDate>Mon, 02 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：不跑 EXPLAIN，怎么预估一条 MySQL 语句有多快</title>
      <link>https://ohmygp.com/posts/batch-006-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-05-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题目问「如何预估一条 MySQL 语句的性能」。EXPLAIN 谁都会跑，这道题考的是不跑任何命令、只靠几个数字拍出响应时间的量级——这个能力决定了你敢不敢在上线前说「这条查询没问题」。</description>
      <pubDate>Mon, 02 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：traceroute 怎么用 UDP 和 TTL 把整条路由摸出来</title>
      <link>https://ohmygp.com/posts/batch-006-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-05-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题目大意：traceroute 是如何工作的，为什么默认用 UDP。这道题漂亮在它不需要任何特权协议——只用 IP 头部一个字段和两种现成的 ICMP 报文，就把整条转发路径反推了出来。</description>
      <pubDate>Mon, 02 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：两个电容来回倒，最少几步量出目标电量</title>
      <link>https://ohmygp.com/posts/batch-006-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-05-interview-1</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面：两个电容（容量为正整数 a、b，初始电量都是 0），允许三种操作——把某个电容放电清零、把某个电容充满到容量上限、把 A 的电量尽可能转移到 B（B 满了剩余留在 A）。</description>
      <pubDate>Mon, 02 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从集群任务分片面试题延伸：任务调度系统设计——分片、租约与故障转移</title>
      <link>https://ohmygp.com/posts/batch-006-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-04-knowledge-1</guid>
      <description>「集群会动态扩缩容，一批任务怎么分下去、机器挂了怎么办」是一道经典的集群任务分片面试题。真题解析回答的是那一个场景的问与答；这篇换个角度，把这类系统的通用构件拆出来——任何分布式任务调度系统，不管叫调度中心、批处理框架还是自建定时任务平台，都在回答同样四个问题：任务怎么切、归属怎…</description>
      <pubDate>Sun, 01 Nov 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx 的 master 和 worker 各管什么，为什么这样分工</title>
      <link>https://ohmygp.com/posts/batch-006-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面是「解释 Nginx 服务器上的 Master 和 Worker 进程分别是什么」。</description>
      <pubDate>Sun, 01 Nov 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：存储过程和触发器有什么区别，现在还该不该用</title>
      <link>https://ohmygp.com/posts/batch-006-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-04-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面是「存储过程与触发器的区别」。一句话版本：存储过程是「等你显式调用」的一段库内逻辑，触发器是「表上一有动静就自己跑」的一段库内逻辑。但要答好，得把触发方式、语义能力和工程代价三层都讲开。</description>
      <pubDate>Sun, 01 Nov 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：动态代理有几种实现，JDK 和 CGLIB 差在哪</title>
      <link>https://ohmygp.com/posts/batch-006-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面是「描述动态代理的几种实现方式，分别说出优缺点」。标准答案是两条主流路线：JDK 自带的接口代理和 CGLIB 的字节码增强。答出「各怎么实现」只是及格线，答出「限制与选型」才算吃透。</description>
      <pubDate>Sun, 01 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从兄弟单词面试题延伸：字符串检索工具箱——签名、Trie、KMP、AC 自动机怎么选</title>
      <link>https://ohmygp.com/posts/batch-006-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-03-knowledge-1</guid>
      <description>「兄弟单词」这道经典面试题——把字母重排后相同的词聚成一组——用一张哈希表就能解：把每个单词的字母排序作为签名，签名相同的进同一桶。这道题值得记住的解法之外，还有一个更值得记住的问题：如果场景变一变，签名还管用吗？答案是不一定。</description>
      <pubDate>Sat, 31 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：C 类地址分给 6 个子公司，子网掩码怎么算</title>
      <link>https://ohmygp.com/posts/batch-006-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-03-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。这类题有两个经典考法：一是「一个 C 类地址分给 6 个子公司、最大的一家有 26 台机器，子网掩码设多少」，二是「给定一个地址和掩码，判断另一个地址是否同属一个网段」。</description>
      <pubDate>Sat, 31 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：一个 HTTP 请求进入 Nginx 之后，要过哪几道关卡</title>
      <link>https://ohmygp.com/posts/batch-006-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面是「解释 Nginx 如何处理 HTTP 请求」。很多人答成「接收、解析、转发」三句话，其实 Nginx 官方开发文档把请求处理定义成一条 11 个阶段的流水线，模块按阶段注册 handler…</description>
      <pubDate>Sat, 31 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：无序数组里找三个数，乘积最大，要求 O(n)</title>
      <link>https://ohmygp.com/posts/batch-006-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-03-interview-1</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面很短：给定一个无序数组，里面混着正数、负数和零，找出三个数使乘积最大，要求时间复杂度 O(n)、空间复杂度 O(1)。考点不在「找三个大数」，而在那个容易被忽略的负数。</description>
      <pubDate>Sat, 31 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 epoll 面试题延伸：五种 IO 模型与 Reactor 模式，一张图看懂网络编程的底子</title>
      <link>https://ohmygp.com/posts/batch-006-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-02-knowledge-1</guid>
      <description>epoll 和 select 的区别、epoll 的 LT 与 ET，这两个问题之前的真题解析已经讲过，本文不再重复。今天往后退一步，看清 epoll 所在的整张地图：Unix 网络编程的经典划分里，IO 模型一共有五种，epoll 只是其中一种模型的一个实现。</description>
      <pubDate>Fri, 30 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：SQL 的逻辑执行顺序是什么，left join 和 inner join 差在哪</title>
      <link>https://ohmygp.com/posts/batch-006-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-02-interview-3</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。这道题表面考两个知识点——SQL 逻辑执行顺序、left join 与 inner join 的差异——实际上考的是同一件事：你真的知道一条 SQL 是按什么流程算出结果的吗？</description>
      <pubDate>Fri, 30 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：拥塞窗口 16KB、对端通告 8KB，还能再发多少字节</title>
      <link>https://ohmygp.com/posts/batch-006-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-02-interview-2</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面大致是：TCP 连接的拥塞窗口 16KB、对端通告的接收窗口 8KB、MSS 1KB，问发送方此刻还能发多少数据。这是一道定量计算题，但算对的前提是先搞懂两个窗口各管什么。</description>
      <pubDate>Fri, 30 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：new 一个子类对象，静态块、构造器按什么顺序执行</title>
      <link>https://ohmygp.com/posts/batch-006-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「new 一个子类，静态块、实例块、构造器谁先谁后」是 Java 面试的钉子户，答案一句话能背完，但面试官真正想听的是：为什么是两个阶段，而不是一条六步的直线。</description>
      <pubDate>Fri, 30 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 ZK 分布式锁面试题延伸：数据库、Redis、Zookeeper、etcd，分布式锁四条路线怎么选</title>
      <link>https://ohmygp.com/posts/batch-006-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-01-knowledge-1</guid>
      <description>之前一篇真题解析讲过 Zookeeper 分布式锁的实现细节，本文不再重复。今天把镜头拉远：分布式锁不止 ZK 一条路，四条主流路线背后是完全不同的设计哲学。搞清楚它们的取舍坐标，比记住任何一条路的实现细节都更值钱。</description>
      <pubDate>Thu, 29 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Zookeeper 的 znode 有哪几种，临时节点和顺序节点解决什么问题</title>
      <link>https://ohmygp.com/posts/batch-006-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-006-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题目问「znode 有哪几种」，标准答案是四种，但比背下四个名字更重要的是看清它们其实是两个独立开关的组合：持久还是临时、无序还是顺序。两个开关各自解决一类协调难题。</description>
      <pubDate>Thu, 29 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：主键、超键、候选键、外键，一张表里有几种键</title>
      <link>https://ohmygp.com/posts/batch-006-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-006-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「一张表里有几种键」这道题考的不是背定义，而是四种键之间的包含关系——很多人能分别说出定义，却画不出它们谁套谁。</description>
      <pubDate>Thu, 29 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>笔试真题复盘：已知前序和中序遍历，怎么把二叉树还原出来</title>
      <link>https://ohmygp.com/posts/batch-006-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-006-day-01-interview-1</guid>
      <description>先说明属性：这是一篇历史笔试题复盘，题目出自本地历史笔试资料，与任何公司的当前招聘无关。题面很经典：给定一棵二叉树的前序遍历和中序遍历序列，把树还原出来。考点不在「会不会」，而在「分治点找得准不准」。</description>
      <pubDate>Thu, 29 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 IO 优先级面试题延伸：多租户系统的资源隔离与 QoS 保障怎么做</title>
      <link>https://ohmygp.com/posts/batch-005-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-10-knowledge-1</guid>
      <description>之前解析「存储系统的 IO 优先级与公平性」这道真题时，问答聚焦在单个存储系统内部；这篇把视野拉到整套多租户系统——只要多个租户共享同一套资源，「会不会互相拖累」就是必须体系化回答的问题，而不只是存储层的事。</description>
      <pubDate>Wed, 28 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：CAP 原则到底是什么，为什么只能三选二</title>
      <link>https://ohmygp.com/posts/batch-005-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-10-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：什么是 CAP？为什么说分布式系统只能三选二？</description>
      <pubDate>Wed, 28 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Java 泛型解决什么问题，类型擦除是好是坏</title>
      <link>https://ohmygp.com/posts/batch-005-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-10-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：Java 泛型解决了什么问题？什么是类型擦除？通配符的上界下界怎么用？</description>
      <pubDate>Wed, 28 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：游客和房间的最佳匹配，二分图怎么建</title>
      <link>https://ohmygp.com/posts/batch-005-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-10-interview-1</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面大意：若干游客和若干房间，每个游客只对部分房间满意，问怎么分配才能让住下的游客最多（或总满意度最高）。</description>
      <pubDate>Wed, 28 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从海量日志面试题延伸：单机装不下怎么办——分治、外排序与哈希分片</title>
      <link>https://ohmygp.com/posts/batch-005-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-09-knowledge-1</guid>
      <description>之前解析「海量日志里找访问最多的 IP」这道真题时，核心动作只有一个：按 IP 哈希分片。那篇文章把这道题解完就停了，这篇把镜头拉远——分片只是整套「超内存数据处理方法论」的第一步，后面还有片内处理、全局合并，以及从单机走向分布式的那一步迁移。</description>
      <pubDate>Tue, 27 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx 的 upstream 负载均衡，几种策略怎么选</title>
      <link>https://ohmygp.com/posts/batch-005-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-09-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：Nginx 的 upstream 模块有哪几种负载均衡策略，各自适合什么场景？</description>
      <pubDate>Tue, 27 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线程安全的单例模式，五种写法哪个才对</title>
      <link>https://ohmygp.com/posts/batch-005-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-09-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：手写一个线程安全的单例，说说几种写法的差别。</description>
      <pubDate>Tue, 27 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：筛出 2 到 2000 的所有素数，怎么做到尽量快</title>
      <link>https://ohmygp.com/posts/batch-005-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-09-interview-1</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面朴素：输出 2 到 2000 之间的所有素数，怎么写得尽量快？</description>
      <pubDate>Tue, 27 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从存储引擎面试题延伸：InnoDB 的 Buffer Pool、Change Buffer 与写放大治理</title>
      <link>https://ohmygp.com/posts/batch-005-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-08-knowledge-1</guid>
      <description>之前解析「MySQL 的存储引擎有哪几种」这道真题时，主轴是 MyISAM、InnoDB 等引擎的对比选型；这篇往 InnoDB 内部走一步，回答一个更实在的问题：一条 UPDATE 语句发出去，存储引擎内部到底干了多少活？</description>
      <pubDate>Mon, 26 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：脏读、幻读、不可重复读，三个异常各长什么样</title>
      <link>https://ohmygp.com/posts/batch-005-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-08-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。脏读、不可重复读、幻读这三个词几乎人人会背，但面试官真正想看的，是你能不能各写出一个复现过程——说不清「长什么样」的定义，等于没定义。</description>
      <pubDate>Mon, 26 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：HTTP 请求和响应报文里到底有什么</title>
      <link>https://ohmygp.com/posts/batch-005-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-08-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题目问法很朴素：一个 HTTP 请求发出去，线上跑的到底是什么？很多人能说出「有 header 有 body」，但让他说清每一段的职责和边界规则，就开始含糊。</description>
      <pubDate>Mon, 26 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线上内存溢出了，怎么一步步排查</title>
      <link>https://ohmygp.com/posts/batch-005-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。面试官的描述往往很生活化：线上 Java 服务跑了几天，突然开始报 OutOfMemoryError，你怎么查？这道题考的不是背参数，而是一条有顺序的排查链路。</description>
      <pubDate>Mon, 26 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从粘包拆包面试题延伸：应用层协议设计实战——定长、分隔符、长度字段与 TLV</title>
      <link>https://ohmygp.com/posts/batch-005-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-07-knowledge-1</guid>
      <description>之前解析「TCP 为什么会粘包拆包」这道真题时，主轴是成因与解码器的用法；这篇往上游走一步：既然 TCP 只给你一条没有边界的字节流，那么「一条消息从哪开始、到哪结束」本身就是一道设计题——轮到你自己定协议时，这个边界该怎么切？</description>
      <pubDate>Sun, 25 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Nginx 热更新怎么做，为什么能做到不中断服务</title>
      <link>https://ohmygp.com/posts/batch-005-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-07-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题目通常这样问：改完 nginx.conf 为什么要 reload 而不是重启？线上要换新版本的 Nginx 二进制，怎么做到不断连接？</description>
      <pubDate>Sun, 25 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：B+ 树索引一般有几层，能装多少行数据</title>
      <link>https://ohmygp.com/posts/batch-005-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-07-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。面试官常问的是一句大白话：一张千万行的表，走索引查一行要读几次磁盘？这个问题背后是一道定量估算题——B+ 树到底有几层，每一层能放大多少倍。</description>
      <pubDate>Sun, 25 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：25 匹马 5 条赛道，没有计时器怎么找出前三</title>
      <link>https://ohmygp.com/posts/batch-005-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-07-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很短：25 匹马、5 条赛道，每场比赛只能知道同场五匹马的相对名次，没有计时器，问找出全场最快的前三名，最少要比几场？</description>
      <pubDate>Sun, 25 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 MVCC 面试题延伸：数据库并发控制全景——锁、MVCC 与 OCC 怎么选</title>
      <link>https://ohmygp.com/posts/batch-005-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-06-knowledge-1</guid>
      <description>上一篇真题解析讲过隔离级别与 MVCC 快照读的实现，本文不再重复隔离级别细节，而是回答它的上游问题：数据库要管住并发事务，一共有几条技术路线，各自的适用负载是什么？看懂这个谱系，才能把 MVCC 放回它该在的位置。</description>
      <pubDate>Sat, 24 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：多个 Nginx worker 怎么监听同一个端口，惊群问题怎么解决</title>
      <link>https://ohmygp.com/posts/batch-005-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-06-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「多个 worker 进程如何监听同一个端口？如何处理惊群？」是 Nginx 原理题里的常驻款，它实际考两件事：进程间怎么共享监听套接字，以及共享之后怎么防止「一个连接惊醒所有人」。</description>
      <pubDate>Sat, 24 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：epoll 的水平触发和边沿触发，剩下的数据还读得到吗</title>
      <link>https://ohmygp.com/posts/batch-005-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-06-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很具体：水平触发和边沿触发有什么区别；边沿触发下，一个 socket 有 500 字节数据，读了 200 就不再处理，剩下 300 是不是永远读不到了？</description>
      <pubDate>Sat, 24 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Java 反射是什么，框架为什么离不开它</title>
      <link>https://ohmygp.com/posts/batch-005-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「简单介绍 Java 反射机制，反射在哪些地方有应用场景」是两连问：机制答不清是背书，场景答不出是没用过框架。这题的答题骨架是——一条工作链路、一串应用场景、三重代价。</description>
      <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从位图面试题延伸：布隆过滤器、Roaring Bitmap 与海量集合工具箱</title>
      <link>https://ohmygp.com/posts/batch-005-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-05-knowledge-1</guid>
      <description>上一篇真题解析用位图解了「40 亿个整数里判断某个数在不在」这一道题，本文不再重复单题解法，而是把镜头拉远：海量集合问题在工程里有一整个工具箱，位图只是第一件。四件工具各自回答一个不同的问题，选错工具比不会用工具更常见。</description>
      <pubDate>Fri, 23 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数据库视图到底有什么用，能不能直接改</title>
      <link>https://ohmygp.com/posts/batch-005-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-05-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「视图的作用，视图可以更改么」是两连问：第一问考你知不知道它解决什么问题，第二问考你清不清楚它的边界。两个问题都答实了，才算会用视图。</description>
      <pubDate>Fri, 23 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Zookeeper 的 watcher 通知机制，一次注册够用吗</title>
      <link>https://ohmygp.com/posts/batch-005-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-05-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「说说 Zookeeper 的通知机制」考察的不是背概念，而是你有没有在生产上被它的一次性语义咬过：配置改了两次，服务只热更新了一次，第二次静悄悄地丢了。</description>
      <pubDate>Fri, 23 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：给一堆单词，能不能拼出目标串</title>
      <link>https://ohmygp.com/posts/batch-005-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-05-interview-1</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很短：给定 hell、well、hello、world 这样一组单词，问能否拼出 helloworld，要求代码实现。默认规则沿用经典版本：词典里的单词可以重复使用。</description>
      <pubDate>Fri, 23 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从实时数据流面试题延伸：流批一体、水位线与数据管道工程实践全景</title>
      <link>https://ohmygp.com/posts/batch-005-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-04-knowledge-1</guid>
      <description>「设计一个支持数据库、NoSQL 和大数据之间数据实时流动的系统」是面试里的设计大题，那道题的解析主轴是设计问答展开，本文不重复；今天换个角度，把这类系统背后的流处理概念体系讲透——管道怎么搭、乱序怎么办、下游慢了会怎样、「恰好一次」怎么成立。</description>
      <pubDate>Thu, 22 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：TCP 的半打开和半关闭，连接到底断没断</title>
      <link>https://ohmygp.com/posts/batch-005-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「什么是连接的半打开、半关闭状态」看起来像概念背诵题，实际上是长连接编程的生死线：搞不清这两个状态，就会在流式传输里截断数据，或者对着一个对端早已崩溃的连接空等。</description>
      <pubDate>Thu, 22 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数据库变慢了，优化思路按什么顺序展开</title>
      <link>https://ohmygp.com/posts/batch-005-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-04-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「数据库优化的思路」是开放题里的经典，也是区分「背过答案」和「干过活」的试金石：背答案的人会罗列手段，干过活的人会给顺序。</description>
      <pubDate>Thu, 22 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：深拷贝和浅拷贝，复制一个对象有多难</title>
      <link>https://ohmygp.com/posts/batch-005-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「深拷贝和浅拷贝的区别」题面朴素，背后却是线上事故的常客：请求上下文复制给异步任务处理，副本里改了个嵌套字段，主流程的数据跟着变了——这就是共享引用惹的祸。</description>
      <pubDate>Thu, 22 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>屏幕很宽，卡片为什么还挤？CSS 容器查询把问题问对了</title>
      <link>https://ohmygp.com/posts/daily-2026-10-21-03-css-container-layout</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-21-03-css-container-layout</guid>
      <description>想象一个项目管理页面：左侧是任务列表，右侧是详情面板。你把一张原本很好看的任务卡片放进右侧，标题突然被挤成好几行，按钮也贴到了边缘。浏览器明明很宽，为什么卡片还是像住进了小房间？</description>
      <pubDate>Wed, 21 Oct 2026 09:00:00 GMT</pubDate>
    </item>
    <item>
      <title>OpenBSD 8.0 发布：内核地址空间变大，为什么不等于内存变多？</title>
      <link>https://ohmygp.com/posts/daily-2026-10-21-02-openbsd-address-space</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-21-02-openbsd-address-space</guid>
      <description>看到操作系统更新里的“空间扩大”，很容易联想到电脑突然能装下更多东西。但 OpenBSD 8.0 的一项变化，说的是另一层空间：amd64 架构的内核虚拟地址空间从 4G 扩大到 512G。</description>
      <pubDate>Wed, 21 Oct 2026 07:30:00 GMT</pubDate>
    </item>
    <item>
      <title>DeepInfer 开源了：拿到推理引擎，离真正上线还差什么？</title>
      <link>https://ohmygp.com/posts/daily-2026-10-21-01-deepinfer-boundary</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-21-01-deepinfer-boundary</guid>
      <description>一个模型能在机器上生成回答，距离让一群用户稳定使用，还有多远？DeepSeek 的 DeepInfer 给这个问题提供了一个很好的观察窗口：开放底层能力之后，工程边界反而更值得看清。</description>
      <pubDate>Wed, 21 Oct 2026 06:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从高并发面试题延伸：限流、降级与熔断，系统自我保护三板斧</title>
      <link>https://ohmygp.com/posts/batch-005-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-03-knowledge-1</guid>
      <description>「如何设计一个高并发系统」是面试常客，那道题的解析主轴是整体分层架构，本文不重复展开；今天换个角度，聊真正决定系统死活的三件事：限流、熔断、降级。</description>
      <pubDate>Wed, 21 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：IP 地址在数据库里怎么存，为什么不用字符串</title>
      <link>https://ohmygp.com/posts/batch-005-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-03-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「IP 地址如何在数据库中存储」看起来像小事，却是数据建模的基本功：访问日志、审计流水、风控名单里 IP 都是高频字段，存储选型差一个字节量级，在亿级日志表上就是实打实的索引体积与查询性能差距。</description>
      <pubDate>Wed, 21 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Zookeeper 怎么保证事务的顺序一致性</title>
      <link>https://ohmygp.com/posts/batch-005-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Zookeeper 如何保证事务的顺序一致性」是分布式协调方向的高频题。集群里好几台服务器，客户端随便连哪台都能写，凭什么所有节点最后按同一个顺序记账？</description>
      <pubDate>Wed, 21 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：判断两棵二叉树是否相等，递归与迭代两种写法</title>
      <link>https://ohmygp.com/posts/batch-005-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「判断两棵二叉树是否相等」是树题里的入门高频款，题面一句话——相等返回真，否则返回假，并说明算法复杂度。它考的不是思路多巧，而是你能不能把「相等」两个字拆成可执行的判定规则。</description>
      <pubDate>Wed, 21 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 GET/POST 面试题延伸：HTTP 方法语义、幂等性与 API 设计规范</title>
      <link>https://ohmygp.com/posts/batch-005-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-02-knowledge-1</guid>
      <description>「GET 和 POST 有什么区别」这道经典题，核心考点是语义与幂等性的差异，逐项对照我们之前已经拆解过，本文不再重复。今天把镜头拉远：HTTP 不只有两个方法，而是一整套语义谱系；看懂它，设计 API 时方法、状态码、资源命名该怎么选，就有了统一的标尺。</description>
      <pubDate>Tue, 20 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：聚簇索引、覆盖索引、联合索引，索引的种类一张图理清</title>
      <link>https://ohmygp.com/posts/batch-005-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-02-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「索引的工作原理及种类」是 MySQL 面试的主干题，很多人能罗列一堆名词，但混在一起讲——其实它们分属两个坐标轴：一个讲数据怎么组织，一个讲索引怎么服务查询。</description>
      <pubDate>Tue, 20 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：502、503、504 都是服务器错误，到底谁出了问题</title>
      <link>https://ohmygp.com/posts/batch-005-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「50X 错误码的内涵」是网络面试的常见题，背出「服务器内部错误」只能拿一半分——面试官想听的是：在「客户端—网关—上游」这条链路上，每个码各自把锅扣在谁头上。</description>
      <pubDate>Tue, 20 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：ArrayList 和 LinkedList 怎么选，别只背查询快插入快</title>
      <link>https://ohmygp.com/posts/batch-005-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「ArrayList 和 LinkedList 有什么区别」是 Java 集合面试的开胃题，标准答案人人会背：数组查询快、链表插入快。但这句话只说对了一半，而且是最容易误导人的一半。</description>
      <pubDate>Tue, 20 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>本周开源精选：给电视去广告的神器、把 JS 变成神经网络、让《环世界》跑更快的引擎底座</title>
      <link>https://ohmygp.com/posts/daily-2026-10-19-05-open-source-picks</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-19-05-open-source-picks</guid>
      <description>今天这期开源精选，四个项目全都是近期涨星很快的狠角色，而且每个都&quot;有事可讲&quot;：有帮你解决家里电视广告的实际痛点，有把编程语言玩出花的行为艺术，还有游戏引擎界的独立宣言。挨个来看。</description>
      <pubDate>Mon, 19 Oct 2026 12:00:00 GMT</pubDate>
    </item>
    <item>
      <title>一边捐 5% 股份，一边改条款&quot;白嫖&quot;用户数据：AI 巨头的信任之战开打了</title>
      <link>https://ohmygp.com/posts/daily-2026-10-19-04-anthropic-meta-trust</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-19-04-anthropic-meta-trust</guid>
      <description>第一件事：Anthropic（Claude 背后的公司）宣布，在股东批准的前提下，计划把 5% 的股份划入新设立的&quot;公共利益基金&quot;，用于非营利捐赠、定向资助，以及应对 AI 对就业的冲击；而且随着估值上涨还要继续追加——估值每比基准上涨 50%，基金就多得 2% 的股份。</description>
      <pubDate>Mon, 19 Oct 2026 10:30:00 GMT</pubDate>
    </item>
    <item>
      <title>一个坚持了多年的游戏破解社区宣布关闭：杀死它的不是律师，是 AI</title>
      <link>https://ohmygp.com/posts/daily-2026-10-19-03-decomp-dev-ai</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-19-03-decomp-dev-ai</guid>
      <description>最近有个消息在技术圈流传：协作游戏逆向工程网站 decomp.dev 宣布关闭。关闭的原因非常特别——不是因为版权律师函，也不是因为资金断裂，而是因为 AI 让游戏反编译变得太容易了。这个&quot;因为工具太好用手艺人散伙&quot;的故事，值得所有关注 AI 冲击的人细细品味。</description>
      <pubDate>Mon, 19 Oct 2026 09:00:00 GMT</pubDate>
    </item>
    <item>
      <title>15 万星的开源神器被黑，你的 API 密钥可能正在替别人付账单</title>
      <link>https://ohmygp.com/posts/daily-2026-10-19-02-opencode-hack</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-19-02-opencode-hack</guid>
      <description>10 月 17 日晚间，开源 AI 编码工具 OpenCode 在社交平台发布公告：遭遇&quot;大规模蒸馏攻击&quot;，部分用户的 API 密钥泄露。这条消息迅速冲上 Hacker News 热榜（940+ 赞），社区一片哗然。这个消息为什么值得每个用 AI 工具的人都认真看看？</description>
      <pubDate>Mon, 19 Oct 2026 07:30:00 GMT</pubDate>
    </item>
    <item>
      <title>谷歌深夜放大招：Gemini 4 Argon 亮相，一口气输出 100 万 token 是什么概念？</title>
      <link>https://ohmygp.com/posts/daily-2026-10-19-01-gemini-4-argon</link>
      <guid>https://ohmygp.com/posts/daily-2026-10-19-01-gemini-4-argon</guid>
      <description>10 月中旬，谷歌 DeepMind 正式亮出了新一代旗舰模型 Gemini 4 Argon。这个消息在海外技术社区 Hacker News 上拿到了 1400+ 点赞、上千条评论，热度直接霸榜。为什么一个模型发布能引起这么大动静？</description>
      <pubDate>Mon, 19 Oct 2026 06:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从哈希表面试题延伸：冲突处理、扩容与工业级哈希表设计全景</title>
      <link>https://ohmygp.com/posts/batch-005-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-01-knowledge-1</guid>
      <description>「两数之和」这类题很多人都刷过：用哈希表把 O(n²) 的枚举压成 O(n) 的查询。解题套路就那一招，本文不重复展开；今天换个角度，聊这一招背后的东西——哈希表自己是怎么设计的。真要让它撑起几百万个键，冲突处理、负载因子、扩容再散列这些词，就从面试考点变成了实打实的性能开关。</description>
      <pubDate>Mon, 19 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Zookeeper 集群怎么选出 Leader，崩溃恢复怎么走</title>
      <link>https://ohmygp.com/posts/batch-005-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-005-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Zookeeper 如何选举 Leader」是协调服务方向的招牌题，它真正考察的是两件事：选票怎么比，以及新 Leader 凭什么保证不丢已提交的数据。</description>
      <pubDate>Mon, 19 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：ACID 四个特性，到底各自保证什么</title>
      <link>https://ohmygp.com/posts/batch-005-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-005-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「事务的四个特性及含义」是数据库面试的必答题，人人会背 ACID 四个字母，但面试官想听的是：每个特性的语义边界画在哪里，背后靠什么机制兜底。</description>
      <pubDate>Mon, 19 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：删除链表倒数第 N 个节点，一趟遍历怎么做到</title>
      <link>https://ohmygp.com/posts/batch-005-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-005-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「删除链表倒数第 N 个节点」是链表题里的高频款，题面一句话，考点却藏在边界里——很多人能写出答案，但删头节点就翻车。</description>
      <pubDate>Mon, 19 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从缓存淘汰面试题延伸：本地缓存 + Redis 的多级缓存怎么搭</title>
      <link>https://ohmygp.com/posts/batch-004-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-10-knowledge-1</guid>
      <description>上一篇缓存淘汰的真题解析里有个经典设定：MySQL 里两千万条数据，Redis 只装得下二十万条，怎么保证装的都是热点。那篇的答案是淘汰策略的选型。但面试官的下一问往往是：「就算装的都是热点，Redis 扛得住一个超级热点键吗？</description>
      <pubDate>Sun, 18 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：主键用 int 还是 string，不只是存储大小问题</title>
      <link>https://ohmygp.com/posts/batch-004-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-10-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（原题问「使用 int 做 primary key 和使用 string 有什么优劣」），与任何公司的当前招聘无关。</description>
      <pubDate>Sun, 18 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：订单表求销量 Top 10，一条 SQL 怎么写</title>
      <link>https://ohmygp.com/posts/batch-004-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-10-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（原题给出订单记录表结构，要求「写一个语句，求卖得最好的 top 10 productid」），与任何公司的当前招聘无关。这题写出 SQL 只是及格线，真正的考点藏在两个追问里：第 10 名并列了怎么办？表大了性能怎么办？</description>
      <pubDate>Sun, 18 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：C10K 问题是什么，一台机器怎么扛住万级连接</title>
      <link>https://ohmygp.com/posts/batch-004-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-10-interview-1</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（原题问「什么是 C10K 问题，后来是怎么解决的」），与任何公司的当前招聘无关。C10K 本身是个老名词，但它背后的成本模型一点都不过时——大模型的流式长连接、消息推送、在线协同，今天仍站在同一条延长线上。</description>
      <pubDate>Sun, 18 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从锁面试题延伸：InnoDB 的行锁、间隙锁与死锁排查一次讲透</title>
      <link>https://ohmygp.com/posts/batch-004-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-09-knowledge-1</guid>
      <description>凌晨两点，告警群里跳出一条「数据库死锁，事务已回滚」。白天刚在面试里背完「乐观锁、悲观锁、读写锁」的人，这时多半会愣住：策略谱系背得再熟，对着一条死锁日志还是不知道先看哪。</description>
      <pubDate>Sat, 17 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：大数据平台的元数据管理，到底在管什么</title>
      <link>https://ohmygp.com/posts/batch-004-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-09-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（原题问「对大数据平台中的元数据管理是怎么理解的，元数据收集管理体系是怎么样的，会对大数据应用有什么样的影响」），与任何公司的当前招聘无关。</description>
      <pubDate>Sat, 17 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：反向代理到底代理了什么，为什么都在用 Nginx</title>
      <link>https://ohmygp.com/posts/batch-004-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-09-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（原题问「使用反向代理服务器的优点是什么」），与任何公司的当前招聘无关。它看起来是名词解释，实际上考的是你能不能画清一个系统的流量入口——说不清代理层职责的人，架构图里入口永远是一团云。</description>
      <pubDate>Sat, 17 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：围成一圈报数出局，最后留下的是谁</title>
      <link>https://ohmygp.com/posts/batch-004-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-09-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（原题要求输入 M、N，从 1 至 N 循环报数、逢 M 出局并依次输出，写 C 程序），与任何公司的当前招聘无关。它就是著名的约瑟夫环问题，入门但不好糊弄——会背公式的人不少，被追问「为什么加 k」时能讲清楚的不多。</description>
      <pubDate>Sat, 17 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>低成本验证一个 SaaS 小工具：从想法到收到第一笔钱</title>
      <link>https://ohmygp.com/posts/batch-004-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-08-knowledge-1</guid>
      <description>有个做工具的开发者分享过自己的做法：先不急着写产品，做个落地页讲清楚解决什么问题，挂个付费入口看有没有人真掏钱，有人付了再动手开发。靠这套打法，他的小工具上线早期就收到了一笔相当可观的收入。</description>
      <pubDate>Fri, 16 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 集群 failover 之后，数据会不会丢</title>
      <link>https://ohmygp.com/posts/batch-004-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-08-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它有个陷阱式的标准反问：你以为 failover 是「无感切换」，面试官想知道你清不清楚切换瞬间可能丢掉了什么。</description>
      <pubDate>Fri, 16 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：金额相加为什么不能用 double，0.1+0.2 的坑</title>
      <link>https://ohmygp.com/posts/batch-004-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-08-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它是后端面试的常客，因为答错它的代价不是面试挂掉，而是线上账单对不上。</description>
      <pubDate>Fri, 16 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Java NIO 三件套，和 BIO 差在哪</title>
      <link>https://ohmygp.com/posts/batch-004-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它表面考三个类的用法，实际考的是线程模型：为什么 BIO 一个连接要配一个线程，NIO 凭什么一个线程能看住成百上千条连接。</description>
      <pubDate>Fri, 16 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 TIME_WAIT 面试题延伸：线上连接状态异常的排查治理手册</title>
      <link>https://ohmygp.com/posts/batch-004-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-07-knowledge-1</guid>
      <description>凌晨告警：某台网关的连接数曲线陡增，ss 一查，几万条 TIMEWAIT。另一个团队则遇到相反剧本：连接数缓慢爬升不回落，最后耗尽文件句柄，一查是几千条 CLOSEWAIT。</description>
      <pubDate>Thu, 15 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线上 CPU 飙到 100%，给你一台机器怎么查</title>
      <link>https://ohmygp.com/posts/batch-004-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-07-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它是一道纯实战题：没有知识点可背，面试官想听的是一条可操作的定位路径——从整机到一个函数，每一步用什么工具、看什么字段。</description>
      <pubDate>Thu, 15 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：TCP 丢了一个包，后面的包要等吗</title>
      <link>https://ohmygp.com/posts/batch-004-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-07-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它考的不是「会重传」三个字，而是你能不能把丢包之后发送端、接收端、应用层三方各自在干什么讲成一条完整链路。</description>
      <pubDate>Thu, 15 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：1、2、5 凑 100，一共有多少种凑法</title>
      <link>https://ohmygp.com/posts/batch-004-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-07-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它是动态规划的入门形态，但淘汰率不低——因为一半人会把「组合」写成「排列」，答案虚高几个数量级还不自知。</description>
      <pubDate>Thu, 15 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>网站做完没人来？独立开发者必懂的 SEO 流量增长基本功</title>
      <link>https://ohmygp.com/posts/batch-004-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-06-knowledge-1</guid>
      <description>很多技术人做完网站的反应是：功能在线、界面不难看，然后就没有然后了——搜索引擎查不到，自然流量为零。问题通常不出在「内容不够好」这种玄学上，而出在一组非常具体的工程基本功没做。SEO 对技术型网站来说，本质上是一门工程学科：有机制、有清单、有验收方法。</description>
      <pubDate>Wed, 14 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数据库三范式，什么时候该遵守、什么时候该违反</title>
      <link>https://ohmygp.com/posts/batch-004-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-06-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。三范式是数据库理论的老面孔，但面试官真正想听的是后半句：什么时候该违反它。只会背定义的人，解释不了为什么真实业务库里宽表遍地都是。</description>
      <pubDate>Wed, 14 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 分片有哪几条路，客户端、代理、集群怎么选</title>
      <link>https://ohmygp.com/posts/batch-004-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-06-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。单机 Redis 装不下、扛不住之后怎么办，是缓存方向绕不开的系统设计题；面试官想听的不是某条路的细节背诵，而是你能不能把三条路的取舍摆上同一张桌子。</description>
      <pubDate>Wed, 14 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线程的六种状态，一张状态机图说清楚</title>
      <link>https://ohmygp.com/posts/batch-004-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。这道题表面考背诵，实际考的是排障地图：线上线程转储里的每一行状态，都要能翻译成「这个线程此刻在等什么」。</description>
      <pubDate>Wed, 14 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从需求挖掘到网站上线：独立开发者怎么做第一个产品</title>
      <link>https://ohmygp.com/posts/batch-004-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-05-knowledge-1</guid>
      <description>很多工程师做第一个独立产品的轨迹惊人地相似：某天灵光一闪想到个点子，兴奋地写了两三个月代码，打磨到自以为完美，上线，然后——没人来。复盘时大家习惯归咎于「不会推广」，但更常见的原因是顺序错了：先写代码，后验证需求，把最贵的投入押在了最没被验证的假设上。</description>
      <pubDate>Tue, 13 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：把字符串变成序号、序号变回字符串，怎么设计</title>
      <link>https://ohmygp.com/posts/batch-004-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-05-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。这类「字符串和序号互转」的设计题，本质是考察你能不能认出它是一张换皮的进制转换卷。</description>
      <pubDate>Tue, 13 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：用 Zookeeper 实现分布式锁，为什么要用临时顺序节点</title>
      <link>https://ohmygp.com/posts/batch-004-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-05-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。这道题的高频之处在于它不止考「会不会用」，而是追问两个设计动机：为什么节点要临时？为什么还要顺序？</description>
      <pubDate>Tue, 13 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：有序数组平方后，有多少种不同取值</title>
      <link>https://ohmygp.com/posts/batch-004-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-05-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。它看起来是道去重统计题，实际考察的是你能不能发现「输入有序」这份免费信息。</description>
      <pubDate>Tue, 13 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从线程池面试题延伸：线程数到底设多少，别再拍脑袋了</title>
      <link>https://ohmygp.com/posts/batch-004-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-04-knowledge-1</guid>
      <description>线程池的线程数怎么设，几乎是每个后端都被问过的问题。最常见的答案是拍脑袋：「设 200 吧，先跑跑看。」然后某天流量翻倍，线程数不够，请求排队超时；或者反向翻车，线程开太多，上下文切换把 CPU 烧光， throughput 不升反降。</description>
      <pubDate>Mon, 12 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：301 和 302 的区别，不只是永久和临时</title>
      <link>https://ohmygp.com/posts/batch-004-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「301 和 302 有什么区别」看起来是送分题——一个永久一个临时。但面试官想听的是「永久和临时」这四个字在三处产生的实际后果：浏览器缓存、搜索引擎、请求方法。</description>
      <pubDate>Mon, 12 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：inner join、left join、right join，一张图记住</title>
      <link>https://ohmygp.com/posts/batch-004-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-04-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。连接查询的种类是 SQL 面试的基本功题，靠背定义容易混，画两个圆就再也不会错。</description>
      <pubDate>Mon, 12 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：垃圾回收的四种基础算法，各有什么代价</title>
      <link>https://ohmygp.com/posts/batch-004-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「说说垃圾回收算法」是 JVM 面试的保留曲目，平庸的答案是背四个名字，加分的答案是讲清每种算法用什么东西换了什么东西。</description>
      <pubDate>Mon, 12 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>一个网站从 0 到上线要过哪几关？建站部署全流程拆解</title>
      <link>https://ohmygp.com/posts/batch-004-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-03-knowledge-1</guid>
      <description>很多人第一次做网站时的体验是这样的：代码本地跑得好好的，买了域名和服务器之后就开始抓瞎——域名怎么指到服务器？代码怎么上去？为什么浏览器提示「不安全」？其实上线这件事不神秘，它是一条固定顺序的五关流程，每关都有明确的「过关标准」。</description>
      <pubDate>Sun, 11 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 变慢了，从哪几个地方查起</title>
      <link>https://ohmygp.com/posts/batch-004-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-03-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Redis 变慢怎么排查」是缓存运维题的常青款，面试官想听的不是某个偏方，而是一套有顺序、有依据的排查路径。</description>
      <pubDate>Sun, 11 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：重写 equals 为什么必须重写 hashCode</title>
      <link>https://ohmygp.com/posts/batch-004-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。equals 与 hashCode 是 Java 面试的钉子户，几乎人人会背「两个要一起重写」，但能讲清「不一起重写会在哈希容器里炸出什么故障」的人少得多。</description>
      <pubDate>Sun, 11 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：两条链表相交，第一个公共节点怎么找</title>
      <link>https://ohmygp.com/posts/batch-004-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。链表找交点是双指针题里的经典款，面试官真正考察的不是背答案，而是你能否把「对齐剩余路程」这个洞察自己推出来。</description>
      <pubDate>Sun, 11 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从 HTTPS 面试题延伸：证书链、CA 与抓包原理一次讲透</title>
      <link>https://ohmygp.com/posts/batch-004-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-02-knowledge-1</guid>
      <description>面试里被问「HTTP 和 HTTPS 有什么区别」，多数人能答出加密、端口、TLS 握手。但只要追问一句「浏览器凭什么相信这张证书」，能讲清楚的人就少了一大半。</description>
      <pubDate>Sat, 10 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Raft 共识算法，多个节点怎么达成一致</title>
      <link>https://ohmygp.com/posts/batch-004-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-02-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。Raft 是分布式面试的分水岭题目——它背后站着 etcd、Consul 和一大批控制面组件，讲得清 Raft，就拿到了理解这一整类系统的钥匙。</description>
      <pubDate>Sat, 10 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：cookie 和 session 的区别，面试官想听的完整版</title>
      <link>https://ohmygp.com/posts/batch-004-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。cookie 和 session 的区别是网络面试的基本盘，但多数人只答到「一个存客户端一个存服务端」就停了——面试官想听的完整版，还包括它们怎么协作、安全属性怎么配、分布式部署后怎么办。</description>
      <pubDate>Sat, 10 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：String、StringBuffer、StringBuilder 到底怎么选</title>
      <link>https://ohmygp.com/posts/batch-004-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。String 三兄弟是 Java 面试的出场率之王，题面一句话，但它串联着不可变性、内存分配、线程安全三条主线，答出层次和背出定义是两回事。</description>
      <pubDate>Sat, 10 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>同样写代码，为什么有人快十倍？全栈开发者的工具链清单</title>
      <link>https://ohmygp.com/posts/batch-004-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-01-knowledge-1</guid>
      <description>观察两个水平相当的工程师做同一个需求：一个人打开编辑器、手写重复代码、手动切分支、手动敲一长串构建命令，下班前勉强收工；另一个人代码片段秒出、一条别名命令完成提交推送、脚本自动跑完构建部署，下午就开始做下一件事。差距不在天赋，在于后者把大量重复劳动交给了工具链。</description>
      <pubDate>Fri, 09 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 最适合干什么，五种数据结构对号入座</title>
      <link>https://ohmygp.com/posts/batch-004-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-004-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Redis 最适合什么场景」这道题，面试官想听的不是背五种类型名，而是你能否把业务场景映射到正确的结构上——映射错了，性能优势立刻变成事故隐患。</description>
      <pubDate>Fri, 09 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：drop、delete、truncate 都是删，区别在哪</title>
      <link>https://ohmygp.com/posts/batch-004-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-004-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。drop、delete、truncate 是数据库面试的保留节目，题面短，但一口气能问出语句分类、事务行为、日志开销和工程安全意识。</description>
      <pubDate>Fri, 09 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：快速排序为什么快，最坏情况怎么救</title>
      <link>https://ohmygp.com/posts/batch-004-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-004-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。快速排序是排序题里的常青树——人人会背 O(n log n)，但面试官真正想听的是：它为什么快、什么时候不快、不快了怎么救。</description>
      <pubDate>Fri, 09 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从分库分表面试题延伸：分布式 ID 生成方案一次讲透</title>
      <link>https://ohmygp.com/posts/batch-003-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-10-knowledge-1</guid>
      <description>分库分表的文章里总会带一句「主键要用分布式 ID」，然后一笔带过。这句话值得单独讲透：为什么单机自增主键一到分片就失效，主流的四种方案各自拿什么换了什么。</description>
      <pubDate>Thu, 08 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：把一堆有交集的集合，合并成互不重叠的分组</title>
      <link>https://ohmygp.com/posts/batch-003-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-10-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面只有一句话：给若干集合，只要两个集合有公共元素就合并，最终输出若干互不重叠的集合。</description>
      <pubDate>Thu, 08 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：ping 一个 IP 回车之后，发包前系统先做了什么</title>
      <link>https://ohmygp.com/posts/batch-003-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-10-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：输入 ping 加一个 IP，敲下回车，在第一个包真正发出之前，系统做了什么？</description>
      <pubDate>Thu, 08 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：乐观锁、悲观锁、读写锁，原理和选型一次说清</title>
      <link>https://ohmygp.com/posts/batch-003-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-10-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：乐观锁、悲观锁、互斥锁、读写锁的原理、实现与区别，分别怎么选？</description>
      <pubDate>Thu, 08 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>每天重复劳动占一半？用脚本和自动化干掉 80% 的重复工作</title>
      <link>https://ohmygp.com/posts/batch-003-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-09-knowledge-1</guid>
      <description>下班前回顾今天干了什么：从后台导出三张报表，合并成一个表，调格式，截图发到群里；把同一句话术复制粘贴给十几个咨询的人；临下班再手动核对一遍库存数字。真正需要动脑的判断，可能不到工作时间的一半，另一半全是重复动作。</description>
      <pubDate>Wed, 07 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：微服务互相循环调用，会不会出事、怎么破</title>
      <link>https://ohmygp.com/posts/batch-003-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-09-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很生活化：A 服务请求 B 服务的 B1 接口，B1 接口处理过程中又回头请求 A 服务的 A2 接口——这样循环调用，会不会有问题？</description>
      <pubDate>Wed, 07 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MySQL 存储引擎怎么选，InnoDB 凭什么成为默认</title>
      <link>https://ohmygp.com/posts/batch-003-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-09-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面只有一句话：MySQL 的存储引擎有哪几种，怎么选？</description>
      <pubDate>Wed, 07 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数组里缺了两个数，O(n) 时间 O(1) 空间找出来</title>
      <link>https://ohmygp.com/posts/batch-003-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-09-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面：1 到 n+2 这些整数本该全在一个数组里，现在缺了两个，数组乱序。要求 O(n) 时间、O(1) 额外空间，把缺的两个数找出来。</description>
      <pubDate>Wed, 07 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>用大模型只会一问一答？这几个基础概念决定你的使用上限</title>
      <link>https://ohmygp.com/posts/batch-003-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-08-knowledge-1</guid>
      <description>同样用大模型，有人把它用成全天候助手，有人用成高级复读机。差距真的在提示词技巧吗？多数时候不是——是底层概念。不理解模型「怎么工作」，技巧背得再多也是在碰运气。</description>
      <pubDate>Tue, 06 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：一堆数里找出被改过的那个，不用排序怎么做</title>
      <link>https://ohmygp.com/posts/batch-003-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-08-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，出自本地历史面试资料，与任何公司的当前招聘无关。题面：一份原始数据在传输或存储后被改掉了一个数，给你原始副本和篡改后的副本，不许排序，找出改的是哪个数、改成了什么。隐含约束是 O(n) 时间、O(1) 空间。</description>
      <pubDate>Tue, 06 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 和 Memcached 怎么选，区别不只是数据结构</title>
      <link>https://ohmygp.com/posts/batch-003-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-08-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「Redis 和 Memcached 的区别」是缓存选型的经典题，很多人只背出一句「Redis 数据结构多」，面试官顺着持久化、集群、线程模型一路追问，就接不住了。</description>
      <pubDate>Tue, 06 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：CountDownLatch 和 CyclicBarrier，到底差在哪</title>
      <link>https://ohmygp.com/posts/batch-003-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。CountDownLatch 和 CyclicBarrier 都在 java.util.concurrent 包里，名字都绕口，用法都像「等一等」，于是成了并发面试的高频对比题。</description>
      <pubDate>Tue, 06 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>用 AI 做关键词研究：SEO 工作流里哪几步可以交给大模型</title>
      <link>https://ohmygp.com/posts/batch-003-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-07-knowledge-1</guid>
      <description>做内容的人和做独立站的人有一个共同的痛：选题靠猜。吭哧写三天，发出去没人搜、没人看。关键词研究就是治这个病的——先搞清楚用户在搜什么，再决定写什么。</description>
      <pubDate>Mon, 05 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：一个接口要并发调 5 个下游再合并，怎么设计</title>
      <link>https://ohmygp.com/posts/batch-003-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-07-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，属于开放式设计题，出自本地历史面试资料，与任何公司的当前招聘无关。题面：一个接口内部要调用另外 5 个下游接口，每个下游都返回数据，本接口把数据合并后返回给上层。问：可能用到并发包下的哪些类？你会怎么实现？</description>
      <pubDate>Mon, 05 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：长连接和短连接怎么选，保活机制怎么做</title>
      <link>https://ohmygp.com/posts/batch-003-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-07-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「长连接和短连接」听起来像常识题，但面试官的给分点在第二层：成本差异你能算清，保活机制你分不清 HTTP 层和 TCP 层，就露底了。</description>
      <pubDate>Mon, 05 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：正整数变 1 的最少操作次数，贪心为什么成立</title>
      <link>https://ohmygp.com/posts/batch-003-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-07-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。题面很短：给一个正整数 n，每一步如果 n 是偶数就除以 2，如果是奇数可以选择加 1 或减 1，一直处理下去，问最少多少步能变成 1。</description>
      <pubDate>Mon, 05 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>让 AI 写台本和文案：一套能复用的结构化创作流程</title>
      <link>https://ohmygp.com/posts/batch-003-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-06-knowledge-1</guid>
      <description>很多人用 AI 写文案的体验像抽盲盒：同一句要求，今天出稿惊艳，明天出稿离谱；让它写一份完整的活动台本，洋洋洒洒几千字，仔细一看环节时间对不上、调性前后打架。问题不在模型聪不聪明，而在你把「创作」当成了一次性请求——一次要全稿，本质是把结构、内容、风格三件难事同时甩给它。</description>
      <pubDate>Sun, 04 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：建索引之前，先把这几件事想清楚</title>
      <link>https://ohmygp.com/posts/batch-003-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-06-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「创建数据库索引应该怎么考虑」——这道题不问原理，问的是决策。很多人背得出 B+ 树结构，却在生产表上乱建索引：查询没快多少，写入先慢了一截。</description>
      <pubDate>Sun, 04 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：找出字典里所有「兄弟单词」，哈希签名怎么用</title>
      <link>https://ohmygp.com/posts/batch-003-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-06-interview-2</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（给定一个字典，用户输入一个单词，找出它在字典里的全部兄弟单词——字母组成完全相同、仅顺序不同的词，比如 listen 与 silent），与任何公司的当前招聘无关。</description>
      <pubDate>Sun, 04 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：双亲委派为什么要存在，能不能打破、怎么打破</title>
      <link>https://ohmygp.com/posts/batch-003-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「说说你了解的类加载器，可以打破双亲委派吗，怎么打破」——这道题表面考类加载，实际考的是你对「约定为什么存在、何时该开例外」的工程判断力。</description>
      <pubDate>Sun, 04 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>上线数周就刷屏的 AI 写真网站：爆款 AI 产品该怎么拆</title>
      <link>https://ohmygp.com/posts/batch-003-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-05-knowledge-1</guid>
      <description>2023 年夏天，电影《芭比》上映期间，一个此前名不见经传的网站突然在俄语社交媒体刷屏：上传一张自拍，AI 把你变成芭比或肯的玩偶形象，生成结果自带分享欲。</description>
      <pubDate>Sat, 03 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 集群是怎么回事，16384 个槽位怎么工作</title>
      <link>https://ohmygp.com/posts/batch-003-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-05-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「用过 Redis 集群吗，原理是什么」是缓存方向的高频题，答题的分水岭在于：你是背了「16384 个槽」这个数字，还是讲得出槽位、路由、通信、故障转移这条完整链路。</description>
      <pubDate>Sat, 03 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：存储系统里，高优先级任务和公平性怎么兼顾</title>
      <link>https://ohmygp.com/posts/batch-003-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-05-interview-2</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（云计算大数据场景：每天成千上万的任务读写存储，多个作业或用户共享系统时，如何保证优先级和公平性），与任何公司的当前招聘无关。这是一道开放式设计题，没有标准答案，考察的是你把一对矛盾目标拆成机制组合的能力。</description>
      <pubDate>Sat, 03 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：设计一个最大频率栈，push 和 pop 都要快</title>
      <link>https://ohmygp.com/posts/batch-003-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-05-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「最大频率栈」是数据结构设计题的代表：push 照常压栈，pop 弹出的不是最后压入的，而是当前出现次数最多的元素；次数并列时，弹出这些元素里最近压入的那个。要求 push 和 pop 都足够快。</description>
      <pubDate>Sat, 03 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>提示词不够用的时候，微调大模型要走过哪几步</title>
      <link>https://ohmygp.com/posts/batch-003-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-04-knowledge-1</guid>
      <description>你的提示词是不是越写越长？为了让 AI 固定输出某种格式、某种语气，你在提示词里塞了十几条规则、七八个示例，结果它还是隔三差五跑偏。每改一处，另一处又冒出来。到这一步，很多人第一次听说「微调」这个词——但别急，微调不是提示词失效后的默认下一站，它有自己的适用边界和完整流程。</description>
      <pubDate>Fri, 02 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：TCP 的流量控制和拥塞控制，根本不是一回事</title>
      <link>https://ohmygp.com/posts/batch-003-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「说说 TCP 的流量控制和拥塞控制」是网络面试的保留题——两个词都带「控制」，混为一谈的人一抓一把，面试官就靠这个筛人。</description>
      <pubDate>Fri, 02 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数据库事务靠什么实现，undo log 和 redo log 各管什么</title>
      <link>https://ohmygp.com/posts/batch-003-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-04-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「事务的 ACID 靠什么实现」是数据库面试的骨架题——undo log、redo log 两个词人人会背，但「崩溃的那一刻数据库做了什么」能把一半人问倒。</description>
      <pubDate>Fri, 02 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：JVM 堆内存为什么分成 Eden 和两个 Survivor</title>
      <link>https://ohmygp.com/posts/batch-003-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「堆内存为什么分代、为什么是两个 Survivor」是 JVM 面试的常驻题——能画出 Eden、S0、S1 的人很多，能讲清「为什么这么设计」的人不多。</description>
      <pubDate>Fri, 02 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>把大模型变成免费顾问和教练：角色化对话的正确用法</title>
      <link>https://ohmygp.com/posts/batch-003-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-03-knowledge-1</guid>
      <description>你有没有这样的时刻：职业选择上纠结要不要转行，学习一项新技能不知道怎么排计划，或者一个决策翻来覆去想不通。找真人顾问，一小时咨询费动辄几百上千；问朋友，又怕打扰也怕不专业。其实大模型就能顶上这个角色——但前提是你会用。</description>
      <pubDate>Thu, 01 Oct 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：40 亿个整数里，怎么快速判断一个数在不在</title>
      <link>https://ohmygp.com/posts/batch-003-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-03-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。海量数据题是数据处理方向的经典门类，这道「40 亿个整数判断存在性」又是其中出镜率最高的一道——它考的不是算法技巧，是「内存不够时如何表示一个巨大集合」的思维方式。</description>
      <pubDate>Thu, 01 Oct 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Redis 主从复制是怎么同步数据的</title>
      <link>https://ohmygp.com/posts/batch-003-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-03-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。Redis 主从复制是缓存面试的基本盘——多数人会背「全量加增量」，一问「断线十分钟重连会怎样」就开始含糊。区分度就在断线重连这段。</description>
      <pubDate>Thu, 01 Oct 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：二叉搜索树找第 K 小，中序遍历还能再优化吗</title>
      <link>https://ohmygp.com/posts/batch-003-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「二叉搜索树中找第 K 小的节点」是树结构面试的高频题——基础解法人尽皆知，区分度全在追问里：还能再快吗？代价是什么？</description>
      <pubDate>Thu, 01 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>让 AI 写东西总差点意思？8 个进阶技巧把输出质量拉上来</title>
      <link>https://ohmygp.com/posts/batch-003-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-02-knowledge-1</guid>
      <description>你有没有这种体验：让 AI 写一篇文案、一份总结、一封邮件，它每次都规规矩矩写完了，但读完总觉得「差点意思」——像一杯温吞水，挑不出大错，也找不到一句想留下来的话。问题多半不在模型，而在提问方式停留在「一句话下单」的阶段。</description>
      <pubDate>Wed, 30 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：设计一个支持各种数据库秒级备份恢复的系统</title>
      <link>https://ohmygp.com/posts/batch-003-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-02-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料，与任何公司的当前招聘无关。这是一道开放式系统设计题：设计一个备份恢复系统，支持各种类型的数据库，能实现秒级恢复。它没有标准答案，考察的是你能不能把一个模糊需求拆成几个真正要害的工程设计问题。</description>
      <pubDate>Wed, 30 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：GET 和 POST 的区别，只说参数放哪就太浅了</title>
      <link>https://ohmygp.com/posts/batch-003-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「GET 和 POST 有什么区别」大概是网络面试出场率最高的题，也是最容易答浅的题——「参数一个在 URL 一个在请求体」说完这一句，面试官的表情通常不会有任何变化。</description>
      <pubDate>Wed, 30 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：Java 内存模型的 happen-before，到底在保证什么</title>
      <link>https://ohmygp.com/posts/batch-003-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。happen-before 是 Java 并发面试里最容易「背得出、讲不清」的概念——能背规则的人一抓一把，能说清它到底在保证什么的人不多。</description>
      <pubDate>Wed, 30 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>不会写代码，也能定制一个自己的 AI 助手？GPTs 上手全流程</title>
      <link>https://ohmygp.com/posts/batch-003-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-01-knowledge-1</guid>
      <description>你有没有这样的重复动作：每次开一个新对话，都要把同一段背景重新贴一遍——「你是我们的客服助手，语气要亲切，产品资料如下，退货政策是……」。贴到第十次的时候，任何一个正常人都会想：这些东西能不能只讲一次，让 AI 永久记住？</description>
      <pubDate>Tue, 29 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：缓存穿透、击穿、雪崩，三个坑一次分清</title>
      <link>https://ohmygp.com/posts/batch-003-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-003-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。缓存穿透、击穿、雪崩这组题，是缓存面试的「保留曲目」——三个词长得像，成因和药方完全不同，混着答基本等于没答。</description>
      <pubDate>Tue, 29 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：SQL 优化从哪几处下手，最左前缀到底什么意思</title>
      <link>https://ohmygp.com/posts/batch-003-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-003-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。「SQL 优化从哪几处下手」配「最左前缀是什么意思」，是数据库面试的经典组合拳：前者考你有章法，后者考你真懂索引。</description>
      <pubDate>Tue, 29 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：逆序输出一个单向链表，只能遍历一次怎么办</title>
      <link>https://ohmygp.com/posts/batch-003-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-003-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，与任何公司的当前招聘无关。链表逆序输出是链表题里的「入门天花板」——题面一句话，但能一口气问出递归、栈、迭代、边界条件一整串考点。</description>
      <pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>AI 新产品天天有，学不过来怎么办？先建立你的信息筛选规则</title>
      <link>https://ohmygp.com/posts/batch-002-day-10-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-10-knowledge-1</guid>
      <description>先说一个你肯定不陌生的时刻。早上打开信息流，三条「颠覆性」发布、五个「必学」工具、两篇「再不懂就晚了」。你收藏了其中四条，关掉页面，心里浮起熟悉的焦虑：又落后了。到了晚上，收藏夹多四条，脑子里的东西一点没变多。</description>
      <pubDate>Mon, 28 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：10G 个整数只有 2G 内存，中位数怎么找</title>
      <link>https://ohmygp.com/posts/batch-002-day-10-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-10-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「内存装不下，还要算中位数」是海量数据处理的经典题型，面试官想考察的不是排序算法，而是你能否把「排序整个数据集」换成「计数加定位」。</description>
      <pubDate>Mon, 28 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：TCP 粘包拆包是怎么回事，协议设计怎么解</title>
      <link>https://ohmygp.com/posts/batch-002-day-10-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-10-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「TCP 粘包」几乎是网络题里的必考，但面试官真正想听的结论是：粘包不是 TCP 的缺陷，而是字节流的天性——消息边界从来就不存在，除非你自己在应用层定义它。</description>
      <pubDate>Mon, 28 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：CMS 和 G1 垃圾收集器，区别和选型怎么说</title>
      <link>https://ohmygp.com/posts/batch-002-day-10-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-10-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。CMS 与 G1 的对比是 JVM 方向的经典题，但这道题有一个常被忽略的时效点：CMS 已经在 JDK 14 中被正式移除，G1 从 JDK 9 起就是默认收集器。</description>
      <pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>说出来就是初稿？AI 语音笔记怎么把随口说的话整理成文章</title>
      <link>https://ohmygp.com/posts/batch-002-day-09-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-09-knowledge-1</guid>
      <description>先想象一个场景。下班路上你突然想通了一个选题，等电梯的三分钟里对着手机说了一通话：有口头禅，有自相矛盾的半句，还有两次跑题。到家打开电脑，这段话已经变成了一份带标题、分好段、列了要点的初稿，你要做的只是改掉两处说错的事实。</description>
      <pubDate>Sun, 27 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：设计一个在数据库、NoSQL 和大数据之间实时流动的数据系统</title>
      <link>https://ohmygp.com/posts/batch-002-day-09-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-09-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这是一道开放式系统设计题：业务数据产生在数据库里，线上查询要用 NoSQL，离线分析和训练要用大数据平台，如何让数据在三者之间实时流动？</description>
      <pubDate>Sun, 27 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：单表数据量太大，分库分表有哪些拆法</title>
      <link>https://ohmygp.com/posts/batch-002-day-09-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-09-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「单表数据量太大怎么办」是数据库方向的架构题，面试官想听的不是背诵「分库分表」四个字，而是你清不清楚拆开的两种方向、以及拆开之后必然冒出来的新问题。</description>
      <pubDate>Sun, 27 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：KMP 的 next 数组到底在记什么，一次讲明白</title>
      <link>https://ohmygp.com/posts/batch-002-day-09-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-09-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。KMP 是字符串匹配的经典算法，面试官几乎不问「你会不会背」，问的是「next 数组里存的到底是什么」。</description>
      <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>从一个想法到一份 PPT 只要十分钟？AI 文档生成的流程拆解</title>
      <link>https://ohmygp.com/posts/batch-002-day-08-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-08-knowledge-1</guid>
      <description>周报、述职、方案评审，很多人做 PPT 的时间大头不在排版，而在「把脑子里的想法变成结构」。AI 生成 PPT 类工具解决的正是这一段：你给一个想法或一页笔记，它还你一份能讲的初稿。十分钟是真的，但有一个前提——你要知道在哪个环节接手。</description>
      <pubDate>Sat, 26 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：2000 万数据只缓存 20 万，怎么保证留下的都是热点</title>
      <link>https://ohmygp.com/posts/batch-002-day-08-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-08-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。缓存容量只有全量数据的 1%，「怎么保证留下的都是热点」考的不是某个淘汰算法的实现，而是热点识别与策略选型的判断力。</description>
      <pubDate>Sat, 26 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：5000 万个 URL 和 500 个 URL，如何快速找出交集</title>
      <link>https://ohmygp.com/posts/batch-002-day-08-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-08-interview-2</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。海量数据求交集是数据处理面试的经典题型，面试官想看的不是某个数据结构，而是你「先问规模、再选方案」的决策路径。</description>
      <pubDate>Sat, 26 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：volatile 保证了什么，为什么还要 AtomicLong</title>
      <link>https://ohmygp.com/posts/batch-002-day-08-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-08-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「volatile 保证了什么」几乎人人会答「可见性」，面试官真正的落点是下一句：「那用它做计数器行不行？为什么？」</description>
      <pubDate>Sat, 26 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>能扫的艺术二维码是怎么画出来的？看懂 ControlNet 就懂了</title>
      <link>https://ohmygp.com/posts/batch-002-day-07-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-07-knowledge-1</guid>
      <description>刷到过那种看起来像一幅插画、拿手机一扫却能正常跳转的二维码吗？它不是设计师一笔笔画出来的，而是 AI 生成的。这个玩法能成立，靠两块拼图：二维码自身的纠错冗余，和一个叫 ControlNet 的图像控制技术。看懂这两块拼图，你就看懂了整个玩法。</description>
      <pubDate>Fri, 25 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：流量全走一个网关，网关挂了怎么办</title>
      <link>https://ohmygp.com/posts/batch-002-day-07-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-07-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。API 网关是所有流量的总入口，「网关挂了怎么办」考的不是某个组件，而是你对「总入口必然单点」这件事的系统化解法。</description>
      <pubDate>Fri, 25 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：TCP 四次挥手之后，为什么要等一个 TIME_WAIT</title>
      <link>https://ohmygp.com/posts/batch-002-day-07-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-07-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「TCP 为什么是四次挥手」人人会背，面试官真正的杀招是下一句：「主动关闭方最后为什么要等一个 TIMEWAIT？等多久？」</description>
      <pubDate>Fri, 25 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：找数组里第 K 大的数，排序之后再取就慢了</title>
      <link>https://ohmygp.com/posts/batch-002-day-07-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-07-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「数组里第 K 大的元素」几乎人人都会第一反应「排序再取」，面试官真正想听的是后半句：能不能不排完？</description>
      <pubDate>Fri, 25 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>不调别人的产品，自己用 API 搓一个「ChatGPT」要分几步</title>
      <link>https://ohmygp.com/posts/batch-002-day-06-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-06-knowledge-1</guid>
      <description>先想象一个场景。你每天都在用别人做好的对话产品，忽然冒出一个念头：这样一个能聊多轮、记得住上下文的网页，我自己能不能做一个？答案是能，而且比想象中近——大模型厂商把最难的「模型」做成了一次 HTTP 调用，剩下的都是常规 Web 开发。你需要做的是把五块积木拼起来。</description>
      <pubDate>Thu, 24 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：业务全依赖一台 Redis，挂了怎么办</title>
      <link>https://ohmygp.com/posts/batch-002-day-06-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-06-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这道题表面问 Redis，实际考的是你对「单点故障」的完整认识：不是背出「用集群」三个字，而是讲清从单机到主从、哨兵、集群这条演进路上，每一步解决了什么、又留下了什么。</description>
      <pubDate>Thu, 24 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数据库的隔离级别和 MVCC，一题讲透</title>
      <link>https://ohmygp.com/posts/batch-002-day-06-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-06-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「四种隔离级别」是数据库面试的必背题，但只背表格的人过不了追问——面试官真正想要的后半句是：InnoDB 的「可重复读」为什么能做到读写互不阻塞？这就必须讲 MVCC。</description>
      <pubDate>Thu, 24 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：synchronized 和 Lock 到底有什么区别，用哪个</title>
      <link>https://ohmygp.com/posts/batch-002-day-06-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-06-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「synchronized 和 Lock 的区别」是 Java 并发面试的保留曲目，人人都能背出两三条，面试官真正想看的是你能不能把差异组织成一张有结构的对比表，并落到「什么场景…</description>
      <pubDate>Thu, 24 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>公司想用 AI 却不知从哪下手？内部 AI 产品落地的三个阶段</title>
      <link>https://ohmygp.com/posts/batch-002-day-05-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-05-knowledge-1</guid>
      <description>先想象一个场景。季度会上老板拍板：「今年我们要把 AI 用起来。」散会之后没人知道下一步是什么——采购一个账号发给全员？招一个算法团队？直接立项建中台？三个月后最常见的结果是：一批账号没人用，一份 PPT 没人看，一个问题没解决。</description>
      <pubDate>Wed, 23 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：10 个 1G 文件的搜索词，如何按出现频率排序</title>
      <link>https://ohmygp.com/posts/batch-002-day-05-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-05-interview-3</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。海量数据题的内核都一样：内存装不下，就不能把问题整体搬进内存，只能想办法把它切成装得下的若干份——难点从不在「切」，而在「切完之后结果还能不能正确合并」。</description>
      <pubDate>Wed, 23 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：设计一个每秒 5000 次查询的 DNS 缓存，数据结构怎么选</title>
      <link>https://ohmygp.com/posts/batch-002-day-05-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-05-interview-2</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。设计题没有标准答案，但有标准打法——面试官想看的不是你背了哪个框架，而是你能不能把约束一条一条翻译成结构决策。</description>
      <pubDate>Wed, 23 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：数组里出现次数过半的数，O(n) 时间 O(1) 空间怎么做到</title>
      <link>https://ohmygp.com/posts/batch-002-day-05-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-05-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「找数组中出现次数超过一半的元素」这道题，几乎人人都能答出哈希计数，面试官真正想听的是那句进阶要求：O(n) 时间、O(1) 空间，怎么做？</description>
      <pubDate>Wed, 23 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>长文读不完、改写没思路？让 AI 做摘要和改写的正确打开方式</title>
      <link>https://ohmygp.com/posts/batch-002-day-04-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-04-knowledge-1</guid>
      <description>先想象两个每天都在发生的场景。一份五十页的行业报告，你只关心结论和数据，通读要两小时；一段你自己写的草稿，逻辑没问题但语气不对，要改成发给客户的版本。这两件事今天都可以交给 AI，但多数人用错了——把长文整个丢过去说一句「帮我总结一下」，拿到一段正确的废话。</description>
      <pubDate>Tue, 22 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：HTTP 和 HTTPS 的区别，只在多了一个 S 吗</title>
      <link>https://ohmygp.com/posts/batch-002-day-04-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-04-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这题人人都答得出「HTTPS 加密、HTTP 明文」，面试官追问一句「TLS 握手的过程说一下」，就能筛掉一半人——区别不在那个 S，在 S 背后建立安全通道的整套机制。</description>
      <pubDate>Tue, 22 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：取模分片一扩容就翻车？一致性哈希怎么解</title>
      <link>https://ohmygp.com/posts/batch-002-day-04-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-04-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这是一道把「分布式缓存怎么分片」压缩成一行公式的题：公式好背，但它翻车的代价和修复方案的原理，才是面试官真正想听的。</description>
      <pubDate>Tue, 22 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：线程池这几个参数搞不懂，面试肯定挂</title>
      <link>https://ohmygp.com/posts/batch-002-day-04-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-04-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。线程池是 Java 并发面试的高频题，但它的真正考点不是背七个参数的名字，而是能不能讲清楚一个新任务提交之后，线程池内部的决策顺序——这条流程线串起了所有参数的意义。</description>
      <pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>零基础也能让 AI 写出能上架的小程序？对话式编程到底怎么用</title>
      <link>https://ohmygp.com/posts/batch-002-day-03-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-03-knowledge-1</guid>
      <description>先想象一个场景。你想做一个记账小程序，功能就三个：记一笔、按月汇总、导出表格。你不会写代码，但你会把需求说清楚。几年前这条路到此为止，今天你可以打开一个 AI 编程工具，把这句话直接发过去，拿到第一版能跑的代码——这就是「对话式编程」：用自然语言描述需求，AI 生成代码，你负责验…</description>
      <pubDate>Mon, 21 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：明明建了索引，为什么查询还是全表扫描</title>
      <link>https://ohmygp.com/posts/batch-002-day-03-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-03-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这是一道「背得出清单、讲不清原理」的重灾区题目——面试官想听的不是五种失效写法的罗列，而是它们背后同一条原因，以及你怎么证明索引真的没被用上。</description>
      <pubDate>Mon, 21 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>历史题目复盘：海量日志里，如何找出某天访问最多的 IP</title>
      <link>https://ohmygp.com/posts/batch-002-day-03-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-03-interview-2</guid>
      <description>先说明属性：这是一篇历史题目复盘，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。海量数据处理类题目有一个共同的开场白：数据大到内存装不下。这道题也不例外——一天的访问日志可能有几十上百 GB，问：访问次数最多的那个 IP 是谁？</description>
      <pubDate>Mon, 21 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：判断链表有环只是第一步，环的入口怎么找</title>
      <link>https://ohmygp.com/posts/batch-002-day-03-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-03-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「判断链表是否有环」几乎人人会答，面试官真正想听的是后半句：环的入口节点是哪一个？以及为什么这样做是对的。</description>
      <pubDate>Mon, 21 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>输入一段话就能画出图？Stable Diffusion 入门先把这张「地图」看清楚</title>
      <link>https://ohmygp.com/posts/batch-002-day-02-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-02-knowledge-1</guid>
      <description>先想象一个场景。你第一次打开一个 AI 绘画工具，界面上摆着提示词、负面提示词、步数、CFG、种子、VAE、模型版本一串名词，教程里还时不时冒出 CLIP、UNet、latent。你照着抄参数能出图，但只要效果不对就无从下手——因为你看不到整张地图。</description>
      <pubDate>Sun, 20 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：如何设计一个高并发系统，从哪几个层面下手</title>
      <link>https://ohmygp.com/posts/batch-002-day-02-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-02-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。开放式设计题没有标准答案，面试官真正想看的是：面对「高并发」三个字，你是有一套展开框架，还是只会背组件名词。</description>
      <pubDate>Sun, 20 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：更新了数据库，缓存没更新成功怎么办</title>
      <link>https://ohmygp.com/posts/batch-002-day-02-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-02-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。缓存与数据库的一致性问题没有「一招鲜」，考的是你能不能把每种方案的失败场景推演出来。</description>
      <pubDate>Sun, 20 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：HashMap 为什么线程不安全，并发场景该用什么</title>
      <link>https://ohmygp.com/posts/batch-002-day-02-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-02-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这道题表面考一个类的用法，实际考的是你对「并发读写共享数据」这件事有没有工程直觉。</description>
      <pubDate>Sun, 20 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>不联网也能用大模型？把开源模型部署到自己电脑上，没想象中难</title>
      <link>https://ohmygp.com/posts/batch-002-day-01-knowledge-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-01-knowledge-1</guid>
      <description>先想象两个场景。坐长途飞机时没有网络，你想让 AI 帮你改一份文档；或者你在处理一份不方便上传的合同，任何云端 API 都让你心里没底。这两个需求指向同一个答案：把一个开源大模型直接部署在自己的电脑上，断网也能用，数据也不出本机。</description>
      <pubDate>Sat, 19 Sep 2026 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：浏览器输入网址回车后，到底发生了什么</title>
      <link>https://ohmygp.com/posts/batch-002-day-01-interview-3</link>
      <guid>https://ohmygp.com/posts/batch-002-day-01-interview-3</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这道题被称为网络面试的「总纲题」——它本身不难，但回答的颗粒度直接暴露你的网络知识是成体系的还是零散的。</description>
      <pubDate>Sat, 19 Sep 2026 03:00:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：MySQL 索引为什么用 B+ 树，不用平衡二叉树</title>
      <link>https://ohmygp.com/posts/batch-002-day-01-interview-2</link>
      <guid>https://ohmygp.com/posts/batch-002-day-01-interview-2</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。这道题几乎是数据库面试的开场题，但多数人停在「B+ 树矮、IO 少」这一句结论上，被追问「矮多少、少几次」就露怯了。</description>
      <pubDate>Sat, 19 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典题解析：两数之和，为什么哈希表能把 O(n²) 变成 O(n)</title>
      <link>https://ohmygp.com/posts/batch-002-day-01-interview-1</link>
      <guid>https://ohmygp.com/posts/batch-002-day-01-interview-1</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。「两数之和」大概是算法面试里出现频率最高的入门题，但它真正的考点不是会不会做，而是能不能讲清楚复杂度从 O(n²) 降到 O(n) 的那一步是怎么发生的。</description>
      <pubDate>Sat, 19 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>「看着还行」不作数：大模型应用做得好不好，先把评估立起来</title>
      <link>https://ohmygp.com/posts/batch-001-day-10-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-10-knowledge</guid>
      <description>一个做内容的团队给选题工具接上了大模型，自动生成选题分析。上线两周，例会上负责人问：「效果怎么样？」全场沉默几秒，有人答：「看着还行。」——这就是大多数团队的真实状态：应用上线了，评估没上线。</description>
      <pubDate>Fri, 18 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>面试官问：API 一次只能查一个站点，全量数据怎么快速入仓</title>
      <link>https://ohmygp.com/posts/batch-001-day-10-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-10-interview</guid>
      <description>先说场景。面试里遇到这样一道题：一批观测站点的数据要收进数仓，但数据方只给了一个查询 API，一次只能查一个站点的数据。问：怎么方便快速地把所有站点的数据拿全、落进 Hive？本文是历史题目复盘，题目来自本地历史面试资料（见文末来源说明），与任何公司当前招聘无关。</description>
      <pubDate>Fri, 18 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>开完会没人记得待办？把 AI 嵌进流程，会议结束纪要就自己长出来了</title>
      <link>https://ohmygp.com/posts/batch-001-day-09-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-09-knowledge</guid>
      <description>先说一个很多人眼熟的场景。小团队开周会，一小时下来聊了不少事，散会之后没人写纪要，待办事项全凭各自脑子记。下周再开会，上次说好的三件事两件没人动。问题不在人懒，而在「会议产出物」没有一条固定流水线：记录、整理、分发、追踪，每一步都靠自觉，而自觉是最不可靠的环节。</description>
      <pubDate>Thu, 17 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典并发题：程序为什么会死锁？原因、排查、预防一次答全</title>
      <link>https://ohmygp.com/posts/batch-001-day-09-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-09-interview</guid>
      <description>想象面试现场：面试官问，多线程程序为什么会死锁？线上碰见了怎么排查？写代码时又怎么预防？这道题属于经典题解析（历史题目复盘，见文末来源说明），它看起来基础，但能一层层追问下去——只背出「四个必要条件」的候选人，和能讲清排查动作、预防策略的候选人，差距立刻拉开。</description>
      <pubDate>Thu, 17 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>几百篇历史文章想变成 AI 问答助手？先搞懂知识库的三道坎</title>
      <link>https://ohmygp.com/posts/batch-001-day-08-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-08-knowledge</guid>
      <description>先说一个典型场景。一位创作者攒了三百多篇历史文章，想让 AI 学会这些内容，读者提问时直接用他的文章口径来回答。他兴冲冲把文件打包上传，第一步就撞墙：平台提示文件太多、压缩包无法检索。折腾一圈才摸到门道——把 Word 转成纯文本，每十几篇合并成一个文件再传，检索效果立刻好转。</description>
      <pubDate>Wed, 16 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典系统设计题：节点随时扩缩容，批量发送任务怎么尽快跑完</title>
      <link>https://ohmygp.com/posts/batch-001-day-08-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-08-interview</guid>
      <description>想象面试现场：有一百万条消息要发，集群里的机器数量不固定——随时可能扩容加进来几台，也可能缩容被回收几台。问你怎么设计，让任务尽快跑完，还不能漏发、不能重发。</description>
      <pubDate>Wed, 16 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>AI 给你列了五篇参考文献，篇篇查无此文？模型幻觉必须懂</title>
      <link>https://ohmygp.com/posts/batch-001-day-07-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-07-knowledge</guid>
      <description>先说两个真实感很强的场景。你让 AI 帮忙整理某个研究方向的参考文献，它一口气列出五篇：标题、作者、期刊、年份一应俱全，你拿去检索，发现篇篇查无此文。又或者，你完全不懂编程，让 AI 帮你写一个小游戏，它给出了完整代码和自信满满的说明，你复制运行，报错满屏，改了三轮还是跑不起来。</description>
      <pubDate>Tue, 15 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典数据库题：误删了表，MySQL 怎么恢复到昨天下午三点</title>
      <link>https://ohmygp.com/posts/batch-001-day-07-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-07-interview</guid>
      <description>想象面试现场，面试官问：下午三点，有位同事在生产库误执行了一条不带 WHERE 的 DELETE，半张订单表没了。现在让你把数据恢复到两点五十九分，你怎么办？</description>
      <pubDate>Tue, 15 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>让 AI 写长文，写到一半就「失忆」？上下文窗口这堵墙，得会绕</title>
      <link>https://ohmygp.com/posts/batch-001-day-06-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-06-knowledge</guid>
      <description>先看一个常见场景。你让 AI 帮你写一份两万字的行业报告。开头两章像模像样，写到第四章，它开始重复第一章的观点，你半小时前定下的格式要求也被丢得一干二净。你以为是模型「变笨了」，其实它只是「忘了」——它根本看不见那么长的前文。</description>
      <pubDate>Mon, 14 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>经典系统设计题：热点事件突发流量，系统为什么会崩，怎么解</title>
      <link>https://ohmygp.com/posts/batch-001-day-06-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-06-interview</guid>
      <description>想象面试现场，面试官抛出一个开放式问题：某位顶流明星突然官宣恋情，几千万用户同时涌进来刷同一条内容，平台直接崩了。你说说，为什么会崩？架构上怎么解？这类题没有标准答案，考的是你能不能把「崩溃」拆成一条可分析的链路，再逐环给出对策。</description>
      <pubDate>Mon, 14 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>让 AI 干活总像抽盲盒？把提示词写成「工单」，输出就稳了</title>
      <link>https://ohmygp.com/posts/batch-001-day-05-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-05-knowledge</guid>
      <description>先看一个常见场景。周一早上，你让 AI 整理上周的会议纪要。第一次输出像模像样，第二次变成了流水账，第三次干脆漏掉了行动项。你什么都没改，只是又问了一遍。很多人到这一步的结论是「AI 不稳定」，但真正不稳定的，往往是你发出的指令本身。</description>
      <pubDate>Sun, 13 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>50 万个点 1 秒内找出所有「最大点」：这道经典题考的不是代码，是复杂度直觉</title>
      <link>https://ohmygp.com/posts/batch-001-day-05-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-05-interview</guid>
      <description>想象面试后半程，面试官在屏幕上敲出一道题：平面上给 N 个点，如果不存在另一个点的横、纵坐标都严格比它大，就称它为「最大点」。请输出所有最大点，按横坐标从小到大排列。数据范围：N 最大 50 万，坐标是 0 到 10 亿之间的整数且互不重复，时间限制 1 秒。</description>
      <pubDate>Sun, 13 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>搜「发票丢了怎么办」找不到制度文档？向量检索就是来治这个的</title>
      <link>https://ohmygp.com/posts/batch-001-day-04-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-04-knowledge</guid>
      <description>先想象一个搜索场景。你在公司文档库里搜「发票弄丢了怎么报销」，关键词搜索一条结果都没有——制度文件里写的其实是「票据遗失后的费用处理」。字面没有一个词对上，意思明明是一回事。关键词匹配卡壳的地方，正是向量检索的入口。</description>
      <pubDate>Sat, 12 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>面试官问「索引 key 为什么不能太长」，只答「会报错」就输了</title>
      <link>https://ohmygp.com/posts/batch-001-day-04-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-04-interview</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。</description>
      <pubDate>Sat, 12 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>大模型没读过你公司的文档，RAG 凭什么让它对答如流？</title>
      <link>https://ohmygp.com/posts/batch-001-day-03-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-03-knowledge</guid>
      <description>先想象一个场景。你想给团队做一个内部问答助手，新人问「差旅报销怎么填」「这个老接口的参数含义是什么」，助手张口就答。直接问大模型？它从没读过你公司的制度文档，上下文窗口也装不下几百份文件，只能道歉或瞎编。隔壁团队的助手却对答如流。</description>
      <pubDate>Fri, 11 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>面试官问 epoll 和 select 的区别，只背「红黑树」是不够的</title>
      <link>https://ohmygp.com/posts/batch-001-day-03-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-03-interview</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料（见文末来源说明），与任何公司的当前招聘无关。IO 多路复用是网络方向面试的常驻考点，epoll 与 select 的对比几乎必问。</description>
      <pubDate>Fri, 11 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>大模型明明不会上网，凭什么能帮你查天气、读文件、跑代码？</title>
      <link>https://ohmygp.com/posts/batch-001-day-02-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-02-knowledge</guid>
      <description>先想象一个场景。你在做客服机器人，用户问「我的订单到哪了」。大模型回答得滴水不漏：「很抱歉，我无法查询您的订单。」用户流失了。隔壁团队的机器人却直接报出物流单号和当前位置。用的可能是同一个模型，差别只在一件事：有没有给模型接上工具。</description>
      <pubDate>Thu, 10 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>面试手写 LRU 缓存：为什么标准答案是哈希表加双向链表</title>
      <link>https://ohmygp.com/posts/batch-001-day-02-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-02-interview</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试与笔试资料（见文末来源说明），与任何公司的当前招聘无关。缓存淘汰是后端面试的常驻考点，而 LRU 是其中被考得最多的一个。</description>
      <pubDate>Thu, 10 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>同样是大模型，为什么你的只会聊天，别人的已经能自己干活了？</title>
      <link>https://ohmygp.com/posts/batch-001-day-01-knowledge</link>
      <guid>https://ohmygp.com/posts/batch-001-day-01-knowledge</guid>
      <description>先看两个日常场景。第一个：你让 AI 帮你润色一段文案，它输出一版结果，这轮交互就结束了。第二个：你只说「帮我盯着竞品这周的动态，整理成一份简报」，它自己去搜索、阅读、对比、成文，中间搜不到还知道换个关键词再来。</description>
      <pubDate>Wed, 09 Sep 2026 01:30:00 GMT</pubDate>
    </item>
    <item>
      <title>面试手写 sqrt(2) 到小数点后 10 位：一道老题教会你的三件事</title>
      <link>https://ohmygp.com/posts/batch-001-day-01-interview</link>
      <guid>https://ohmygp.com/posts/batch-001-day-01-interview</guid>
      <description>先说明属性：这是一篇经典题解析，题目出自本地历史面试资料，并非任何公司的当前招聘原题。这类「禁用数学库、手写开方」的题目在手写代码环节反复出现，值得吃透。</description>
      <pubDate>Wed, 09 Sep 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>
