<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>小厂面试 on GoClub</title><link>https://go.botsarena.tech/docs/interview/xiaochang/</link><description>Recent content in 小厂面试 on GoClub</description><generator>Hugo</generator><language>zh-cn</language><atom:link href="https://go.botsarena.tech/docs/interview/xiaochang/index.xml" rel="self" type="application/rss+xml"/><item><title>超級の新人哆咔互娱(DECA)Agent开发笔试一面二面</title><link>https://go.botsarena.tech/docs/interview/xiaochang/xinren-duoka-agent-1-2/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/xinren-duoka-agent-1-2/</guid><description>&lt;h1 id="超級の新人-哆咔互娱deca-中国工作室agent-开发-笔试--一面--二面"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;超級の新人 哆咔互娱(DECA 中国工作室)Agent 开发 笔试 + 一面 + 二面&lt;/a&gt;
&lt;/h1&gt;


&lt;h2 id="背景"&gt;背景&lt;a class="anchor" href="#%e8%83%8c%e6%99%af"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;boss 上投的一家外企，公司是做《模拟山羊》、《死亡岛》的厂子的子公司，有点类似上海宝开。待遇感觉还不错，简历过了先进行笔试。岗位为 Agent 开发工程师实习生。&lt;/p&gt;

&lt;h2 id="笔试"&gt;笔试&lt;a class="anchor" href="#%e7%ac%94%e8%af%95"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;考查内容：Agent 工具使用考核&lt;/p&gt;
&lt;p&gt;题目：使用 Pi Coding Agent（用 Pi 为加分项，或顺手的 CLI 工具如 Codex、Claude Code），产出一份 Deca 中国工作室旗下代理的 EVD、KBN 两个游戏的任意主题（比如历史运营活动）的报告，需要提交全程录屏展示。&lt;/p&gt;
&lt;p&gt;说明：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;尝试在不提供给模型 EVD、KBN 游戏全称或任何有关背景信息的情况下，通过上下文工程或工作流提升 Claude Code 的搜索质量，只在「搜集 Deca 中国工作室旗下代理的 EVD、KBN 两个游戏的 XX 主题的信息，产出一份报告」指令下产出完整报告。&lt;/li&gt;
&lt;li&gt;使用 cli-anything 或 agent-browser（加分项）自动完成将文章推送到 B 站、小红书。&lt;/li&gt;
&lt;li&gt;将最佳实践创建为一个 skill（搜索能力增强 + 自动化推送）。&lt;/li&gt;
&lt;li&gt;提交录屏演示。录制一次最终完整的推理过程，以及调试过程中所做的优化。&lt;/li&gt;
&lt;li&gt;展示 Pi 的自定义 Extension 配置（可选，加分项）。&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote class='book-hint '&gt;
&lt;p&gt;感觉还是蛮简单的，直接 Claude Code + WebFetch + Playwright MCP 就完成了。&lt;/p&gt;</description></item><item><title>Tadori1zanai 推云科技面试</title><link>https://go.botsarena.tech/docs/interview/xiaochang/tadori-tuiyun/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/tadori-tuiyun/</guid><description>&lt;h1 id="tadori1zanai-推云科技面试"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;Tadori1zanai 推云科技面试&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;作者：Tadori1zanai&lt;br&gt;
时间：2026.4.27&lt;/p&gt;
&lt;blockquote class='book-hint '&gt;
&lt;p&gt;注：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;回答多数为 AI 生成，仅供参考。&lt;/li&gt;
&lt;li&gt;只记录部分面试和部分问题，部分问题暂无回答。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id="假设有万人级别的学生选课在开课前需要发送上课提醒粒度是分钟级别的如何实现"&gt;假设有万人级别的学生选课，在开课前需要发送上课提醒，粒度是分钟级别的，如何实现？&lt;a class="anchor" href="#%e5%81%87%e8%ae%be%e6%9c%89%e4%b8%87%e4%ba%ba%e7%ba%a7%e5%88%ab%e7%9a%84%e5%ad%a6%e7%94%9f%e9%80%89%e8%af%be%e5%9c%a8%e5%bc%80%e8%af%be%e5%89%8d%e9%9c%80%e8%a6%81%e5%8f%91%e9%80%81%e4%b8%8a%e8%af%be%e6%8f%90%e9%86%92%e7%b2%92%e5%ba%a6%e6%98%af%e5%88%86%e9%92%9f%e7%ba%a7%e5%88%ab%e7%9a%84%e5%a6%82%e4%bd%95%e5%ae%9e%e7%8e%b0"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;这个问题本质是延迟任务调度问题，可以通过延迟队列实现。&lt;/li&gt;
&lt;li&gt;常见方案是使用 Redis ZSet，把提醒时间作为 score，任务内容作为 value。&lt;/li&gt;
&lt;li&gt;后台 worker 定期扫描当前时间之前的任务，然后批量发送提醒。&lt;/li&gt;
&lt;li&gt;发送阶段可以通过消息队列解耦，实现异步发送和削峰。&lt;/li&gt;
&lt;li&gt;可靠性靠任务持久化、失败重试和幂等设计，避免漏发和重复发送。&lt;/li&gt;
&lt;li&gt;规模进一步扩大时，可以按时间分片 ZSet、增加 worker 数量并加入限流，降低单点压力。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;实际工程里可以按时间分桶，例如每分钟一个 key，降低单个 ZSet 过大的风险。&lt;/p&gt;

