问题标签 [consistency]
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.
c# - 如何保持长时间运行的 NHibernate Session 数据一致?
我在 ASP.NET 会话中缓存了 NHibernate 会话。
我遇到了一种情况,用户编辑了一个对象,因此它位于 ISession 的一级缓存中。然后另一个用户编辑了同一个对象。
此时,用户 1 仍然可以看到其编辑的原始版本,而用户 2 可以看到对象的正确状态?
什么是处理这个问题的正确方法,而不是一直为每个对象显式地手动调用 session.Refresh(myObj) ?
我还启用了二级缓存。对于 NHibernate 长会话,我应该完全禁用一级缓存吗?
编辑:为我希望从10.4.1 实现的目标添加更多术语。具有自动版本控制的长会话本节的结尾以
由于 ISession 也是(强制的)一级缓存并包含所有加载的对象,因此我们可以适当地将此策略用于几个请求/响应周期。这确实是推荐的,因为 ISession 很快也会有过时的数据。
我不确定这是什么类型的文档,它可能包含两者,然后立即说会话将具有陈旧的数据(这就是我所看到的)。这里有什么解决方案或没有解决方案?
database - 数据库能否支持“原子性”但不支持“一致性”,反之亦然?
我正在阅读有关数据库的 ACID 属性的信息。原子性和一致性似乎密切相关。我想知道是否有任何情况下我们需要只支持原子性而不支持一致性,反之亦然。一个例子真的很有帮助!
xml - 检查 XML 配置文件内部一致性的工具、规则或流程
我从事过具有非常复杂的 XML 配置的项目,面临的一个问题是维护 XML 的内部一致性。
在这种情况下,我指的不是严格的 XML 模式一致性,而是使用的节点之间的更高级别的关系。大多数问题是由以 XML 编码的信息之间的隐式链接以及该信息与代码库的隐式关系引起的。示例可能是:
- XML 节点数据隐式链接到代码中的枚举
- 相同配置中相关的业务对象(因为它们共享需要一致的信息),它们之间没有任何明确的关系
- 要在运行时编译和解析的 XML 中的代码
让我感到震惊的是a)这可能成为一种增加频率的做法,b)在某些情况下,我们隐含地创建了一种新的编码语言,它没有在编译时检查——实际上在它运行之前几乎没有检查。
是否还有其他人面临类似的情况,是否有任何工具或方法可以使问题更容易处理?我想要一些与技术无关的一般示例——我自己的具体经验是使用 C# 和专有系统的配置。
注意:尽管我在下面对此有答案,但我无意将自己的答案作为最终答案。
c# - 在 C# 中跨类强制方法命名一致性
我在一个项目中有一系列类,它们基本上都做同样的事情,但在不同的对象上。由于其中一些是在不同的时间和不同的人编码的,因此在命名上存在一些不一致。我想以一种不仅在当前对象中而且在将来创建的新对象中强制保持某种一致性的方式更新我的代码。我对编程的理解使我相信我需要一个基类或一个接口,但我不知道如何让它们工作。我想要的方法是:
我遇到的问题是,在每个类中,“BusinessObject”和“EntityObject”都会有所不同,例如,在一个类中可能是“CarObject 和 CarEntity”,在另一个类中可能是“BusObject 和 BusEntity”。我仍然想要这两个方法,我仍然希望它们命名为 MethodA 和 MethodB 我只是想在实现中换出实际的对象类型。实现本身会有所不同,因为它们使用不同的对象。
我在编译时知道对象类型,并且需要能够访问对象的属性,所以如果使用泛型,我需要将泛型转换为实现中的正确类型。此外,MethodA 的实现需要创建一个“新的”BusinessObject,即“BusinessObject x = new BusinessObject()”,如果这有什么不同的话。
我尝试在方法中使用带有泛型的接口以及带有抽象方法的基类,但我无法弄清楚如何让它们工作。
处理这个问题的最佳方法是什么?示例代码将不胜感激。
programming-languages - 我们应该谈论一致性还是一致性?
总是或绝对最经常与我交谈的受过良好教育和专业的合作伙伴谈论一致性(即我们不应该能够证明错误的东西)......但我提出了一些反例。对每件事都撒谎似乎是“一致的”,但并不完全一致。因此,我建议当一致性似乎更多地是关于纯逻辑时,我们应该在谈论语言时谈论一致性。我们能否详细说明一下这个主题,因为仍然更加强调一致性而不是一致性?谢谢
indexing - hbase如何处理索引表与数据表的一致性?
当索引表有高并发更新时,hbase如何保证索引与数据的一致性?查询主表时,对索引表的扫描不会看到过时的数据。
例如,有按时间索引的“主题”和“帖子”表,当帖子出现时,主题表会更新,并且时间列上还有二级索引。
如果通过二级索引进行扫描,数据可能会更改并且扫描可能会丢失/获取过时的数据?hbase如何处理索引表与数据表的一致性?
php - 一致性组合框(两个组合框)
我的程序中有两个组合框...
看起来像这样 -->
盒子1
- 1 -
- 2 -
- 3 -
- 4 -
- 5 -
盒子2
- 1 -
- 2 -
- 3 -
- 4 -
- 5 -
我怎样才能在这个解决方案中工作?
例如......在box1中我选择了'1'......然后我打开一个box2我不会看到我在box1上选择的列表。
请问有解决办法吗?
(我正在使用 PHP 和 JavaScipt)
android - 如何检查 SQLite 文件一致性(健康检查)
我在我的 Android 应用程序中使用 SQLite 数据库文件,该文件是通过使用以下方法从存储在 assets 文件夹中的多个部分创建的: ReignDesign - 在 Android 应用程序中使用您自己的 SQLite 数据库
组装过程完成后,我想检查数据库是否正确合并。我想到了以下方法:
- MD5哈希比较
- 检查表存在和条目计数
您会推荐哪种方法?有没有更好的办法?
谢谢,
菲利普
java - java.util.concurrent 中的内存一致性
从内存一致性属性中,我们知道:“在将对象放入任何并发集合之前,线程中的操作发生在另一个线程中从集合中访问或删除该元素之后的操作。”
这是否意味着:如果我在一个线程中创建一个对象并将其放入 ConcurrentLinkedQueue 中,另一个线程将看到该对象的所有属性,而无需对该对象进行其他同步?
例如:
在一个线程中:
............
............
在另一个线程中
......
第二个线程肯定会看到complex
对象的属性吗?如果第二个线程恰好在第一个线程将对象放入队列后获取对象并打印它。
我们知道,在正常情况下,如果对象是共享的,我们应该在多线程环境中同步对象。
喜欢
database - NimbusDB - 分布式、非阻塞、原子提交协议?
从NimbusDB网站:
我们的分布式非阻塞原子提交协议允许在任何可用节点上进行数据库事务处理。
他们声称他们可以保证分布式环境中的 ACID 事务,并提供所有:一致性、高可用性和分区容错性。据我所知,他们克服 CAP 定理限制的“秘诀”是某种“可预测且一致的”管理网络分区的方式。
我想知道是否有人对背后的内容有一些见解或更多信息?