如何解决gRPC Golang示例服务器运行2个进程吗?
我刚开始使用Go编写gRPC。我使用以下命令启动服务器:
go run greeter_server/main.go
我运行了关联的客户端,并且全部按预期工作。我天真地ps -aux | grep greeter
,然后杀死了相关的过程。我重新启动服务器,并收到一个错误消息,说明端口50051已被使用。我再次运行ps
,但没有看到服务器进程。然后我跑了:
lsof -nP -iTCP -sTCP:LISTEN | grep 50051
main 52229 rich_youngkin 3u IPv6 0x8f763a4a32733ba7 0t0 TCP *:50051 (LISTEN)
那令人困惑。然后,我为该pid运行了另一个ps
grepping:
ps uax | grep 52229
rich_youngkin 52229 0.0 0.0 4986700 6384 s000 S 3:29PM 0:00.01 /var/folders/9z/lyfc9l3500b_111_x89br7bh0000gn/T/go-build096317928/b001/exe/main
我终止了此过程,然后重新启动了服务器。现在稍微聪明一点,我运行了一个稍微不同的ps
,然后看到了两个过程:
ps aux | grep "/main" 1 ✘ 15:49:25
rich_youngkin 60758 0.0 0.0 4985676 6356 s000 S 3:49PM 0:00.01 /var/folders/9z/lyfc9l3500b_111_x89br7bh0000gn/T/go-build997935897/b001/exe/main
rich_youngkin 60735 0.0 0.1 5113896 20876 s000 S 3:49PM 0:00.86 go run greeter_server/main.go
为什么2个进程正在运行?他们的目的是什么?
谢谢, 丰富
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。