Architecture 在web上为业务定义实时

Architecture 在web上为业务定义实时,architecture,Architecture,听到业务倡导者在基于web的系统中使用“实时”一词,我简直要发疯了。我在房间里变得疯狂,高呼“网络上没有实时!我们在银行,不是火箭发射/船舶导航/飞机自动驾驶业务!” 有谁在性能规格方面比realtime或其可怕的混合、近实时更好吗?内联?就像在操作中一样,使用您的操作进行内联操作,而不是带外或一天结束的批处理作业。对于嵌入式程序员来说,实时意味着一件事。对一个正常人来说,它意味着别的东西。如果我的在线余额总是与我的ATM/银行出纳员的余额相匹配,我会称之为相当实时。如果我可以在账户之间转账,刷

听到业务倡导者在基于web的系统中使用“实时”一词,我简直要发疯了。我在房间里变得疯狂,高呼“网络上没有实时!我们在银行,不是火箭发射/船舶导航/飞机自动驾驶业务!”


有谁在性能规格方面比realtime或其可怕的混合、近实时更好吗?

内联?就像在操作中一样,使用您的操作进行内联操作,而不是带外或一天结束的批处理作业。

对于嵌入式程序员来说,实时意味着一件事。对一个正常人来说,它意味着别的东西。如果我的在线余额总是与我的ATM/银行出纳员的余额相匹配,我会称之为相当实时。如果我可以在账户之间转账,刷新屏幕,并立即看到完成的转账,我会称之为实时转账


如果您的web后端只是打印订单以供人工干预,或者将用户命令转储到文件中以进行脱机批处理,那么这将不是实时的。

在银行业,大多数情况下,“实时”与“一天结束”的意思相反

因为在过去没有internet/intranet/LAN/WAN这样的东西,所以所有的平衡都是在“一天结束时”完成的。在一家分行中使用某一银行账户进行的交易忽略了在另一家分行中进行的交易;所有余额结算都将在一天结束时进行。当大型机出现时,同样适用的规则是:分辨率由计算机通过一个长时间运行的过程来完成,通常在晚上9点到午夜12点之间运行

这就是“当前余额”和“可用余额”等术语背后的原因,例如,可用余额是在日终流程中确定的前一天账户余额;当前余额是它应该是什么,但你还不能触摸它,因为银行不确定你是否在其他地方进行了一些交易


随着自动取款机、互联网和其他互联技术的出现,“实时”余额解析现在成为可能:取款、在线交易、购买借记等将立即反映在客户的银行账户中,而无需等待日终处理。

立即?瞬间Live(不,等等,微软现在拥有这个词,不是吗?)


更严重的是,“实时”对于没有过程控制/嵌入式系统背景的人来说可能并不令人困惑。喝一杯舒适的饮料,然后为其他事情担心。

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


回到你的例子,我不认为ATM机或上述余额是实时的,它们可能是在线的或更新的,但不是实时的,因为如果在ATM机上完成取款所需的时间比预期的要长,那么系统不会崩溃。

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

这是一个营销术语,意思是“非常快”,可能<1秒


显然,这与人们谈论实时嵌入式系统、实时操作系统等时的含义不同。网络太大、太异构了。实时系统的一个定义(来自安全关键系统世界)是一个系统,其正确性取决于其响应的及时性

这同样适用于实时网络交易系统——股票价值在几秒钟内就会过时,而嵌入式航空电子设备的电传系统需要毫秒的正确性