- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个问题是关于NHibernate二级缓存的ReadWrite和NonStrictReadWrite缓存并发策略的区别。
据我了解,当您拥有分布式复制缓存时,这两种策略之间的区别是相关的 - nonstrict 不会保证一个缓存与另一个缓存具有完全相同的值,而严格的读/写应该 - 假设缓存提供程序确实如此适当的分布式锁定。
我不明白的部分是,当您拥有单个缓存或分布式分区(非复制)缓存时,严格与非严格区别有何相关性。它可以相关吗?在我看来,在非复制场景中,时间戳缓存将确保不提供过时的结果。如果它可以是相关的,我想看一个例子。
最佳答案
您认为是对的,在单个目标/线程环境中几乎没有区别。但是,如果您查看缓存提供程序,即使在多线程场景中也会发生一些事情。
一个对象如何从它的修改状态重新缓存在非严格中是不同的。例如,如果您的对象要重新加载更重,但您希望在更新后重新加载而不是为下一个用户支付账单,那么您将看到严格与非严格的不同性能。例如:非严格只是在执行更新后从缓存中转储一个对象...价格是为下次访问而不是更新后事件处理程序的获取支付的。在严格模型中,重新缓存是自动处理的。插入也会发生类似的事情,非严格将不执行任何操作,而严格将落后并将新插入的对象加载到缓存中。
在非严格中,您也有可能发生脏读,因为在读取时缓存未锁定,您将看不到另一个线程对该项目进行更改的结果。严格来说,该项目的缓存键将被锁定,您将被阻止,但会看到绝对最新的结果。
因此,即使在单个目标环境中,如果对象上存在大量并发读取/编辑,那么您就有机会看到不准确的数据。
当执行保存并且正在加载编辑屏幕时,这当然会成为一个问题:认为他们正在编辑对象的最新版本的人确实不是,并且当他们尝试保存时会遇到令人讨厌的惊喜对他们加载的陈旧数据的编辑。
关于nhibernate - Strict vs NonStrict NHibernate 缓存并发策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/109179/
JavaScript 不关心字符串是双引号 "double" 还是单引号 'single'。 ECMAScript 5 严格模式的每个示例都通过双引号中的 "use strict" 启用。我可以执行以
这个问题在这里已经有了答案: What does "use strict" do in JavaScript, and what is the reasoning behind it? (30 个答
对于下面的代码片段 案例 1:严格模式 "use strict" let obj = { method: function(){ console.log(this); }, arr
function useStrict(){ "use strict"; } "use strict";
协议(protocol): http://opengraphprotocol.org/ 声明使用 带有 property 属性的标签. AFAIK,这不是有效的 XHTML 1.0 Strict 值。
我研究了一些库,它们似乎不包含文件或函数级别的 "use strict"; 行。因此,如果开发人员启用严格模式,那么我们如何知道库是否兼容?可能会有一些奇怪的功能或浏览器特定问题,这些问题在启用严格模
如果我们的 html 文件(导入外部 js 文件)已经有“use strict”,我们是否需要在外部 js 文件中加入“use strict”? 如果我们的外部 js 文件没有“use strict”
我相信这里的每个人都知道我们无法在不破坏 IE 兼容性的情况下为 XHTML 提供具有正确 MIME 类型 (application/xhtml+xml) 的页面,并且任何使用 text/html 提
我将这些定义放在一个文件中: x = 'a' : 'b' : 'c' : [] y = ['a', 'b', 'c'] (重要的是在文件中定义它们,而不是在 GHCi 中,因为在后一种情况下,事情变得
我想在 javascript 中使用 "use strict"; 模式,但在严格警告方面存在一些问题。我有一个“小部件”,例如: var Widget = function () { /* ... *
inline void addHeader(T value) { if(sizeof(T) > m_outputBufferStart) { std::clog <<
为什么 XHTML 1.0 Strict 显示的行高比 XHTML 1.0 Transitional 中相同值的行高显示得大? 因此,这将下推表格单元格中的内容(即 Firefox 中的 Hotmai
ECMAScript5中引入的严格模式,通过让JavaScript运行环境对一些开发过程中最常见和不易发现的错误做出和当前不同的处理,来让开发者拥有一个”更好”的JavaScript语言。很长一段时
I. Strict Mode阐述 根据 mysql5.0以上版本 strict mode (STRICT_TRANS_TABLES) 的限制: 1).不支持对not null字段插入null值
本文分享自华为云社区《JS/TS里的"use strict"严格模式是什么?》,作者: gentle_zhou。 在日常JS/TS项目开发过程中,经常会在文件开头看到"use strcit"字样,这里
在本教程中,您将借助示例了解 JavaScript 的“严格模式”语法。 在 JavaScript 中,‘use strict’; 声明代码应该在“严格模式”下执行。这使得编写良好且安全的 J
我在学习 JS 时遇到了“use strict”。然后,这里Should I 'use strict' for every single javascript function I write? @B
嗨我最近一直在使用下面的命令 Ffmpeg -i song.mp3 -loop 1 -i image.jpg -filter_complex \ "[0:a]showfreqs=mode=line:a
如果 use strict;,我有几行代码可以工作被注释掉了。但是,我不想仅仅因为一小部分而在整个脚本中禁用它。 我需要重新编码,或者以某种方式禁用 use strict;暂时,然后重新启用它。第一个
在 Angular 10 中,您可以使用 ng new --strict 创建一个新项目。 Enabling this flag initializes your new project with a
我是一名优秀的程序员,十分优秀!