用node写了一个socket后台服务,可是有时候会挂,node一个异常就game over了,所以写了一个守候.
package main import ( "log" "os" "os/exec" "time" ) func main() { lf, err := os.OpenFile("angel.txt", os.O_CREATE | os.O_RDWR | os.O_APPEND, 0600) if err != nil { os.Exit(1) } defer lf.Close() // 日志 l := log.New(lf, "", os.O_APPEND) for { cmd := exec.Command("/usr/local/bin/node", "/*****.js") err := cmd.Start() if err != nil { l.Printf("%s 启动命令失败", time.Now().Format("2006-01-02 15:04:05"), err) time.Sleep(time.Second * 5) continue } l.Printf("%s 进程启动", time.Now().Format("2006-01-02 15:04:05"), err) err = cmd.Wait() l.Printf("%s 进程退出", time.Now().Format("2006-01-02 15:04:05"), err) time.Sleep(time.Second * 1) } }
这里还有一个shell实现的. 记得给予执行权限哦,chmod +x you_command
#! /bin/bash while true; do ./you_command done
相关推荐
### Golang守护进程用法详解 #### 一、引言 在现代软件开发中,守护进程(Daemon)是一种常见的后台运行程序,它们通常用于提供持续的服务而不会干扰用户的正常操作。Golang作为一种高效的编程语言,提供了简洁的...
本教程将围绕“使用Golang开发的兼容Linux、Windows、Mac的守护程序”这一主题,深入探讨如何利用Go语言来实现跨平台的守护进程开发。 首先,让我们理解守护进程(Daemon)的概念。在操作系统中,守护进程是一种在...
dcrd, 在( golang ) 中,Decred守护进程 dcrddcrd是一个Decred完全 node 实现,用 go ( golang ) 编写。它充当 Decred cryptocurrency的链守护进程。 dcrd维护整个Decred的过去事务分类帐,并允许将事务传送到世界上...
在本项目中,我们关注的是一个使用Go语言(Golang)编写的Windows系统后台服务程序,该服务的主要功能是24小时全天候监控指定的进程(即“守护进程”),在发现服务进程宕机时自动进行重启操作,并且能够记录相关的...
这个项目"ole_golang_tryout_daemon"就是对Go语言实现跨平台守护进程的一个尝试。 项目名称"ole_golang_tryout_daemon"表明它是一个实验性的项目,旨在测试和验证如何在Go中实现跨平台的守护进程功能。"ole_golang_...
Go-HyperContainer守护进程是基于Go语言开发的一个高级容器管理工具,它被设计用来提供轻量级的虚拟化解决方案,以提升容器的隔离性和安全性。HyperContainer守护进程(hyperd)是这个系统的核心组件,负责管理和...
用golang编写的cron守护程序 受启发 使用 Docker映像 在 webdevops/go-crond:alpine (基于alpine ) webdevops/go-crond:ubuntu (基于ubuntu:latest ) webdevops/go-crond:debian (基于debian:stable-slim )...
Go-gocode是一个专门为Go编程语言设计的代码自动补全工具,它作为一个守护进程运行,为开发者提供实时的代码补全建议,极大地提升了编码效率。在Go语言的开发环境中,gocode是一个非常重要的辅助工具,特别是在编写...
守护进程与Go(golang)服务一起使用的守护程序包例子最简单的示例(只需将self安装为守护程序) package mainimport ( "fmt" "log" "github.com/takama/daemon")func main () { service , err := daemon ....
可配置的零停机守护进程(TCP / HTTP / FCGI)框架使用golang编写。 它只需要集成对gozd.Daemonize()的一个简单调用即可。 然后您将获得: 在绝对零停机时间的情况下升级二进制文件/服务。 高可用性! 在同一...
守护进程 用于在Go中编写系统守护程序的库。 现在仅支持基于UNIX的操作系统(不支持Windows)。 但是该库仅在Linux和OSX上进行了测试,因此,如果您有能力在其他平台上进行测试,请给我反馈(#26)。 请随时向我...
- **Docker**:Docker的守护进程就是用Go编写的,体现了Go在系统编程上的优势。 - **Kubernetes**:Kubernetes的API服务器和控制器大量使用了Go,得益于其并发和性能特性。 - **Gin框架**:Gin是一个基于Go的web...
ergonomadic是一个基于Go语言编写的IRC(Internet Relay Chat)守护进程。IRC是一种实时通信协议,主要用于在线聊天、协作和信息分享。这个项目可能是杰里米的遗产,他在社区中留下了深刻的印记,他的贡献被人们怀念...
pmon2 golang进程管理工具(golang进程管理器),专门用于go常驻进程管理(守护程序管理器)启动进程sudo pmon2 run [. /二进制进程文件] [参数1 ] ...介绍Go官方一直没有提供任何进度管理工具,对于Go服务的部署,...
4. **守护进程模式**:goconfd可以作为守护进程运行,持续监听配置变化,确保配置始终是最新的。 5. **安全与权限**:goconfd可以通过认证和授权机制保护配置的安全,避免未经授权的访问和修改。 **使用goconfd** ...
**Graid:图像代理守护进程详解** Graid是一款基于Golang开发的图形和图像处理代理守护程序,旨在为用户提供高效、便捷的图像管理和处理服务。它通过代理模式工作,允许用户在后台批量处理图像,如缩放、转换格式、...
【标题】"hexdisptpmd:六边形RGB显示的控制守护进程"涉及的是一个用Go语言编写的后台服务程序,它主要用于实现六边形的RGB颜色显示控制。这个程序设计的目的是为了以一种独特的方式展示RGB色彩,通过六边形的布局来...
此外,任何对系统调用有严格控制需求的软件,如服务器守护进程、安全敏感的应用,都可以考虑使用Golang-seccomp。 七、未来展望 随着Go语言和libseccomp的不断发展,Golang-seccomp将持续优化,提供更完善的接口和...
一个代理守护进程,用于通过配置对等。 该项目目前正在开发中,只是一个 PoC 阶段。 有可能在没有通知的情况下更改一切。 用法 gRPC 服务器 $ wiregarden-server --port $PORT 注意:如果您遇到类似operation not...