有没有一种方法可以在终止时在快速应用中触发功能?

杰森·尼科尔斯(Jason Nichols)

基本上我想要这样的语法:

app.on("event:terminate", dumpFunc);

这样,如果服务器由于某种原因停止了,我可以将数据转储到磁盘。

有没有办法做到这一点,还是我应该坚持每隔几秒钟用a记录数据库中的所有内容setTimeout

喜欢:

var badIdea = setTimeout(dumpFunc, 5000);

function dumpFunc(stuff){
    //Do stuff
    badIdea = setTimeout(dumpFunc, 5000);
}

我愿意就此提出任何建议,但我需要崩溃时变量的状态才能在下次加载时持续存在。尽管我同意,但不要崩溃可能是最好的做法,但目前尚无法避免。

特别是在这两种情况下,我都需要保护

  1. 服务器的一个SIGINT/SIGKILLnodeCTRL+C类型事件)
  2. 用户输入与期望不符,当服务器寻找undefined属性时使服务器崩溃NaN

从理论上讲,我可以将整个代码库包装在try/catch块中以防止后者,但有时我们会遇到循环条件(我知道,我知道,测试)或其他问题,因此需要终止该过程。

在电源中断或磁盘故障的情况下,我不希望有什么奇迹般地支持我们,但是我们需要某种优美的终止选项,所以我无所不能。

六氰化物

您可以在Domain中运行整个应用程序,从而可以捕获错误。它的工作方式类似于捕获未捕获的异常,并且在不重新启动进程方面同样很糟糕(进程将泄漏资源等)。

var domain = require('domain');
var d = domain.create();
d.on('error', function(err) {
  // log the error, store it, etc
});
d.run(function() {
  var express = require('express');
  var app = express();

  // application code here

  app.listen();
});

要捕获SIGINT,您可以执行以下操作:

process.on('SIGINT', function() {
  // caught an interrupt signal
});

至于SIGKILL,这是一个无法捕捉的信号。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

触发Pry时,有没有一种方法可以自动执行代码?

来自分类Dev

有没有一种方法可以快速浏览目录中的多个pdf?

来自分类Dev

有没有一种方法可以kubectl应用目录中的每个文件?

来自分类Dev

有没有一种方法可以在Ubuntu中“屏蔽”应用程序?

来自分类Dev

有没有一种方法可以终止MVC Razor @:行?

来自分类Dev

有没有一种方法可以根据当前播放的视频时间触发settimeout功能?

来自分类Dev

有没有一种方法可以在岛之间快速传输大型文件?

来自分类Dev

有没有一种方法可以在终端中的c中快速“ man”预定义的结构?

来自分类Dev

有没有一种方法可以在填充dialogflow所需的插槽时触发其他查询

来自分类Dev

每当抛出CLR异常时,有没有一种方法可以触发事件

来自分类Dev

有没有一种方法可以快速选择列表中的3个项目?

来自分类Dev

有没有一种方法可以快速清除MarkLogic中的服务器错误日志?

来自分类Dev

有没有一种方法可以在PHPStorm中快速预览/实时模板列表?

来自分类Dev

在Libre Office Writer中,有没有一种方法可以在注释之间快速导航?

来自分类Dev

有没有一种方法可以清除TextBox的文本而不触发TextChanged?

来自分类Dev

有没有一种方法可以当场解析JSON和触发事件?

来自分类Dev

有没有一种方法可以当场解析JSON和触发事件?

来自分类Dev

有没有一种方法可以在素面中的selectCheckboxMenu未选择所有项目时触发事件/隐藏命令按钮

来自分类Dev

有没有一种方法可以设置断点,以使程序在调用特定功能的指令时停止?

来自分类Dev

有没有一种方法可以触发Javascript中的“ Ctrl + Shift + P”事件?

来自分类Dev

有没有一种方法可以防止在破折号中触发回调?

来自分类Dev

有没有一种方法可以使鼠标滚轮触发Javascript中的“悬停”事件?

来自分类Dev

有没有一种方法可以检测功能是否被覆盖?

来自分类Dev

有没有一种方法可以向NavigationLink添加额外的功能?SwiftUI

来自分类Dev

有没有一种方法可以将功能用作字典的值?

来自分类Dev

有没有一种方法可以检测功能是否被覆盖?

来自分类Dev

有没有一种方法可以模拟Unity中的“动态工作区”功能?

来自分类Dev

有没有一种方法可以在golang中为多个结构重用功能?

来自分类Dev

有没有一种方法可以检测Google表格中的点击并运行功能?

Related 相关文章

  1. 1

    触发Pry时,有没有一种方法可以自动执行代码?

  2. 2

    有没有一种方法可以快速浏览目录中的多个pdf?

  3. 3

    有没有一种方法可以kubectl应用目录中的每个文件?

  4. 4

    有没有一种方法可以在Ubuntu中“屏蔽”应用程序?

  5. 5

    有没有一种方法可以终止MVC Razor @:行?

  6. 6

    有没有一种方法可以根据当前播放的视频时间触发settimeout功能?

  7. 7

    有没有一种方法可以在岛之间快速传输大型文件?

  8. 8

    有没有一种方法可以在终端中的c中快速“ man”预定义的结构?

  9. 9

    有没有一种方法可以在填充dialogflow所需的插槽时触发其他查询

  10. 10

    每当抛出CLR异常时,有没有一种方法可以触发事件

  11. 11

    有没有一种方法可以快速选择列表中的3个项目?

  12. 12

    有没有一种方法可以快速清除MarkLogic中的服务器错误日志?

  13. 13

    有没有一种方法可以在PHPStorm中快速预览/实时模板列表?

  14. 14

    在Libre Office Writer中,有没有一种方法可以在注释之间快速导航?

  15. 15

    有没有一种方法可以清除TextBox的文本而不触发TextChanged?

  16. 16

    有没有一种方法可以当场解析JSON和触发事件?

  17. 17

    有没有一种方法可以当场解析JSON和触发事件?

  18. 18

    有没有一种方法可以在素面中的selectCheckboxMenu未选择所有项目时触发事件/隐藏命令按钮

  19. 19

    有没有一种方法可以设置断点,以使程序在调用特定功能的指令时停止?

  20. 20

    有没有一种方法可以触发Javascript中的“ Ctrl + Shift + P”事件?

  21. 21

    有没有一种方法可以防止在破折号中触发回调?

  22. 22

    有没有一种方法可以使鼠标滚轮触发Javascript中的“悬停”事件?

  23. 23

    有没有一种方法可以检测功能是否被覆盖?

  24. 24

    有没有一种方法可以向NavigationLink添加额外的功能?SwiftUI

  25. 25

    有没有一种方法可以将功能用作字典的值?

  26. 26

    有没有一种方法可以检测功能是否被覆盖?

  27. 27

    有没有一种方法可以模拟Unity中的“动态工作区”功能?

  28. 28

    有没有一种方法可以在golang中为多个结构重用功能?

  29. 29

    有没有一种方法可以检测Google表格中的点击并运行功能?

热门标签

归档