&lt;h2 id="你认为-ai-编程和人手写代码的本质区别是什么"&gt;你认为 AI 编程和人手写代码的本质区别是什么？&lt;a class="anchor" href="#%e4%bd%a0%e8%ae%a4%e4%b8%ba-ai-%e7%bc%96%e7%a8%8b%e5%92%8c%e4%ba%ba%e6%89%8b%e5%86%99%e4%bb%a3%e7%a0%81%e7%9a%84%e6%9c%ac%e8%b4%a8%e5%8c%ba%e5%88%ab%e6%98%af%e4%bb%80%e4%b9%88"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;AI 编程和人工编程的核心差异在于问题建模和系统决策的责任主体。&lt;/li&gt;
&lt;li&gt;AI 更擅长在明确需求下生成代码，通常关注局部实现。&lt;/li&gt;
&lt;li&gt;工程师需要把模糊需求抽象成问题，并在系统层面做性能、一致性和可维护性权衡。&lt;/li&gt;
&lt;li&gt;AI 生成代码具有概率性，边界条件和复杂场景需要人工 review 和测试兜底。&lt;/li&gt;
&lt;li&gt;实际开发中可以先由人确定设计，再用 AI 辅助生成部分代码，最后由人负责正确性和系统行为。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Tadori1zanai 数脉文芯面试</title><link>https://go.botsarena.tech/docs/interview/xiaochang/tadori-shumaiwenxin/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/tadori-shumaiwenxin/</guid><description>&lt;h1 id="tadori1zanai-数脉文芯面试"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;Tadori1zanai 数脉文芯面试&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;作者：Tadori1zanai&lt;br&gt;
时间：2026.5.5&lt;/p&gt;
&lt;blockquote class='book-hint '&gt;
&lt;p&gt;注：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;回答多数为 AI 生成，仅供参考。&lt;/li&gt;
&lt;li&gt;只记录部分面试和部分问题，部分问题暂无回答。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id="什么样的任务会交给-ai什么样的任务自己完成"&gt;什么样的任务会交给 AI，什么样的任务自己完成？&lt;a class="anchor" href="#%e4%bb%80%e4%b9%88%e6%a0%b7%e7%9a%84%e4%bb%bb%e5%8a%a1%e4%bc%9a%e4%ba%a4%e7%bb%99-ai%e4%bb%80%e4%b9%88%e6%a0%b7%e7%9a%84%e4%bb%bb%e5%8a%a1%e8%87%aa%e5%b7%b1%e5%ae%8c%e6%88%90"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;我一般按照任务的确定性和风险划分。&lt;/li&gt;
&lt;li&gt;模式化、重复性强的任务，比如 CRUD 或简单工具函数，可以使用 AI 提高效率。&lt;/li&gt;
&lt;li&gt;核心业务逻辑、系统设计和高风险部分，比如权限控制、一致性问题，由我自己主导。&lt;/li&gt;
&lt;li&gt;实际开发中通常先确定设计，再用 AI 辅助生成部分代码，最后人工 review 和测试，保证正确性和可维护性。&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id="ai-没有按照预期完成会怎么做"&gt;AI 没有按照预期完成，会怎么做？&lt;a class="anchor" href="#ai-%e6%b2%a1%e6%9c%89%e6%8c%89%e7%85%a7%e9%a2%84%e6%9c%9f%e5%ae%8c%e6%88%90%e4%bc%9a%e6%80%8e%e4%b9%88%e5%81%9a"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;先判断问题类型：需求描述、实现细节、方案设计。&lt;/li&gt;
&lt;li&gt;需求描述问题通过优化 prompt，让输入更明确。&lt;/li&gt;
&lt;li&gt;实现细节问题通过手动调整代码，重点关注边界条件和错误处理。&lt;/li&gt;
&lt;li&gt;方案设计问题回到问题本身重新设计，再继续实现。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Tadori1zanai 欢乐互娱一面</title><link>https://go.botsarena.tech/docs/interview/xiaochang/tadori-huanle-1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/tadori-huanle-1/</guid><description>&lt;h1 id="tadori1zanai-欢乐互娱一面"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;Tadori1zanai 欢乐互娱一面&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;作者：Tadori1zanai&lt;br&gt;
时间：2026.4.21&lt;/p&gt;
&lt;blockquote class='book-hint '&gt;
&lt;p&gt;注：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;回答多数为 AI 生成，仅供参考。&lt;/li&gt;
&lt;li&gt;只记录部分面试和部分问题，部分问题暂无回答。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id="redis如何实现消息队列"&gt;（Redis）如何实现消息队列？&lt;a class="anchor" href="#redis%e5%a6%82%e4%bd%95%e5%ae%9e%e7%8e%b0%e6%b6%88%e6%81%af%e9%98%9f%e5%88%97"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;基于 List 的简单队列：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;生产者使用 &lt;code&gt;LPUSH&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;消费者使用 &lt;code&gt;RPOP&lt;/code&gt; 或 &lt;code&gt;BRPOP&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;主要问题：缺少发布订阅能力，消费者处理失败后消息容易丢失。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;基于 Stream 的完善队列：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;生产者使用 &lt;code&gt;XADD&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;消费者使用 &lt;code&gt;XREADGROUP&lt;/code&gt; 和 &lt;code&gt;XACK&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;XREADGROUP&lt;/code&gt; 读取后消息会进入 PEL（Pending Entries List）。&lt;/li&gt;
&lt;li&gt;消费者异常后，其他消费者可以通过 &lt;code&gt;XCLAIM&lt;/code&gt; 接管消息。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;消息可靠性：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;List 可以用“双队列 + ack”模拟确认机制：&lt;code&gt;BRPOPLPUSH queue processing_queue&lt;/code&gt;，处理成功后 &lt;code&gt;LREM processing_queue msg&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;Stream 内置 PEL 和 ACK 机制，消费后需要 &lt;code&gt;XACK&lt;/code&gt;，超时消息通过 &lt;code&gt;XCLAIM&lt;/code&gt; 重新分配，实现 at-least-once 语义。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;消费速率控制：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;消费者端控制并发数，或者使用令牌桶限制 QPS。&lt;/li&gt;
&lt;li&gt;生产者端监控 &lt;code&gt;XLEN stream&lt;/code&gt;，队列长度超过阈值后拒绝写入或降级。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Redis 队列更适合轻量任务和中小规模异步场景。Kafka 在持久化、分区扩展和吞吐能力上更适合大规模日志流。&lt;/p&gt;

