前端新把戏太多了

2024-07-18 13:35:13 +08:00
 tcper

虽然也经常关注新技术发展,不过读了 notion 的文章,发现还是有很多新东西

他们用 sqlite wasm 存储数据,据说能提升性能,然后用到了

这些东西大家用过没?

4650 次点击
所在节点    前端开发
33 条回复
daysv
2024-07-18 13:37:35 +08:00
indexedDB 够用了,本地客户端用原生 sqlite
bojackhorseman
2024-07-18 13:39:32 +08:00
求文章链接
tcper
2024-07-18 13:39:46 +08:00
tcper
2024-07-18 13:41:38 +08:00
@daysv 其实我也没懂他们为啥要用 sqlite wasm ,我记得 indexeddb 也是用 sqlite 实现的,可能 sqlite wasm 提供的 api 更多一点
nomagick
2024-07-18 14:03:07 +08:00
脱裤放屁,怎不在浏览器里运行 windows xp 然后在在 xp 里面运行 winform 呢

有这功夫直接搞个客户端不行么,钱烧的简直是
bojackhorseman
2024-07-18 14:08:51 +08:00
@nomagick 有没有可能人家已经在客户端上做好了,这里说的是在浏览器上的优化。
Dididadada
2024-07-18 14:09:02 +08:00
Comlink 用过,做 webgl 的时候尝试用 offscreencanvas 提升性能,不过本质还是 worker 吧,comlink 就是方便点
wu67
2024-07-18 14:13:15 +08:00
浏览器数据库用 indexedb.
sqlite 是存服务器上的.
其他不知道.
murmur
2024-07-18 14:18:36 +08:00
一个笔记而已,再不折腾就到头了,现在都走 AI 了,也就是说开始革笔记的命了,如果 AI 什么都知道什么都会写我为什么要记笔记
nomagick
2024-07-18 14:19:41 +08:00
@bojackhorseman 这实在没法叫优化,浏览器上完 sqlite 目的是为了提升性能,就算能提升又能提升多少,还不如坐等明年英特尔出新 CPU ,坐等用户换电脑
浏览器里面有了 sqlite ,过两天程序一更新,怎么还来运行 migration 吗,版本多了又怎办,版本多了我的电脑两个月没用,两个月之前的结构你现在还能提供正确的 migration 吗
我浏览器哪天突然崩溃了 sqlite 数据坏了,这又怎么破,每次启动还来修复一下吗

根本就是一种顾前不顾后的行为,简直抓马
niubilewodev
2024-07-18 14:30:33 +08:00
@nomagick 数据是在服务器上的,浏览器端的 sqlite 应该只是为了缓存,加快渲染速度。
有问题重新同步数据就好了。
2020diyige
2024-07-18 14:34:52 +08:00
前端就是有点走火入魔,路走偏了,,越复杂越难搞懂越好,,门槛越高
Leviathann
2024-07-18 14:35:50 +08:00
browser is the new system
retrocode
2024-07-18 14:39:34 +08:00
评论区氛围很奇怪啊, 怎么平常说后端性能优化的时候各个站台这必要那必要的, 到了前端就开始脱裤子放屁没必要了,各个都这么有钱的 all in server 吗
kdwnil
2024-07-18 14:43:13 +08:00
新的发展方向是不断试错试出来的,网页前端搞一大堆花里胡哨的玩意就是希望总能有一个能试对。

用不上不用即可,,这些又不属于必须要有的玩意
C4D4zRNpq9vFSlJW
2024-07-18 14:43:51 +08:00
抱歉 我看错标题了 我反思
qq316107934
2024-07-18 14:45:11 +08:00
感谢分享 前端确实有点像个小 OS 了,能做的事情特别多
paopjian
2024-07-18 14:53:54 +08:00
improved page navigation times by 20 percent in all modern browsers
这么一顿折腾提高了 20%的效率,也不知道他们这优化细节是什么,感觉是像是提前缓存所有数据再拿出来
LuckyLauncher
2024-07-18 15:01:20 +08:00
indexeddb 在使用事务时会拖慢速度,这里有篇介绍文章
https://rxdb.info/slow-indexeddb.html


用 sqlite wasm 可能会加快速度,但是收益能不能超过数据序列化带来的性能问题还不好说
然后用 OPFS 去持久化数据库,这我就不太理解了,这一步性能会比较差,原因跟上面文章提到的差不多,浏览器需要进行一系列的安全检查才会写入文件
Comlink 就是封装了一系列方法帮助你序列化传输数据
LuckyLauncher
2024-07-18 15:06:16 +08:00
看了下文章
Web Locks 他们主要是用来实现单例 sqllite ,也就是不管用户打开了多少个 notion 标签,只会有一个 wasm 的 sqlite 跑在用户的电脑上,其他标签页如果需要进行 sql 操作通过 sharedWork 代理实现,这个思路还挺巧妙的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1058266

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX