问题标签 [write-through]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
362 浏览

.net - .NET 的后写缓存的 Redis 可扩展性

是否可以利用 Redis 为 .NET 创建后写式或直写式缓存?理想情况下,透明缓存由单个进程写入并支持从数据库中加载丢失的数据,并每隔一段时间持久化脏块?

我已经搜索了几个小时,也许 google-fu 太生疏了,但我找不到类似的东西,但这似乎是一个常见的场景。

所以我基本上有两个问题:

  1. 有没有办法扩展 Redis(或这样的实现已经存在)以使其定期转发脏块或从持久存储中加载丢失的块?

  2. 如果不是,那么在 Redis 中实施的适当方法是什么:

    a) 发送“请求”功能并等待数据出现在 Redis 中(写入进程想要更新块,因此它通知数据进程将块加载到 Redis 中,然后等待块出现在缓存中) ,

    b) 数据服务定期轮询脏块(查找脏块,原子清除脏标志,保存到磁盘)?

0 投票
0 回答
11 浏览

caching - 写入时的缓存一致性?可能吗?

在直写中,高速缓存和主存是同时写入的。但是主存比主存慢得多。因此,在写入高速缓存之后,直到主内存写入完成之前存在时间间隔。因此,在此期间,如果某些 io 设备获取该特定数据,那么它将获得错误的值。所以肯定有不一致的地方。是否有可能,如果是,那么如何克服?

0 投票
0 回答
8 浏览

caching - 直写缓存如何处理丢失的写入,为什么?

我被告知单字阻止直写缓存忽略命中或未命中,而只是写入缓存和缓冲区/内存。为什么呢?