&lt;h2 id="mysql-慢查询如何处理"&gt;MySQL 慢查询如何处理？&lt;a class="anchor" href="#mysql-%e6%85%a2%e6%9f%a5%e8%af%a2%e5%a6%82%e4%bd%95%e5%a4%84%e7%90%86"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;先通过慢查询日志定位慢 SQL，并结合执行频率找出热点查询。&lt;/li&gt;
&lt;li&gt;再用 &lt;code&gt;EXPLAIN&lt;/code&gt; 分析执行计划，重点关注扫描行数、索引命中、&lt;code&gt;filesort&lt;/code&gt; 和临时表。&lt;/li&gt;
&lt;li&gt;索引优化：创建组合索引，让查询条件、排序字段和覆盖字段尽量匹配。&lt;/li&gt;
&lt;li&gt;SQL 优化：减少 &lt;code&gt;select *&lt;/code&gt;，优化 join，避免深分页。&lt;/li&gt;
&lt;li&gt;缓存优化：使用 Redis 缓存热点数据。&lt;/li&gt;
&lt;li&gt;拆分优化：数据超过千万级别时考虑拆分小表；字段很多的大表可以做垂直拆分。&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id="介绍-jwt"&gt;介绍 JWT&lt;a class="anchor" href="#%e4%bb%8b%e7%bb%8d-jwt"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;JWT 是一种基于 JSON 的认证令牌。&lt;/li&gt;
&lt;li&gt;JWT 由 Header、Payload 和 Signature 三部分组成。&lt;/li&gt;
&lt;li&gt;Header 指定签名算法。&lt;/li&gt;
&lt;li&gt;Payload 存放用户信息和过期时间等声明。&lt;/li&gt;
&lt;li&gt;Signature 用于防篡改。&lt;/li&gt;
&lt;li&gt;用户登录后服务端生成 JWT 返回给客户端，客户端后续请求携带 token，服务端验证签名后完成认证。&lt;/li&gt;
&lt;li&gt;JWT 的核心特点是服务端认证链路偏无状态，适合分布式服务横向扩展。&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id="jwt-的缺点"&gt;JWT 的缺点&lt;a class="anchor" href="#jwt-%e7%9a%84%e7%bc%ba%e7%82%b9"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;JWT 一旦派发，在过期之前持续有效。&lt;/li&gt;
&lt;li&gt;常见解决方式是在业务层增加撤销判断，例如黑名单机制。&lt;/li&gt;
&lt;li&gt;可以使用 Redis 维护黑名单，主动失效某个 JWT 时把该 token 或 jti 加入黑名单。&lt;/li&gt;
&lt;li&gt;每次请求先检查 token 是否命中黑名单，再做业务处理。&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id="10-个并发的-goroutine一个-panic-之后其他如何也退出"&gt;10 个并发的 goroutine，一个 panic 之后其他如何也退出？&lt;a class="anchor" href="#10-%e4%b8%aa%e5%b9%b6%e5%8f%91%e7%9a%84-goroutine%e4%b8%80%e4%b8%aa-panic-%e4%b9%8b%e5%90%8e%e5%85%b6%e4%bb%96%e5%a6%82%e4%bd%95%e4%b9%9f%e9%80%80%e5%87%ba"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Go 中如果子 goroutine 发生 panic 且没有被 recover，整个进程会崩溃退出，所有 goroutine 都会停止。面试里通常讨论的是捕获 panic 后如何优雅通知其他 goroutine 退出。&lt;/p&gt;</description></item><item><title>Tadori1zanai 赫鲁斯网络面试</title><link>https://go.botsarena.tech/docs/interview/xiaochang/tadori-helusi/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/tadori-helusi/</guid><description>&lt;h1 id="tadori1zanai-赫鲁斯网络面试"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;Tadori1zanai 赫鲁斯网络面试&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;作者：Tadori1zanai&lt;br&gt;
时间：2026.5.11&lt;/p&gt;
&lt;blockquote class='book-hint '&gt;
&lt;p&gt;注：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;回答多数为 AI 生成，仅供参考。&lt;/li&gt;
&lt;li&gt;只记录部分面试和部分问题，部分问题暂无回答。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id="nosql例如-mongodb和关系型数据库例如-mysql的区别"&gt;NoSQL（例如 MongoDB）和关系型数据库（例如 MySQL）的区别&lt;a class="anchor" href="#nosql%e4%be%8b%e5%a6%82-mongodb%e5%92%8c%e5%85%b3%e7%b3%bb%e5%9e%8b%e6%95%b0%e6%8d%ae%e5%ba%93%e4%be%8b%e5%a6%82-mysql%e7%9a%84%e5%8c%ba%e5%88%ab"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;NoSQL 是非关系型数据库，特点是 schema 灵活。&lt;/li&gt;
&lt;li&gt;NoSQL 对固定表结构依赖弱，易于水平扩展，适合海量数据和高并发场景。&lt;/li&gt;
&lt;li&gt;MySQL 是关系型数据库，表结构明确，支持 SQL、事务、约束和复杂查询。&lt;/li&gt;
&lt;li&gt;MySQL 更适合强一致交易、复杂关联查询和结构化业务数据。&lt;/li&gt;
&lt;li&gt;MongoDB 这类 NoSQL 更适合文档型数据、快速迭代、字段变化频繁和水平扩展场景。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Tadori1zanai 远思智能面试</title><link>https://go.botsarena.tech/docs/interview/xiaochang/tadori-yuansi/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/tadori-yuansi/</guid><description>&lt;h1 id="tadori1zanai-远思智能面试"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;Tadori1zanai 远思智能面试&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;作者：Tadori1zanai&lt;br&gt;
时间：2026.4.28&lt;/p&gt;
&lt;blockquote class='book-hint '&gt;
&lt;p&gt;注：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;回答多数为 AI 生成，仅供参考。&lt;/li&gt;
&lt;li&gt;只记录部分面试和部分问题，部分问题暂无回答。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id="http-请求中服务端-panic-怎么处理返回给客户端什么"&gt;HTTP 请求中，服务端 panic 怎么处理？返回给客户端什么？&lt;a class="anchor" href="#http-%e8%af%b7%e6%b1%82%e4%b8%ad%e6%9c%8d%e5%8a%a1%e7%ab%af-panic-%e6%80%8e%e4%b9%88%e5%a4%84%e7%90%86%e8%bf%94%e5%9b%9e%e7%bb%99%e5%ae%a2%e6%88%b7%e7%ab%af%e4%bb%80%e4%b9%88"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;在 HTTP 服务中，处理请求时发生 panic，通常通过 &lt;code&gt;recover&lt;/code&gt; 捕获异常，避免连接直接中断。&lt;/li&gt;
&lt;li&gt;捕获后记录错误日志，并返回 HTTP &lt;code&gt;500 Internal Server Error&lt;/code&gt; 给客户端。&lt;/li&gt;
&lt;li&gt;生产环境通常通过 middleware 统一处理 panic，实现错误隔离，保证单个请求失败时服务整体继续运行。&lt;/li&gt;
&lt;li&gt;返回给客户端的信息要简洁，内部 stack trace 保留在日志和监控系统中。&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id="微服务的概念"&gt;微服务的概念&lt;a class="anchor" href="#%e5%be%ae%e6%9c%8d%e5%8a%a1%e7%9a%84%e6%a6%82%e5%bf%b5"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;概念：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;把一个大系统拆成多个小服务。&lt;/li&gt;
&lt;li&gt;每个服务只负责一类职责。&lt;/li&gt;
&lt;li&gt;服务之间通过网络通信。&lt;/li&gt;
&lt;li&gt;每个服务可以独立开发、部署和扩缩容。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>橘子瑞米甄选教育面试</title><link>https://go.botsarena.tech/docs/interview/xiaochang/juzi-ruimi-edu/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/juzi-ruimi-edu/</guid><description>&lt;h1 id="橘子瑞米甄选教育面试"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;橘子瑞米甄选教育面试&lt;/a&gt;
&lt;/h1&gt;


