查看服务器运行多少个ASP.NET Core程序
有时候,我们会想知道某台机器上面跑了什么程序。
当程序部署到IIS上面的时候,我们只需要打开IIS一看,就知道有多少个站点在运行了。
当我们在CentOS上面部署的时候,就没那么的直观了。
当然对于熟悉Linux命令的小伙伴还是很容易的。
下面就来看看如何在CentOS上面查看对应的信息。
说明,本文的所有环境都是基于Jexus的。
查看的命令如下
ps -ef | grep AppHost
输出结果
UID PID PPID C STIME TTY TIME CMD
root 12651 51914 0 Sep30 ? 00:19:38 [AppHost:crm] /data/project/crm/crm.dll --environment Staging
root 35237 51914 0 Sep29 ? 00:10:26 [AppHost:product] /data/project/product/product.dll --environment Staging
hwq 40167 39650 0 10:45 pts/0 00:00:00 grep --color=auto AppHost
其中,UID那行标题是手动加上去的。
下面是各字段的说明
字段 | 说明 |
---|---|
UID | 用户名 |
PID | 进程的ID |
PPID | 父进程ID |
C | 进程占用CPU的百分比 |
STIME | 进程启动到现在的时间 |
TTY | 该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 |
CMD | 命令的名称和参数 |
上面的示例中列出了两条主要的信息,表明当前服务器运行着两个dotnet core的程序。
根据CMD进一步细分,同时也可以看出是那两个程序
以第一个为例:
[AppHost:crm] /data/project/crm/crm.dll --environment Staging
其中,AppHost后面跟着的就是jws的配置文件名称。
后面那部分就是运行 dotnet
时指定的dll和相关的参数。
了解Jexus的都应该知道Jexus运行dotnet core程序时是父子进程的关系,示例中的两个进程的PPID都是 51914,也很清晰的说明了这个问题。
用下面命令查看这个进程的信息时,可以看到它的CMD就是JwsMain,jws的核心进程
ps -p 51914
输出
PID TTY TIME CMD
51914 ? 00:01:40 JwsMain

如果您认为这篇文章还不错或者有所收获,可以点击右下角的【推荐】按钮,因为你的支持是我继续写作,分享的最大动力!
声明:
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如果您发现博客中出现了错误,或者有更好的建议、想法,请及时与我联系!!如果想找我私下交流,可以私信或者加我微信。
分类:
(01).NET Core
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?