问题标签 [reliability]

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 投票
3 回答
214 浏览

mysql - MySQL 表读取顺序可靠性

从应用程序中逐行读取 MySQL 表时,是否可以安全地假设该表将始终以完美的顺序从上到下依次读取。

EG 如果一个表是按唯一 ID 排序的,我通过 C++ 一次读取一行。假设我每次都会以精确的唯一 ID 顺序获取每一行是否安全。

我的直觉是,这不是一个安全的假设,但我没有技术上的理由。

我的测试始终表明它确实按顺序提供了表格行,但依赖它让我感到紧张。结果,我编写的程序不依赖于这个假设,这使得它们更复杂一点,效率也更低。

谢谢 C

0 投票
3 回答
4318 浏览

r - 计算包含缺失值的相关系数

我希望在 R (或任何常见的统计数据包)中计算某种形式的相关系数,其中相关值受缺失值的影响。我不确定这是否可行并且正在寻找一种方法。我不想估算数据,但实际上希望根据以某种系统方式包含的不完整案例的数量来减少相关性。数据是由不同个体生成的一系列时间点,相关系数用于计算可靠性。在许多情况下,一个人的数据将包含比另一个人多几个时间点...

同样,不确定是否有任何标准程序来处理这种情况。

0 投票
2 回答
2137 浏览

synchronization - 两将协议

我正在尝试在不可靠的通道上制定协议协议。基本上两方(A和B)必须同意做某事,所以这是两位将军的问题

由于没有防弹解决方案,我正在尝试这样做。

  • A 连续发送一个序列为 1 的消息
  • 当 B 收到序列 1 时,它会不断回复序列 2
  • 此时 A 收到 seq 2 所以它开始发送 seq 3
  • ...

我的问题。双方何时可以断定他们可以采取行动?显然,我不能设置条件:“在收到 10 条消息后执行”,因为最后一个发件人无法确定消息 10 是否到达 - 回到第一条。

另一个想法怎么样:

  • 在预定的时间内保持这样的沟通。在那个时期结束时,双方都对通道的可靠性有了一个想法。那可以接受吗?
0 投票
4 回答
33825 浏览

erlang - Erlang 99.9999999%(九个九)的可靠性

据报道, Erlang已在生产系统中使用了 20 多年,正常运行时间百分比为 99.9999999%。

我做了以下数学运算:

这意味着系统在 20 年期间只有不到一秒的停机时间。我不是想挑战它的有效性,我只是好奇我们如何才能(有意或无意地)关闭系统仅 0.631 秒。有熟悉大型软件系统的朋友可以给我们解释一下吗?谢谢你。


有谁知道如何计算一组处理单元(或机器)上服务的停机时间?

0 投票
2 回答
984 浏览

c++ - 谷歌协议缓冲区 - 位错误的概率和减少它们的方法

我通过 TCP 在 Internet 上的无线 VPN 上传输了相当大量的 google 协议缓冲区消息,我觉得我得到了一个相对较高的错误率(例如,布尔字段从 false 切换到 true 或类似的东西)。介于万分之一和五万分之一之间。

那可能吗?维基百科指出 TCP 的校验和很弱,但这通常在底层协议中是固定的:

TCP 校验和是现代标准的弱校验。具有高误码率的数据链路层可能需要额外的链路纠错/检测能力。弱校验和通过在 TCP 和 IP 下方的第 2 层的通用使用 CRC 或更好的完整性检查得到部分补偿,例如在 PPP 或以太网帧中使用。

有没有人有任何经验应该是预期的错误率?如果上述速率是可能的,那么推荐/最简单的修复方法是什么?复制字段?两次发送消息?或者还有什么可以提高可靠性的方法吗?

谢谢

0 投票
0 回答
687 浏览

c - 当用户隐藏所有列名时,如何使用 C API 可靠地获取/使用 SQLite 行 ID?

根据 SQLite 文档,默认情况下所有表都有 rowid,并且无法删除。这个 rowid 可以用rowid,oid或访问_rowid_

无论如何,数据库用户可以自由添加带有名称的新列,并且这些列将被隐藏。访问 rowid 的唯一方法是使用INTEGER PRIMARY KEY.

这是我目前的理解。有了这个,如果用户隐藏所有列并且用户没有创建任何 PK 列,我没有可靠的方法来获取rowid 。我曾考虑过添加临时PK列,但这也不可靠。如果这是真的,这没有任何意义。因为数据总是可用的,而我只是因为没有合适的接口而无法访问。

所以我认为应该有一种方法可以可靠地访问这些数据。但我找不到 C API 的任何东西。我可以为此提供一些指导吗?

0 投票
2 回答
851 浏览

c# - 损坏状态异常处理的可靠性

我目前正在研究C# / .NET的可靠性特性和异常处理

这些尤其是带有的HandleProcessCorruptedStateExceptions属性和CERPrepareConstrainedRegions

现在我正在阅读该SecureString课程的参考源代码,因为这是一个非常安全的地方,即使在特殊情况下也要保持数据加密,并发现类似这样的地方:

catch阻塞的原因是什么?finally块不足以重新保护数据吗?

或者那些损坏的状态异常是否只会catch在之后影响和终止应用程序?

0 投票
1 回答
170 浏览

actionscript-3 - 不可靠互联网上数据持久性的应用程序设计

我有一个 Flex actionscript 3 日程提醒应用程序,它通过 wifi 通过互联网与网络服务对话。问题是wifi连接不可靠,经常掉线。该应用程序提醒的时间表不会经常更改。因此,应用程序可以在本地存储数据,而不是每天/每小时调用 Web 服务来查找时间表。此外,如果用户更新应用程序上的计划,则 Web 服务会更新计划中的任务已完成。这些数据也可以存储在本地,这样当用户下次使用应用程序并且有互联网连接时,应用程序可以更新网络服务。在这种情况下,对应用程序设计有何建议?有没有例子?

0 投票
3 回答
199 浏览

java - 如何处理 JVM 控制台应用程序中的 ^C?

当我的 JVM 运行(实际上是用 Scala 编写的,但我倾向于认为解决方案对于 Groovy、Clojure 或纯 Java 来说几乎相同)时,我的控制台程序被用户按Ctrl+ C(或系统关闭顺序,我不知道程序是否有任何区别),我如何确保应用程序修改的外部资源(数据库、文件、Web 服务抽象资源)留在可预测的、非逻辑损坏状态?

0 投票
1 回答
674 浏览

c# - C# 如何确保所需的 UDP 数据到达客户端/服务器?

我最近一直在为我用 C# 和 XNA for PC 制作的 2D 射击游戏编写 UDP 服务器,它将在需要时更新和发送世界数据、实体数据、聊天数据等。

最近,当我为玩家创造一种改变武器的方法时,我突然想到了一个问题;如果在发送到服务器请求更换武器的数据包丢失的情况下会发生什么?这个问题让我想到了另一个问题;如何让客户端和服务器确认接收到某些数据包或数据块?

所以,我想出了以下简单的解决方案来解决这个问题:

  1. 服务器发送需要确认的数据包。
  2. 客户端接收数据包并发送确认数据包。
  3. 服务器检查客户端是否确认数据。如果客户端没有,则重新发送数据。

建议的解决方案看起来不错,但是如果在确认包丢失或发生任何意外情况时会发生什么?

更好的解决方案是创建一个使用 TCP 和 UDP 的服务器和客户端;TCP用于需要到达那里并按顺序到达的数据/和平,而UDP用于需要快速到达那里并且可以处理丢失或错误的数据?

如果 TCP/UDP 服务器和客户端是更好的选择,那么风险是什么?我将如何去实现它?

谢谢。