&lt;h2 id="一自我介绍与基本情况"&gt;一、自我介绍与基本情况&lt;a class="anchor" href="#%e4%b8%80%e8%87%aa%e6%88%91%e4%bb%8b%e7%bb%8d%e4%b8%8e%e5%9f%ba%e6%9c%ac%e6%83%85%e5%86%b5"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;先做个简单的自我介绍。&lt;/li&gt;
&lt;li&gt;为什么会选择在大二这个时间点出来实习？&lt;/li&gt;
&lt;li&gt;学校目前是结课了吗？&lt;/li&gt;
&lt;li&gt;如果各方面都合适，最快能到岗的时间是什么时候？&lt;/li&gt;
&lt;li&gt;最短实习时长大概能做多久？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="二语言与技术栈选择"&gt;二、语言与技术栈选择&lt;a class="anchor" href="#%e4%ba%8c%e8%af%ad%e8%a8%80%e4%b8%8e%e6%8a%80%e6%9c%af%e6%a0%88%e9%80%89%e6%8b%a9"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;除了 Go 之外，还会其他语言吗？&lt;/li&gt;
&lt;li&gt;一开始学的是 Java，为什么后面会转向 Go？&lt;/li&gt;
&lt;li&gt;你觉得 Go 相比 Java，在个人项目开发体验上有什么优势？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="三go-基础"&gt;三、Go 基础&lt;a class="anchor" href="#%e4%b8%89go-%e5%9f%ba%e7%a1%80"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;你简历上写了深入了解 goroutine，可以简单讲一下 goroutine 和线程相比为什么更轻量吗？&lt;/li&gt;
&lt;li&gt;GMP 模型分别代表什么？&lt;/li&gt;
&lt;li&gt;GMP 中 G、M、P 各自的作用是什么？&lt;/li&gt;
&lt;li&gt;goroutine 泄露是什么？&lt;/li&gt;
&lt;li&gt;有缓冲 channel 和无缓冲 channel 的区别是什么？&lt;/li&gt;
&lt;li&gt;你了解 Go 中的 context 吗？&lt;/li&gt;
&lt;li&gt;context 一般有哪些使用场景？&lt;/li&gt;
&lt;li&gt;Go 里的内存逃逸是什么？&lt;/li&gt;
&lt;li&gt;哪些场景可能会发生内存逃逸？&lt;/li&gt;
&lt;li&gt;变量逃逸到堆上之后，对 GC 有什么影响？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="四feed-流项目"&gt;四、Feed 流项目&lt;a class="anchor" href="#%e5%9b%9bfeed-%e6%b5%81%e9%a1%b9%e7%9b%ae"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;介绍一下你做的 Feed 流系统。&lt;/li&gt;
&lt;li&gt;你说实现了 IP 和账户级别的限流，这个是用 Redis 做的吗？&lt;/li&gt;
&lt;li&gt;Redis 限流用的是什么数据结构和算法？&lt;/li&gt;
&lt;li&gt;为什么选择固定时间窗口，而不是滑动窗口？&lt;/li&gt;
&lt;li&gt;Redis 操作怎么保证原子性？&lt;/li&gt;
&lt;li&gt;Lua 脚本为什么能保证 Redis 操作的原子性？&lt;/li&gt;
&lt;li&gt;你简历里提到的软鉴权模式是什么？&lt;/li&gt;
&lt;li&gt;软鉴权中间件的具体实现逻辑是怎样的？&lt;/li&gt;
&lt;li&gt;如何判断请求是否携带有效 token？&lt;/li&gt;
&lt;li&gt;如果请求没有 token，但是访问的是公共接口，你会怎么处理？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="五agent-项目--mcp--rag"&gt;五、Agent 项目 / MCP / RAG&lt;a class="anchor" href="#%e4%ba%94agent-%e9%a1%b9%e7%9b%ae--mcp--rag"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;介绍一下你的 Agent 系统。&lt;/li&gt;
&lt;li&gt;你用了 MCP，可以解释一下 MCP 是什么吗？&lt;/li&gt;
&lt;li&gt;MCP 解决了什么问题？&lt;/li&gt;
&lt;li&gt;MCP 和普通工具调用有什么区别？&lt;/li&gt;
&lt;li&gt;这个 Agent 项目是你从 0 到 1 写的，还是基于现成项目学习修改的？&lt;/li&gt;
&lt;li&gt;你项目里做了 RAG，知识库里的数据来源是什么？&lt;/li&gt;
&lt;li&gt;RAG 知识库中的数据格式是什么？&lt;/li&gt;
&lt;li&gt;你是怎么对 RAG 文档进行 chunking 的？&lt;/li&gt;
&lt;li&gt;为什么没有按字数切分，而是按 Markdown 标题切分？&lt;/li&gt;
&lt;li&gt;按标题切分有什么优点？&lt;/li&gt;
&lt;li&gt;如果某个标题下面内容特别长，你会怎么处理？&lt;/li&gt;
&lt;li&gt;你提到了 SSE，为什么要用 SSE 做流式输出？&lt;/li&gt;
&lt;li&gt;为什么这里选择 SSE，而不是 WebSocket？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="六网络基础"&gt;六、网络基础&lt;a class="anchor" href="#%e5%85%ad%e7%bd%91%e7%bb%9c%e5%9f%ba%e7%a1%80"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;WebSocket 和 HTTP 的区别是什么？&lt;/li&gt;
&lt;li&gt;WebSocket 适合什么场景？&lt;/li&gt;
&lt;li&gt;WebSocket 是怎么建立连接的？&lt;/li&gt;
&lt;li&gt;WebSocket 和普通 HTTP 请求有什么不同？&lt;/li&gt;
&lt;li&gt;HTTP 和 HTTPS 的区别是什么？&lt;/li&gt;
&lt;li&gt;HTTPS 为什么更安全？&lt;/li&gt;
&lt;li&gt;HTTPS 需要什么证书？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="七行为面问题"&gt;七、行为面问题&lt;a class="anchor" href="#%e4%b8%83%e8%a1%8c%e4%b8%ba%e9%9d%a2%e9%97%ae%e9%a2%98"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;在现阶段积累职业经验这个方向上，你会更激进还是更稳重？&lt;/li&gt;
&lt;li&gt;如果有一个有挑战性的工作，你会怎么判断自己要不要接？&lt;/li&gt;
&lt;li&gt;如果有两个选择：
一个是去中小公司独立负责一个新业务项目；
另一个是去大厂做某个特定业务节点开发；
你会更倾向于哪个？&lt;/li&gt;
&lt;li&gt;你怎么看待大厂 title 和实际项目产出之间的关系？&lt;/li&gt;
&lt;li&gt;你在学业上的短期和长期规划是什么？&lt;/li&gt;
&lt;li&gt;你在求职上的短期和长期规划是什么？&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>深圳多方维面试题</title><link>https://go.botsarena.tech/docs/interview/xiaochang/shenzhen-duofangwei/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/shenzhen-duofangwei/</guid><description>&lt;h1 id="深圳多方维面试题小厂"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;深圳多方维面试题（小厂）&lt;/a&gt;
&lt;/h1&gt;


