Immutable.js状态(https://facebook.github.io/immutable-js/)在服务器上,immutable.js与redis是否可以互换?
Immutable.js提供了许多永久不可变的数据结构,包括:列表,>堆栈,地图,OrderedMap,套装,OrderedSet和记录。
这些数据结构是通过使用经由哈希映射尝试和矢量尝试作为普及通过的Clojure>和Scala>结构共享,最小化需要复制或高速缓存数据上的JavaScript现代的虚拟机高效。
Redis的状态(https://redis.io/)
Redis的是一个开源(BSD许可),内存中的数据结构存储,用作数据库,高速缓存和消息代理。它支持数据结构,如字符串,散列,列表,集合,具有范围查询的排序集,位图,超级日志和具有半径查询的地理空间索引。 Redis具有内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性,并通过Redis Sentinel提供高可用性,并通过Redis群集实现自动分区。
在他们的描述中有着相似的语言借给我想我可以用Immutable.js作为一个“轻”的Redis溶液或Redis的作为“重” Immutable.js解决方案来跟踪我的多人的游戏状态(所有活动的游戏州和球员状态)。
- 这些是什么之间的一些关键区别是什么?
- 什么时候应该有人通过redis选择immutable.js?
- 什么时候应该有人选择redis over immutable.js?
目前我无法找到这两个库的比较(当我搜索谷歌或堆栈溢出时),这让我相信我的假设(它们可以用来代替对方)是严重不准确的,但我无法确定或否认这一点。
我不知道,如果他们可以一起使用(除非是在它们不同的上下文和互相恭维)。我认识到Immutable.js专注于处理不可变的结构,而Redis似乎没有专注于此,但仍然存在问题,我不能坚持Immutable.js吗?
这里是我挂了......都提供了内存中的数据结构。如果我不关心持久性,为什么我应该关心我选择的?
要清楚上下文是在服务器上而不是浏览器上,并且如果服务器重置,我不希望服务器状态持久存在(在mongoldb中存储的内容之外)。
绝对不是。 Redis是一个数据库,Immutable是js库。 – Bergi
这两个描述中唯一相似的语言是* data structure *。地狱,一切都只适用于数据结构! – Bergi
我得到Redis是一个数据库,但我为什么要使用它来通过Immutable.js存储应用程序状态?我不确定为什么有人认为这是一个糟糕的问题。 – Underflow