V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  dilu  ›  全部回复第 1 页 / 共 78 页
回复总数  1556
1  2  3  4  5  6  7  8  9  10 ... 78  
18 小时 25 分钟前
回复了 dumbbell5kg 创建的主题 数据库 昨天面试的几个 MySQL 和 Redis 的题目,来请教一下
小菜鸡一枚,尝试回答一下,以下答案没查阅资料也没参考楼上大佬们的答案。

1. 这个问题我觉得可以分开讨论一下,首先如果真的只是学校的抢课场景,从经验来说,那就算有并发也不会有很高的并发,在不保证高可用的情况下(如果真是学校抢课,没必要真的做什么高可用吧?)单台 redis 足够支撑需求了,最简单的实现肯定是 setnx ,但是可以从这里延伸一下,例如锁的时长要设置多久,锁过期了怎么办,要不要重试等等八股文,也可以用 lua 脚本,但是缺点是什么巴拉巴拉(掺杂八股文)
但是如果不是简单的学校抢课场景,而是电商的抢购商品这种场景(说时候电商秒杀的八股文和方案大家估计背的比我熟了吧?)既要保证高可用也要数据一致性的情况下,我觉得可以这样设计:

a) 根据以往秒杀时期的数据前提下,前端直接抛弃一部分流量,例如只有 20%的请求才能真正的请求,80%的请求在前端直接抛弃。
b) 秒杀请求进入队列,这样可以把对 redis db 等资源的峰值削平避免服务出现毛刺。由于是秒杀场景,失败了用户也会重试,所以完全可以不在意消息是否会丢失,这种情况下 mq 的性能绝对是能承载主流量的
c) 在消费的时候,再按照商品纬度加锁,这里可以用 redis 集群模式,也可以用 zk 等等组件,调你熟悉的讲,例如你熟悉 redis 的 redlock 那就讲 redlock ,熟悉 zk 脑裂你就讲脑裂

2. reidis 内存满了怎么办?我认为有也得分类讨论(前提是 redis 满了已经导致服务不可用了,如果配置了内存淘汰策略那就不用在乎满不满了)
a) 首先确认这个 redis 里面的数据是不是全是“缓存型数据”,如果是,可以挑一些 topn 的 key 先删一批,先让服务正常可用,然后迅速扩容,如果能动态扩容最好,如果不行先用 rdb 复制一台更高规格的 redis ,然后切换过去。
b) 如果 redis 后面不是传统 MySQL 或者 qps 不高的情况下,直接重启是最好的办法,当然这种情况不太常见,如果 qps 过高可能会直接拖垮 DB 。
c) 这件事的关键是要做好事后复盘、做好防护,避免下次再出问题,一个是要增加 redis 内存监控告警,超过 80%要告警,其次要配置一下 redis 的缓存淘汰策略,(这里也可以卖弄一下 LRU 之类的八股文)。

3. 我认为并发问题就是资源竞争的边界问题,解决并发的问题就是让资源竞争的请求从并行变成串行(加锁),让无序变有序,让混沌变秩序。这里可以卖弄一下读写锁,互斥锁,CAS ,原子操作之类的八股文。



其次,有一些关于面试的经验,想分享给 V 友们。

1. 面试跟谈恋爱是一样的,眼缘最重要,而不是闯关或者解密游戏,答对所有题,写出所有算法,不会决定你能否通过,能通过面试,一个是因为合适,一个是因为眼缘。而我认为后者的占比更大一些,所以建议可以适当处理一下个人形象,面试的时候别太颓废,别太随意。不管是面试还是生活中,看起来让人舒服的人,总能占更多的好处。

2. 面试的时候,问题不会,算法不会是很正常的一件事,计算机的知识没人能做到全都懂,你需要做的是把握面试节奏,让面试官去讨论你熟悉的东西,引导面试官的话题。例如楼主的题目,问你 redis 怎么实现分布式锁,如果你不熟悉 redlock 但是你熟悉 zk 那就说不好意思面试官,xxx 我不太熟,但是 zzz 我用的比较多,zzz 的原理是这样的 balabala 。要把节奏掌握在自己手中。

3. 面试官不一定能决定你是否通过,很多情况下还是 HR 话语权大一些

4. 面试前最好了解一下面试的公司和部门,他们有什么产品?主营什么业务,熟悉一下,对方问起来可以增加一些好感。

5. 面试必问,自我介绍、离职原因、语气薪资,这些问题一定要提前想好避免回答的时候大脑一片空白。
@Wcowin #12 那可以考虑买个香港的虚拟主机,靠谱一些的也不贵 一年 100 以内,服务器不是说不行,就是灵车漂移的 oneman 商家有点多,靠谱的平台又贵
推荐 netlify 吧 够用了
扫描后门的 ban 掉这个 ip 吧
升级 dsm7 Synology Photos 目前看起来是最优解了

转码是因为没洗白,其实半洗白就可以 网上随便找个 sn 半洗白一下就能转码了

是在不行看看 immich 能不能满足你的需求?
onddrive 的话你可以上 office365 的订阅啊,40 一年,1t 空间足够你存很多歌了,还有正版 office 可以用
@karben 字节
@buchikoma 一看就是阿节出来的
160 天前
回复了 fuchish112 创建的主题 NAS 哪里有靠谱的成品黑群晖?
稍微加点,威联通 ts216

不推荐海康 mage20 ,及其的拉垮
162 天前
回复了 huiwang520 创建的主题 程序员 毕业四年多以来的编程经历与感想
rose 大佬就是强,大朱前来支持
162 天前
回复了 valkyrjaE 创建的主题 职场话题 大厂低 p 工作几年的感悟和大实话
确实啊,实际上我并不恨嫡系、圈子,我只恨自己不是老板的嫡系,不在他们的圈子里而已。
很多时候用上一次就能超级回本

我当年花了 300 开了一年半的超级会员,用了其中一个比较简洁的简历模板,投宇宙厂结果进来了直接 double 。

虽然不是因为开了 wps 才进来的,但是如果不开会员,我的精力可能就在找模板上,从而错过这次内推的机会。
没有公网 ip 还能全平台的,就 zerotier
有公网 ip 还全平台的就 tailscale
最大的问题反而在网络传输上吧,如果可以最好还是放在本地缓存,后台起个协程定时刷新就行了。
169 天前
回复了 hjx900 创建的主题 宽带症候群 坐标上海,有什么宽带便宜大碗呢?
pdd 488 一年,电信 200m 不办号卡纯宽带
169 天前
回复了 V2Micheal 创建的主题 职场话题 各位第一份实习是什么?
大四在一个游戏聚合公司做官网,类似一刀 999 的那种游戏集合,然后维护官网 cms 。
招商银行 App
1  2  3  4  5  6  7  8  9  10 ... 78  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1157 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 23:05 · PVG 07:05 · LAX 16:05 · JFK 19:05
Developed with CodeLauncher
♥ Do have faith in what you're doing.