&lt;h2 id="面试问题"&gt;面试问题&lt;a class="anchor" href="#%e9%9d%a2%e8%af%95%e9%97%ae%e9%a2%98"&gt;#&lt;/a&gt;&lt;/h2&gt;


&lt;h3 id="1-做个简单的自我介绍"&gt;1. 做个简单的自我介绍&lt;a class="anchor" href="#1-%e5%81%9a%e4%b8%aa%e7%ae%80%e5%8d%95%e7%9a%84%e8%87%aa%e6%88%91%e4%bb%8b%e7%bb%8d"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="2-说说你的项目具体有做过部署上线吗"&gt;2. 说说你的项目，具体有做过部署上线吗&lt;a class="anchor" href="#2-%e8%af%b4%e8%af%b4%e4%bd%a0%e7%9a%84%e9%a1%b9%e7%9b%ae%e5%85%b7%e4%bd%93%e6%9c%89%e5%81%9a%e8%bf%87%e9%83%a8%e7%bd%b2%e4%b8%8a%e7%ba%bf%e5%90%97"&gt;#&lt;/a&gt;&lt;/h3&gt;

&lt;blockquote class='book-hint '&gt;
&lt;p&gt;备注：面试官只深入追问了第一个项目；该项目是一个基于 Go 开发的轻量级 TCP 长连接并发服务器框架。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="3-你的项目做过具体压测吗怎么压测的"&gt;3. 你的项目做过具体压测吗，怎么压测的&lt;a class="anchor" href="#3-%e4%bd%a0%e7%9a%84%e9%a1%b9%e7%9b%ae%e5%81%9a%e8%bf%87%e5%85%b7%e4%bd%93%e5%8e%8b%e6%b5%8b%e5%90%97%e6%80%8e%e4%b9%88%e5%8e%8b%e6%b5%8b%e7%9a%84"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="4-你觉得你的项目的瓶颈在哪可以从哪方面改进"&gt;4. 你觉得你的项目的瓶颈在哪，可以从哪方面改进&lt;a class="anchor" href="#4-%e4%bd%a0%e8%a7%89%e5%be%97%e4%bd%a0%e7%9a%84%e9%a1%b9%e7%9b%ae%e7%9a%84%e7%93%b6%e9%a2%88%e5%9c%a8%e5%93%aa%e5%8f%af%e4%bb%a5%e4%bb%8e%e5%93%aa%e6%96%b9%e9%9d%a2%e6%94%b9%e8%bf%9b"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="5-一个-goroutine-的栈空间是多少"&gt;5. 一个 goroutine 的栈空间是多少&lt;a class="anchor" href="#5-%e4%b8%80%e4%b8%aa-goroutine-%e7%9a%84%e6%a0%88%e7%a9%ba%e9%97%b4%e6%98%af%e5%a4%9a%e5%b0%91"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="6-原问题未完整记录"&gt;6. 原问题未完整记录&lt;a class="anchor" href="#6-%e5%8e%9f%e9%97%ae%e9%a2%98%e6%9c%aa%e5%ae%8c%e6%95%b4%e8%ae%b0%e5%bd%95"&gt;#&lt;/a&gt;&lt;/h3&gt;

