字节测开一面凉经

怎么说呢,感觉跟我看的面经不太一样,和我准备的更是大相径庭

1、自我介绍
2、项目拷打
    (1) 我感觉是我不太理解面试官的问题。面试官问 “怎么实现登录模块,鉴权保证,业务完备性”,我听起来感觉是这个意思。然后大概互相掰扯大概下面几个方面:
密码传输加密(HTTPS + 前端哈希)与存储强哈希(BCrypt);
多因素认证与失败次数限制(防暴力破解);
会话安全管理(JWT/Redis + 过期策略);
攻击防御(SQL 注入、CSRF、XSS)与日志审计。

但是似乎感觉面试官不是很满意我的回答,觉得我的回答很多是技术相关的。蒟蒻牛真的想不到要怎么回答啊啊啊啊啊。求牛友解答。
然后面试官就继续根据我回答的一些内容,可能是感兴趣的,问:
对称加密和非对称加密。
JWT怎么实现,然后我就讲了一下这个的组成,讲了JWT的三部分,再简单结合我的项目讲了一下JWT场景使用的流程。
后面好像还延伸了一些问题,好像是跟我上面掰扯的几个方面详细问了一下。因为后面还有个笔试,忘记了。

我们这个项目遇到的挑战。直接巴拉巴拉讲了一堆,项目上线遇到的一些问题反馈和解决方案。然后顺带问了一下项目里面的MQ的幂等性和可靠性。

然后引出“明天高考,如果考生想要查看高考分数,应该怎么高效快速得知自己的分数”。
因为前面面试官铺垫“河南省,很多考生,高考查分”,然后我的侧重点就再高并发和可用性啥的上面了,但是面试官说不是想问这个,说是想要查看“某一个考生的分数”,经过一波(忘记了)的说明/提示,说是要用怎样的排序算法,能够快速知道自己的分数/成绩。
然后,脑子里全是快排和归并排序,胡编乱造分数的随机性啥的,选了个归并排序,结果面试官(提示?)强调分数只有0到150(我的理解是分数上限是固定而且比较小的),然后我回答“桶排序”,似乎面试官是想要这个答案?
继续问问什么使用桶排序,(完蛋了,排序还是两年前学的,现在都没怎么记得少用的排序桶排序了,就掰扯了一小会)。
面试官继续问“如果使用桶排序的话,怎么查到这个考生的成绩,复杂度是多少?”,怕什么来什么,最后似乎记错了,然后就拷打收尾了。

我不知道为什么只问第二个项目,而且还是问“登录模块”的,其实还有一个项目是青训营做的微服务项目,但是似乎面试官不感兴趣,难道是那个项目是学校团队合作做的?已经上线使用了?嗯嗯嗯,不理解,求解。

最后:算法题:leetcode678(非hot100),没刷到,感觉这个题很熟悉,但是似乎没做过(可能之前算法比赛训练有做过,但是忘记了),大概讲了一下思路,然后面试官问了一下时间复杂度、空间复杂度。
反问:业务

end:只能说,跟tencent的真的很不一样的面试提问
全部评论
啥部门呀
点赞 回复 分享
发布于 06-08 22:48 江苏
可怕,我马上也要面这个
点赞 回复 分享
发布于 06-08 17:47 辽宁

相关推荐

05-28 19:08
已编辑
门头沟学院 Java
突然收到面试邀请,而且没有hr电话直接就甩了个晚上的面试链接。自我感觉答得不好,估计是挂了,但面试官人很好,氛围相对轻松。public、protected、default、private​重写和重载区别JVM内存模型​类加载过程,字节码加载过程​OOM​AOP​讲讲RPC​算法题:二分查找+测试用例​TCP/IP四层模型​,那一层是IP、那一层是端口​TCP和UDP区别​三次握手及为什么三不能是两次GET和POST区别​Linux 的命令​,查看CPU情况介绍一下做过的项目​电商退款有哪些测试用例​死锁是什么及其原因​慢查询原因及如何定位慢查询​什么字段适合建立索引?innoDB跟myISAM...
一笑而过2222:1. Linux查看CPU情况:使用 top 可实时查看系统CPU整体及各进程占用率,按 1 能展示每个核心运行状态; htop 以可视化界面增强交互性; mpstat -P ALL 精准统计每个CPU核心负载; lscpu 输出CPU架构、缓存等硬件信息; vmstat 综合展示CPU、内存、IO等资源使用趋势; sar -u 基于历史数据统计CPU负载; nproc 直接获取CPU核心数量。实际分析时,先用 top 快速定位异常,再结合 mpstat 等深入排查。 2. 电商退款测试用例:功能测试覆盖全额/部分退款、不同发货状态处理、退款金额计算及多渠道返还;异常测试包含重复退款、越权操作、网络中断恢复;业务规则聚焦退款时效控制、优惠券分摊逻辑、高频退款风控;同时补充兼容性(多终端适配)和性能测试(高并发场景响应),保障退款流程稳定可靠。 3. 死锁及其原因:死锁是多进程/线程因资源竞争形成互相等待、无法推进的阻塞状态,需同时满足互斥(资源独占)、请求保持(占有资源时请求其他资源)、不可剥夺(资源不能被强制释放)、循环等待(形成资源等待环路)四个条件。常见于数据库事务交叉锁定、多线程无序获取锁等场景,可通过资源预分配、顺序加锁预防,依赖日志或线程Dump分析检测。 4. 慢查询原因及定位:慢查询根源在于索引失效(未命中或设计不当)、数据量过大导致全表扫描、复杂查询(嵌套子查询、大量JOIN)、锁冲突(行锁升级表锁)、服务器资源瓶颈(CPU/IO过载)。定位时,先启用慢查询日志并用 pt-query-digest 分析高频慢SQL,再通过 EXPLAIN 剖析执行计划,结合 SHOW ENGINE INNODB STATUS 排查锁等待,必要时借助 Performance Schema 监控资源消耗。 5. 适合建索引的字段:优先对高频出现在 WHERE 、 JOIN 、 ORDER BY 子句中的字段建索引,尤其是高选择性字段(如身份证号、手机号);组合索引遵循最左前缀原则;写入频繁字段谨慎建索引,避免影响性能;大字段类型可使用前缀索引优化查询。 6. InnoDB与MyISAM区别:InnoDB支持事务、外键和行级锁,采用聚簇索引存储数据,适合高并发读写场景,具备崩溃恢复能力;MyISAM使用表级锁,无事务支持,索引与数据分离存储, COUNT(*) 统计高效,但不适用于写密集业务。生产中InnoDB用于核心交易模块,MyISAM适用于只读统计类表。 7. InnoDB锁及表锁升级:InnoDB提供共享锁、排他锁、间隙锁等多种锁机制,并通过MVCC减少冲突。表锁升级常发生于SQL无法命中索引引发全表扫描、大事务更新大量数据导致自适应哈希索引失效、执行 ALTER TABLE 等DDL操作,以及死锁检测后强制升级场景。优化需确保索引覆盖查询,拆分大事务降低锁粒度。
查看20道真题和解析
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务