0

参考https://github.com/newrelic/newrelic_api的 New Relic API,我想知道主机和实例之间有什么区别。

基本上,我知道什么是应用程序以及什么是服务器(显然)。我会假设实例是应用程序的实例,即如果我的应用程序在 Heroku 上运行,每个实例将对应于运行我的应用程序的测功机。但是,什么是主机?主机和实例之间有什么区别?

谢谢,

-比利

更新

感谢你的回答!

因此,如果我做对了,在一般情况下,应用程序和实例之间的映射是一对一的,即每个应用程序可以有 1 个或多个实例。此外,实例和主机之间的映射是 n 到 m 的,即每个实例最多可以在一个主机上运行(在任何给定时间),但实例分布在可用主机之间。同样,主机分布在服务器之间(例如,m-to-s)。是这样吗?(抱歉,如果这听起来像是我在说非常明显的东西,但我不熟悉他们在 New Relic 使用的术语)

如果以上内容正确,我如何从 API 获取实例 - 主机和主机 - 服务器映射?我可以看到如何获取应用程序 - 实例和应用程序 - 主机,但是其他两个呢?

再次感谢你的帮助!

4

1 回答 1

5

主机(服务器)可以运行应用程序的许多实例。从 New Relic 的角度来看,响应请求的每个进程(例如 Unicorn worker)都是一个实例。主机/实例的区别大致相当于IP地址和端口的区别。

如果您使用 Heroku,New Relic 会将整个测功机网格视为单个主机/服务器,并将每个测功机视为一个实例。

回复:更新的问题

主机是运行应用程序的机器或虚拟机,每个主机可以运行应用程序的 N 个实例。

就 NR API 而言,“服务器”是由 New Relic Server Monitoring 监控的 OS+硬件。NR 应用程序监控代理也可以在服务器监控代理监控的服务器上运行。在这种情况下,主机和服务器都应该向 New Relic 报告相同的名称(“server01.example.com”)。

没有办法从 New Relic API 显式获取实例主机或主机服务器映射。但在服务器主机的情况下,映射是它们共享相同的名称。您也可以从实例名称中推断出实例主机映射,因为它们几乎总是包含主机名(可能还包含端口号)。

于 2012-04-29T04:00:46.367 回答