&lt;blockquote class='book-hint '&gt;
&lt;p&gt;备注：当时的答案是开启两个 goroutine，合计约 4 KB。原问题已经记不清，后来的题目描述是根据答案借助 AI 反推的，准确性待确认。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="7-在-go-中需要处理百万级别的广播该怎么去加速"&gt;7. 在 Go 中需要处理百万级别的广播，该怎么去加速&lt;a class="anchor" href="#7-%e5%9c%a8-go-%e4%b8%ad%e9%9c%80%e8%a6%81%e5%a4%84%e7%90%86%e7%99%be%e4%b8%87%e7%ba%a7%e5%88%ab%e7%9a%84%e5%b9%bf%e6%92%ad%e8%af%a5%e6%80%8e%e4%b9%88%e5%8e%bb%e5%8a%a0%e9%80%9f"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="8-说一下你对-mysql-的了解"&gt;8. 说一下你对 MySQL 的了解&lt;a class="anchor" href="#8-%e8%af%b4%e4%b8%80%e4%b8%8b%e4%bd%a0%e5%af%b9-mysql-%e7%9a%84%e4%ba%86%e8%a7%a3"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="9-mysql-中的聚簇索引和非聚簇索引的区别是什么"&gt;9. MySQL 中的聚簇索引和非聚簇索引的区别是什么&lt;a class="anchor" href="#9-mysql-%e4%b8%ad%e7%9a%84%e8%81%9a%e7%b0%87%e7%b4%a2%e5%bc%95%e5%92%8c%e9%9d%9e%e8%81%9a%e7%b0%87%e7%b4%a2%e5%bc%95%e7%9a%84%e5%8c%ba%e5%88%ab%e6%98%af%e4%bb%80%e4%b9%88"&gt;#&lt;/a&gt;&lt;/h3&gt;


