8

It drives me nuts to hear business proponents using the term realtime for web-based systems. I'm becoming the crazy in the room, chanting, "There is no such thing as realtime on the web! We're in banking, not the rocket launch/ship navigation/airplane autopilot business!"

Anyone have anything better for performance specifications than realtime, or its horrible hybrid, near-realtime?

4

8 回答 8

10

In the banking industry most of the time "real time" means the opposite of "end-of-day".

Because there was no such thing as internet/intranet/LANs/WANs in the old days, all balancing is done at "end-of-day". Transactions done in one branch with a certain bank account are oblivious of the transactions done in another; all of the balance resolution will occur during end of day. When mainframes came in the same rule applied: resolutions are done by computer by a long-running-process usually run between 9PM and 12 midnight.

This is the reason behind terms such as "current balance" and "available balance", e.g., available balance is what has been determined by the end-of-day process as an account's balance for the previous day; current balance is what it's supposed to be, but you can't touch it yet since the bank is not sure if you've made some transaction somewhere else.

With the advent of ATMs, the internet, and other interconnectivity technologies, "real time" balance resolution is now possible: a withdrawal, an online transaction, a purchase debit, etc will immediately be reflected in the customers' bank accounts without the need to wait for end-of-day processing.

于 2008-09-09T02:36:19.953 回答
5

Immediate? Instant? Live (no, wait, Microsoft owns that word these days, don't they?)?

More seriously, "realtime" is probably not confusing for anyone who doesn't have a process-control / embedded-system background. Have a comforting beverage and worry about other things.

于 2008-09-09T02:38:28.623 回答
2

Real-time means one thing to an embedded programmer. It means something else to a normal person. If my online balance always matches my ATM/bank-teller's balance, I would call that pretty real-time. If I can transfer money between accounts, refresh the screen, and immediately see the completed transfer, I would call that real-time.

If you web backend just prints out orders for human intervention, or dumps user-commands in a file for offline batch processing, that would not be realtime.

于 2008-09-09T02:34:54.483 回答
2

实时意味着当你有一组任务为了执行一个任务而执行时,如果一个任务的完成时间超过了定义的时间,整个过程就会失败,系统可能会崩溃。例如,用于控制火星探测车的应用程序被认为是实时应用程序,即使在地球上触发的命令需要 8 分钟才能到达车辆,而车载摄像头的图像需要 8 分钟才能到达地球。因此,即使在采取行动和看到结果之间有 16 分钟的延迟,也可以将其定义为实时的,因为如果延迟超过 16 分钟的计划延迟,则车辆可能会与岩石或岩石发生碰撞的巨大风险。陷入抑郁。

回到您的示例,我没有看到 ATM 机,或者上述余额是实时的,它们可能是在线的或更新的,但不是实时的,因为如果需要更多的时间来完成一个系统,您不会崩溃在 ATM 取款。

于 2008-09-16T06:08:22.133 回答
1

Inline? As in actions happen inline with your actions as opposed to out-of-band or end of the day batch jobs.

于 2008-09-09T02:33:07.403 回答
0

您如何定义嵌入式系统的“实时”?我想说一个体面的定义是“一个能够比输入之间的平均时间更快地处理和响应输入的系统”。换句话说,与为其提供数据的系统相比,该系统在处理方面永远不会落后。使用这个定义,网络上的一切都是实时系统,因为落后的网络服务器往往无法访问(即斜线效应)。

于 2008-09-19T15:35:03.967 回答
0

It's a marketing term that means "really fast", like maybe < 1 second.

Obviously it can't mean the same thing as when people talk about real-time embedded systems, real-time operating systems, etc. The web is too big and heterogeneous for that.

于 2009-12-22T22:52:29.587 回答
0

实时系统的一个定义(来自安全关键系统世界)是一个系统,其正确性取决于其响应的及时性。

这同样适用于实时网络交易系统——股票价值在几秒钟内就会过时,对于具有毫秒准确性要求的嵌入式航空电子电传操纵系统而言。

于 2010-02-22T18:45:54.063 回答