返回首页
24小时热榜
这实际上是一个可索引的 BSON 数组,具有查询监听、复制和基本的崩溃恢复功能。
在我进行小项目时,我总是觉得需要某种简单的存储方式,只需一个文件。然而,SQLite 的模式和迁移总让我感觉不太舒服,像是为了一个单文件数据库而使用一整套迁移文件夹,这显得有些过于复杂。JSON 文件需要一次性加载,对于一些小而厚的微服务来说,它们需要保存自己的状态,这会导致启动时的时间成本。
因此,最初的想法是创建一个“可索引且可部分加载的 JSON 对象数组”。从一开始,我就选择用 Zig 编写它,与我其他项目中频繁更换实现语言不同,原因仅仅是我希望能在尽可能多的地方使用它。因此,它的水平与 C/C++、Rust 和 Zig 相当。C 语言很棒,但我真的不太喜欢它们。经过初步尝试后,Rust 让我感到有些压迫,因此通过排除法,我最终选择了这个蜥蜴语言。
我已经在这个项目上工作了大约一年,期间学习了 Zig,重新学习了内存管理,并添加了新功能。在这段时间里,我主要将其与 SQLite 进行比较,并从中学到了很多。最终,在调优之后,我觉得性能对我来说已经足够接近(至少在我笔记本上的基本基准测试中是这样)。
现在它是我在移动应用中通过 Flutter 插件使用的小引擎,以及在我的小型后端中使用 bun ffi 和 Node 原生模块。如果它能解决其他人的痛点,那就太好了。欢迎提出任何问题。
大多数色彩调色板在强红移/夜间模式色彩过滤器积极抑制绿色和蓝色通道时会失效。我制作了一个不会失效的调色板。
Ember 拥有终端、图表、热图和用户界面调色板,经过设计和测试,确保在红移和非红移条件下都尽可能易于区分……这样就不会再出现重复的颜色(更糟糕的是,颜色消失的问题也解决了!)。
在2017年,我在Medium上开始了一系列名为“JavaScript是如何工作的”的文章。这个系列的目的是向网页开发者解释浏览器内部实际发生的事情。一些最受欢迎文章的统计数据(纯自然流量)如下:
* V8引擎内部 + 5个优化代码的技巧:488K浏览量 / 128K阅读量
* 引擎、运行时和调用栈概述:423K / 166K
* 内存管理 + 如何处理4种常见内存泄漏:421K / 77K
目前这个博客大约有11K的关注者,几乎全是开发者。
当时每篇文章的结尾都有对我创业公司的宣传,这也是我写这些文章的真正原因。我的公司被收购后,我保留了这个博客,并去掉了宣传内容。
在博客活跃的时候,有几个人和公司询问是否可以购买它,还有一些希望在上面做广告。但当时这些都没有意义,所以我都拒绝了。
如今我没有时间,老实说也没有灵感去写那种长篇的技术文章。但将它闲置在那里感觉有些浪费。
博客链接:https://medium.com/@zlatkov
那么你会如何处理这个博客呢?我真的很好奇。