&lt;h3 id="10-你有什么想问的吗"&gt;10. 你有什么想问的吗&lt;a class="anchor" href="#10-%e4%bd%a0%e6%9c%89%e4%bb%80%e4%b9%88%e6%83%b3%e9%97%ae%e7%9a%84%e5%90%97"&gt;#&lt;/a&gt;&lt;/h3&gt;</description></item><item><title>渡边贝塔猫一面</title><link>https://go.botsarena.tech/docs/interview/xiaochang/dubian-betamao-1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://go.botsarena.tech/docs/interview/xiaochang/dubian-betamao-1/</guid><description>&lt;h1 id="渡边贝塔猫一面小厂"&gt;
 &lt;a class="page-home-link" href="https://go.botsarena.tech/"&gt;渡边贝塔猫一面（小厂）&lt;/a&gt;
&lt;/h1&gt;


&lt;h2 id="面试问题"&gt;面试问题&lt;a class="anchor" href="#%e9%9d%a2%e8%af%95%e9%97%ae%e9%a2%98"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;请简单自我介绍一下&lt;/li&gt;
&lt;li&gt;你学的是人工智能专业，为什么会想做后端开发？&lt;/li&gt;
&lt;li&gt;讲讲你对 Go 语言的了解，它有哪些优点？&lt;/li&gt;
&lt;li&gt;Go 语言有哪些比较特殊的语言特性？&lt;/li&gt;
&lt;li&gt;Channel 三连问：无缓冲发数据 / 有缓冲无接收 / 有缓冲无人发&lt;/li&gt;
&lt;li&gt;除了 Channel，哪些需要 make？Slice/Map 特点和注意事项&lt;/li&gt;
&lt;li&gt;Panic 三连问：panic 会怎样 / HTTP 服务中 panic 怎么处理 / 什么情况容易 panic&lt;/li&gt;
&lt;li&gt;MySQL vs Redis 数据分类&lt;/li&gt;
&lt;li&gt;单实例除了 Redis 还有什么缓存方案？&lt;/li&gt;
&lt;li&gt;缓存重建并发竞争怎么解决？&lt;/li&gt;
&lt;li&gt;Redis 数据结构及应用场景&lt;/li&gt;
&lt;li&gt;MySQL 索引：聚簇/非聚簇、回表、命中判断、覆盖索引&lt;/li&gt;
&lt;li&gt;介绍一下 Feed 流项目&lt;/li&gt;
&lt;li&gt;有本地缓存为什么还要 Redis？&lt;/li&gt;
&lt;li&gt;分布式多实例本地缓存的问题&lt;/li&gt;
&lt;li&gt;RabbitMQ 解决什么问题？&lt;/li&gt;
&lt;li&gt;用 goroutine / 任务表 / Redis 实现异步&lt;/li&gt;
&lt;li&gt;消费者失败处理 &amp;amp; 快照机制&lt;/li&gt;
&lt;li&gt;RabbitMQ 消息确认机制&lt;/li&gt;
&lt;li&gt;反问：对实习生的要求？&lt;/li&gt;
&lt;li&gt;反问：内部用 AI 提效吗？&lt;/li&gt;
&lt;li&gt;怎么看加班？&lt;/li&gt;
&lt;li&gt;长期做后端还是可能会变？&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id="参考答案ai-生成"&gt;参考答案（AI 生成）&lt;a class="anchor" href="#%e5%8f%82%e8%80%83%e7%ad%94%e6%a1%88ai-%e7%94%9f%e6%88%90"&gt;#&lt;/a&gt;&lt;/h2&gt;

&lt;blockquote class='book-hint '&gt;
&lt;p&gt;以下答案由 AI 生成，仅供面试复盘参考。&lt;/p&gt;</description></item></channel></rss>