本文字数 4500+ ,阅读时间大约需要 12 分钟。
【掘金一周】本期亮点:
- 9-10月上榜&金选作者公布
- 一文吃透 React 和 Vue 的多节点 diff 原理
- Github上5.3k的游戏!异形工厂的制作思路
- 浅谈系统稳定性与高可用保障的几种思路
- 为什么说MySQL单表行数不要超过2000w?
- 签约作者专栏更新动态
上榜规则:文章发布时间在本期「掘金一周」发布时间的前一个月内;且符合各个栏目的内容定位和要求。
一周“金”选
内容评审们会在过去的一周内对社区深度技术好文进行挖掘和筛选,优质的技术文章有机会出现在下方榜单中,排名不分先后。
前端
一文吃透 React 和 Vue 的多节点 diff 原理 @ 字节跳动技术团队
Vue2使用的双端diff算法,React为什么不用?Vue3为什么使用快速diff算法?本文带你吃透React和Vue的多节点diff算法原理。
Github上5.3k的游戏!异形工厂的制作思路 @ 荆棘鸟Q
很早之前,笔者关注到了Github上一款叫做shapez的高星游戏,是个需要利用开采器,传送带等各种工具来完成每个关卡所需要收集的开采物的游戏。边玩的时候一边感叹:怎么能用JS做出性能这么优秀的高难度逻辑的游戏。现在准备挑战自己做一个!
原生JS手写一个优雅的图片预览功能,带你吃透背后原理 @ 茶无味的一天
本文将用一个极简的例子详细讲解如何用原生JS一步步实现完整的图片预览和查看功能,无任何第三方依赖,兼容PC与H5,介绍了如何仅通过指针事件进行多端统一的事件监听,如何实现触屏双指缩放等,干货满满。
【Canvas实战】仿明日方舟Logo粒子动画 vue3+ts @ 西维
游戏明日方舟的官网令人印象深刻,F12开始审查元素不难发现页面中不少特效都是通过
<canvas>标签实现的。例如阵营Logo的粒子动画,很明显使用了 canvas2d 中的 像素操作,本文就一起研究下它是怎么实现的。
项目里没用过设计模式?看看 Nest.js 怎么用的 @ zxg_神说要有光
设计模式是前人总结的代码架构方式,主要是针对面向对象的代码。不知道大家是否在代码里用过设计模式呢?如果不知道怎么用的话,不妨来看下 Nest.js 是怎么用的吧!
手写 Puppeteer:自动下载 Chromium @ zxg_神说要有光
Puppeteer 是一个网页的自动化测试工具,它支持写一些 JS 脚本来控制浏览器执行一些行为,可以用来跑测试用例,或者用来做爬虫。本文将自己实现一个简易版 puppeteer 来深入理解它,来实现 Chromium 的自动下载。
后端
高并发、高可用、高性能被称为互联网三高架构,这三者都是工程师和架构师在系统架构设计中必须考虑的因素之一。本文就来聊一聊三H中的高可用,也是我们常说的系统稳定性。
日常工作中SQL是必不可少的一项技术,但是很多人不会过多的去关注SQL的两个问题:一是数据量小;二是没有意识到索引的重要性。本文将主要整理 SQL失效场景,帮助解决问题。
为什么说MySQL单表行数不要超过2000w? @ 码猿技术专栏
你是不是经常听到过:“mysql 单表最好不要超过 2000w”,“单表超过 2000w 就要考虑数据迁移了”,“你这个表数据都马上要到 2000w 了,难怪查询速度慢”。所以,为什么说MySQL但表行数不要超过2000w?
字节跳动 kube-apiserver 高可用方案 KubeGateway @ 字节跳动技术团队
KubeGateway 是字节跳动针对 kube-apiserver 流量特征专门定制的七层网关,它彻底解决了 kube-apiserver 负载不均衡的问题,同时在社区范围内首次实现了对 kube-apiserver 请求的完整治理,包括请求路由、分流、限流、降级等,显著提高了 Kubernetes 集群的可用性。
如今流量增长乏力,如何进行科学增长营销?如何降低试错成本?如何设计进行AB实验?AB实验为何值得信赖?
本文从需求背景,业务流程分析,再到实际的技术方案落地,来完整的实现一个优惠券系统。其中使用了多级缓存,用推数据的方式避免缓存穿透,对于超领或少领的场景也进行了分析。
GoFrame的gmap相比Go原生的map,天然支持排序和有序遍历!? @ 王中阳Go
有好多初学GO和GoFrame的小伙伴搞不清楚map怎么用。 不少刚入门的小伙伴都被Go语言中map的无序性“坑过”。为什么Go语言中的map是无序的,如何自定义实现map的排序?
eBPF 技术实践:加速容器网络转发,耗时降低60%+ @ 字节跳动SYSTech
本文通过 BPF 代码演示,并深入进行原理分析,为大家讲解如何缩短报文转发路径,加速内核网络转发的效率,网络转发耗时最多可减少82%。
本文收集一些使用Go开发过程中非常容易踩坑的case,所有的case都有具体的代码示例,以及针对的代码修复方法,以避免大家再次踩坑。通常这些坑的特点就是代码正常能编译,但运行结果不及预期或是引入内存漏洞的风险。
Android
编完 aosp 还在刷机?云安卓了解一下,来试试网页版模拟器吧! @ Mr_万能胶
本文基于现阶段 Android Framework 工程师在开发调试阶段可能遇到的实际问题,向大家介绍了 Google 的云安卓方案,该方案不依赖物理设备,理论上可以为开发调试工作带来极大便利。
Android 插件化中资源错乱的解决方案 @ 字节跳动技术团队
本文介绍了 Android 插件化框架中,插件使用宿主资源时资源错乱的问题,以及错乱的原因、业界通用解决方案、以及字节AppHealth 团队提出的优化方案。
Kotlin Sequence 是时候派上用场了 @ 小鱼人爱编程
在进入Flow世界之前,先来分析Sequence,进而自然延伸到Flow。 通过本篇文章,你将了解到:Java与Kotlin 对集合的处理、Java Stream 的简单使用、Sequence 的简单使用、Sequence 的原理、Sequence 的优劣势。
IOS
APP卡顿会影响用户的操作,损害用户体验,进一步影响用户对APP的评价和留存。卡顿优化一直是客户端性能治理的重要方向之一。本文将分享货拉拉 iOS 端卡顿优化实践。
人工智能
本文对ML编译器进行了介绍。ML编译器始于边缘计算的兴起,这使编译器不再是系统工程师的专属,而是全体ML从业者关心的领域。
还将谈及在边缘设备部署ML模型的两个主要问题:兼容性和性能,并说明编译器如何解决这些问题,以及它的工作原理。本文最后还将提供关于如何通过几行代码来显著提高ML模型速度的参考资料。
OneFlow源码解析:Global Tensor @ OneFlow一流科技
类似于PyTorch中的普通Tensor,在OneFlow中称为Local Tensor。与之相对,OneFlow中还有一个独有的概念——Global Tensor。Global Tensor是指被placement和SBP属性所指定的,一个全局视角下的逻辑Tensor。
图像处理黑科技—破解文档识别难题(PS检测、弯曲拉平、切边切片、摩尔纹) @ 中杯可乐多加冰
视觉感知是人工智能当中特别重要的问题之一,在视觉感知中,文档 文字识别 又是非常重要的计算机视觉技术。
然而目前低质文档图像的识别问题似乎已经成为 AI 技术落地中的瓶颈,文档图像作为一种非结构化数据,其分析识别面临一些技术难点。不过近日出现了破解该难题的“黑科技”,笔者在研究图像处理时深入体验了一次。
程序人生
万字泣血解析割韭菜内幕,程序员别老想着做副业 @ 程序员济颠
用真心打造一个沉淀知识的工具,为学渣如我的道友们,提供助力 @ 闲D阿强
签约作者专栏
本专栏为签约作者专栏,将持续关注其更新动态,统计时间为本期「掘金一周」发布时间的前一个周内。
由于签约作者文章会单独进行稿费结算,因此不会记入掘金一周的奖品发放。
社区活动日历
活动日历
| 活动名称 | 活动时间 | 活动主理人 |
|---|---|---|
| 等级用户专属活动上线啦丨写好文,瓜分6万元现金大奖 | 11月7日 - 12月10日 | @小斗金 |
| ✍🏻 技术专题征文19期 漫谈数据库技术 | 11月1日 - 11月25日 | @小斗金 |
社区官方公告
- 字节技术视频课,会员免费看!
- 创作等级&掘力值全新升级:成长体系优化,新权益解锁
- 掘友用户等级上线啦!
- 💰 学课程还能赚钱?掘金分销来了!
- 你好,我是码上掘金!
- 掘金社区文章推荐规则大更新!什么样的文章不会被推荐?
2022.9-10月金选作者名单
本期「金选作者」为2022年9月至10月登上过 「掘金一周」三期及以上 的作者。 登上「掘金一周」的所有文章,官方都进行了曝光加量,并加入了APP弹窗推送池。恭喜所有持续创作优质的内容的作者,欢迎更多同学加入好文推荐与创作,未来一起携手成长!
| 金选作者 | uid | 上榜次数 |
|---|---|---|
| 张风捷特烈 | 149189281194766 | 3 |
| why技术 | 3702810893364350 | 3 |
| chokcoco | 2330620350437678 | 3 |
| 网易云音乐技术团队 | 4265760847567016 | 3 |
| 恋猫de小郭 | 817692379985752 | 3 |
| 宁在春 | 2859142558267559 | 3 |
| 秃头小苏 | 1359414174686455 | 3 |
| TF男孩 | 615370768790158 | 3 |
9-10月所有上榜作者名单
具体名单见表格:bytedance.feishu.cn/sheets/shtc…
查询方法:进入对应sheet ctrl/command + F 搜掘金昵称或uid
奖品
金选作者奖品:小熊电煮锅+实体证书
上榜作者奖品: 小米牙刷T100
领奖方式
请关注系统消息,系统消息最晚将于 11月9日23:59 前发出,请于 11月15 日晚23:59分前填写问卷。
🏆 掘金一周上榜激励
我们会对上榜作者进行一定的流量扶持和奖励,按双月统计发放 1 次,除此之外,多次上榜的作者还有机会获得官方颁布的 《掘金一周 ·金选作者》实体证书哦!请大家注意“掘金一周”的更新。
📖 投稿专区
大家可以在评论区推荐认为不错的文章,并附上链接和推荐理由,有机会登上下一期。文章创建日期必须在下期掘金一周发布前一个月以内;可以推荐自己的文章、也可以推荐他人的文章。