刺客 ⚡️ - 杀死缓慢的网页
Assassin 致力于杀死阻塞 UI 的数据库事务。
数据库操作可能会很慢,但是现有的数据库都没有以明显的方式解决这个问题:将困难的任务外包给网络工作者。
我想创建一个数据库:
- 开源
- 有响应
- 去中心化
- 针对网络工作者进行了优化
- 专为私人浏览而设计
这就是我使用 JavaScript 创建自己的数据库的原因。
特征 ?
? 轻量级:客户端代码少于 100 行。
⚖️ 去中心化:您的数据库没有单点故障。如果服务器出现故障,您的数据也可以轻松检索。
? 适用于隐私浏览:我研究了 LevelDB、PouchDB 和 Gun 等数据库,它们依赖 IndexedDB 进行客户端存储。我希望这些数据库有效,但我最终创建了这个数据库,部分原因是 IndexedDB 在隐私浏览中被禁用,这意味着这些数据库都不适合我。
方法:
- Killer.connect(url) - 连接到服务器。
- Killer.create(key,value) - 向数据库添加一个条目。
- Killer.update(key,new value) - 更新数据库中某个键的值。
- Killer.delete(key) - 删除数据库中的条目。
- 读取数据库 - 在 Web Worker 或主线程中,您可以通过名为 database 的变量访问数据库。
建筑学:
- 数据模型:Assassin 是一个键/值存储,支持将键映射到相应的值。
- 系统架构:DAT 协议在多台计算机之间分发和托管数据,因此没有一个存储数据的位置。 Assassin 依靠 DAT 协议进行数据持久化。键值对的元数据存储在分布式 trie 结构中。
- 隔离级别:隔离级别由数据库的最终用户确定。 Assassin 被设计为具有较低的隔离级别。
- 存储模型:Assassin 将数据发送到服务器,然后服务器将元数据存储在基于 DAT 协议构建的分布式文件系统 Hyperdrive 中。数据本身在多个对等点之间分发和托管。
- 高度可用:Assassin 高度可用且最终一致。当发生冲突时,Assassin 总是保存对数据库所做的最后编辑。此 CRDT 稍后可能会更改。
为什么叫刺客?
- 我的个人网站目前使用 Gun 数据库。
- Gun有很多我喜欢的功能,而且创始人也很nice。
- 枪对我不起作用了。
- Gun 的存储适配器 RAD 依赖于 IndexedDB,它在隐私浏览中被禁用。
- Gun 通过 WebRTC 点对点同步数据,在 Web Worker 中不起作用。
- Assassin 有点(说真的,非常小)像 Gun,但适用于网络工作者。
- 枪手=刺客?
用 构建?
- Hyperdrive - 感谢您在 DAT 协议之上构建抽象层!
- HTML - 用于创建网络演示
- CSS - 用于设置 Web 演示的样式
- JavaScript - 用于逻辑
- Node.js - 服务逻辑
请务必分享您的意见:
- 刺客 GitHub 存储库
- Gitter 服务器
如果你真的想帮助 Assassin 变得更好,请为 GitHub 存储库做出贡献!
Assassin 是开源的,而且永远都是。
支持我:
- Ko-Fi
在 GitHub 上为存储库加注星标,发推文,并在您的朋友、团队和联系人之间分享!
以上是Assassin ⚡️ - 一个开源、免费的数据库,用于杀死缓慢的网页的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript框架的强大之处在于简化开发、提升用户体验和应用性能。选择框架时应考虑:1.项目规模和复杂度,2.团队经验,3.生态系统和社区支持。

引言我知道你可能会觉得奇怪,JavaScript、C 和浏览器之间到底有什么关系?它们之间看似毫无关联,但实际上,它们在现代网络开发中扮演着非常重要的角色。今天我们就来深入探讨一下这三者之间的紧密联系。通过这篇文章,你将了解到JavaScript如何在浏览器中运行,C 在浏览器引擎中的作用,以及它们如何共同推动网页的渲染和交互。JavaScript与浏览器的关系我们都知道,JavaScript是前端开发的核心语言,它直接在浏览器中运行,让网页变得生动有趣。你是否曾经想过,为什么JavaScr

Node.js擅长于高效I/O,这在很大程度上要归功于流。 流媒体汇总处理数据,避免内存过载 - 大型文件,网络任务和实时应用程序的理想。将流与打字稿的类型安全结合起来创建POWE

Python和JavaScript在性能和效率方面的差异主要体现在:1)Python作为解释型语言,运行速度较慢,但开发效率高,适合快速原型开发;2)JavaScript在浏览器中受限于单线程,但在Node.js中可利用多线程和异步I/O提升性能,两者在实际项目中各有优势。

JavaScript起源于1995年,由布兰登·艾克创造,实现语言为C语言。1.C语言为JavaScript提供了高性能和系统级编程能力。2.JavaScript的内存管理和性能优化依赖于C语言。3.C语言的跨平台特性帮助JavaScript在不同操作系统上高效运行。

JavaScript在浏览器和Node.js环境中运行,依赖JavaScript引擎解析和执行代码。1)解析阶段生成抽象语法树(AST);2)编译阶段将AST转换为字节码或机器码;3)执行阶段执行编译后的代码。

Python和JavaScript的未来趋势包括:1.Python将巩固在科学计算和AI领域的地位,2.JavaScript将推动Web技术发展,3.跨平台开发将成为热门,4.性能优化将是重点。两者都将继续在各自领域扩展应用场景,并在性能上有更多突破。

Python和JavaScript在开发环境上的选择都很重要。1)Python的开发环境包括PyCharm、JupyterNotebook和Anaconda,适合数据科学和快速原型开发。2)JavaScript的开发环境包括Node.js、VSCode和Webpack,适用于前端和后端开发。根据项目需求选择合适的工具可以提高开发效率和项目成功率。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

记事本++7.3.1
好用且免费的代码编辑器