据报道,Erlang已在生产系统中使用了20多年,正常运行时间百分比为99.9999999%.
我做了以下数学计算:
20*365.25*24*60*60*(1 - 0.999999999) == 0.631 s
Run Code Online (Sandbox Code Playgroud)
这意味着系统在20年期间只有不到一秒的停机时间.我并不想挑战这个问题的有效性,我只是好奇我们如何关闭系统(故意或偶然)只有0.631秒.任何熟悉大型软件系统的人都可以向我们解释这个吗?谢谢.
有谁知道如何计算服务在一组处理单元(或机器)上的停机时间?
有人可以向我解释高可用性("HA")如何适用于Web应用程序......因为我认为HA意味着不存在单点故障.
但是,即使使用了负载均衡器,这不是单点故障吗?
我正在寻找一种方法来在iOS上获得绝对的,始终递增的系统正常运行时间.
它应该返回自设备上次重新启动以来的时间,并且不受系统日期更改的影响.
当设备处于休眠状态(所有我能找到任何方法暂停CACurrentMediaTime
,[NSProcessInfo systemUptime]
,mach_absolute_time
),或改变系统日期变更时(sysctl/KERN_BOOTTIME
).
有任何想法吗?
推送到Heroku的一个不好的方面是我必须在运行数据库迁移之前推送代码(并且服务器自动重启).
这显然会导致用户在没有新表/属性的情况下浏览具有新代码的网站时出现大约500个错误:Heroku提出的解决方案是使用维护模式,但我想要一种没有缺点的方法让我的webapp每次都运行!
有办法吗?例如Capistrano:
......我没有停机时间!
如何在Linux中检索python中的进程启动时间(或正常运行时间)?
我只知道,我可以调用"ps -p my_process_id -f",然后解析输出.但这并不酷.
我想从基于Linux的系统上运行的C应用程序中获得系统正常运行时间.我不想调用uptime(1)并解析输出,我想调用我怀疑存在的底层C API.任何人都知道是否有这样的电话,或者正常运行时间(1)只是处理从wtmp获得的记录?
我在bash中使用正常运行时间以获取机器的当前运行时间.我需要抓住时间并显示2天,12小时,23分钟的格式.
从GNU make的文档:http://www.gnu.org/software/make/manual/make.html#Parallel
当系统负载很重时,您可能希望运行的作业少于轻载时的作业.您可以使用'-l'选项告诉make根据平均负载限制一次运行的作业数.'-l'或'--max-load'选项后跟一个浮点数.例如,
Run Code Online (Sandbox Code Playgroud)-l 2.5
如果负载平均值高于2.5,则不会让make启动多个作业.没有跟随号码的'-l'选项会删除加载限制,前提是前一个'-l'选项.
更准确地说,当make启动一项工作,并且它已经至少运行了一个工作时,它会检查当前的平均负载; 如果它不低于'-l'给出的限制,则等待直到负载平均值低于该限制,或直到所有其他作业完成.
从Linux手册页获取正常运行时间:http://www.unix.com/man-page/Linux/1/uptime/
系统负载平均值是处于可运行或不可中断状态的平均进程数.处于可运行状态的进程要么使用CPU,要么等待使用CPU.处于不可中断状态的进程正在等待某些I/O访问,例如等待磁盘.平均值是在三个时间间隔内取得的.对于系统中的CPU数量,负载平均值没有标准化,因此平均负载为1意味着单个CPU系统一直在加载,而在4 CPU系统上,这意味着它在75%的时间内处于空闲状态.
我有一个并行的makefile,我想做一个显而易见的事情:make make继续添加进程,直到我获得完整的CPU使用率,但我不会引起颠簸.
今天的许多(所有?)机器都是多核的,因此这意味着负载平均值不是应该检查的数量,因为需要针对核心数调整该数量.
这是否意味着GNU make 的--max-load
(又名-l
)标志现在没用了?在多核计算机上运行并行makefile的人在做什么?