标签: uptime

Erlang的99.9999999%(9个9)可靠性

据报道,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秒.任何熟悉大型软件系统的人都可以向我们解释这个吗?谢谢.


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

erlang reliability uptime downtime

93
推荐指数
4
解决办法
3万
查看次数

使用C#检索系统正常运行时间

有没有一种简单的方法可以使用C#获得系统的正常运行时间?

.net c# windows uptime

58
推荐指数
7
解决办法
4万
查看次数

Web App:高可用性/如何防止单点故障?

有人可以向我解释高可用性("HA")如何适用于Web应用程序......因为我认为HA意味着不存在单点故障.

但是,即使使用了负载均衡器,这不是单点故障吗?

load-balancing high-availability cluster-computing uptime

46
推荐指数
2
解决办法
2万
查看次数

让iOS系统正常运行,在睡眠时不会暂停

我正在寻找一种方法来在iOS上获得绝对的,始终递增的系统正常运行时间.

它应该返回自设备上次重新启动以来的时间,并且不受系统日期更改的影响.

当设备处于休眠状态(所有我能找到任何方法暂停CACurrentMediaTime,[NSProcessInfo systemUptime],mach_absolute_time),或改变系统日期变更时(sysctl/KERN_BOOTTIME).

有任何想法吗?

kernel clock uptime ios

40
推荐指数
3
解决办法
2万
查看次数

在Heroku上进行热部署,无需停机

推送到Heroku的一个不好的方面是我必须在运行数据库迁移之前推送代码(并且服务器自动重启).

这显然会导致用户在没有新表/属性的情况下浏览具有新代码的网站时出现大约500个错误:Heroku提出的解决方案是使用维护模式,但我想要一种没有缺点的方法让我的webapp每次都运行!

有办法吗?例如Capistrano:

  • 我准备代码部署在一个新的目录中
  • 我运行(向后)迁移,旧代码继续完美运行
  • 我将mongrel实例转换到新目录并重新启动服务器

......我没有停机时间!

ruby deployment capistrano heroku uptime

34
推荐指数
4
解决办法
9740
查看次数

如何在python中检索进程开始时间(或正常运行时间)

如何在Linux中检索python中的进程启动时间(或正常运行时间)?

我只知道,我可以调用"ps -p my_process_id -f",然后解析输出.但这并不酷.

python linux process uptime

33
推荐指数
4
解决办法
4万
查看次数

我打算用什么API来获得系统正常运行时间?

我想从基于Linux的系统上运行的C应用程序中获得系统正常运行时间.我不想调用uptime(1)并解析输出,我想调用我怀疑存在的底层C API.任何人都知道是否有这样的电话,或者正常运行时间(1)只是处理从wtmp获得的记录?

c linux uptime

28
推荐指数
3
解决办法
4万
查看次数

15
推荐指数
2
解决办法
2814
查看次数

Bash格式正常运行时间显示天,小时,分钟

我在bash中使用正常运行时间以获取机器的当前运行时间.我需要抓住时间并显示2天,12小时,23分钟的格式.

linux bash uptime

13
推荐指数
3
解决办法
3万
查看次数

如何在多核Linux机器上使用GNU make --max-load?

从GNU make的文档:http://www.gnu.org/software/make/manual/make.html#Parallel

当系统负载很重时,您可能希望运行的作业少于轻载时的作业.您可以使用'-l'选项告诉make根据平均负载限制一次运行的作业数.'-l'或'--max-load'选项后跟一个浮点数.例如,

 -l 2.5
Run Code Online (Sandbox Code Playgroud)

如果负载平均值高于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的人在做什么?

multicore uptime gnu-make

12
推荐指数
2
解决办法
4477
查看次数