回答
收藏
分享
举报
NGINX upstream 默认健康检测机制是怎样的?
提问于2020-08-16 00:41

浏览 4.2k

NGINX默认安装 upstream 只配置多个IP,不配置任何检测策略的情况下,是如何对后端应用进行检测,并且在后端出现故障时排除有故障的后端服务器?

已修改于2023-03-17 09:54



写下您的回答
发表回答
全部回答(1)

按点赞数排序

按时间排序

默认采用RoundRobin算法,主要基于TCP层和HTTP层实现健康检查。

其中,TCP层通过在建立连接、发送、接收消息时实现健康检查;HTTP层主要通过response code实现;一旦出错,会启动next upstream机制去解决错误。

赞同

2

回复举报

回答于2020-08-17 18:25



回复陶辉
回复
提问者
marcyo
这家伙很懒还未留下介绍~
0
文章
2
问答
1
粉丝
相关问答

请提供详细配置信息。
location / {
add_header Cache-Control max-age=2592000;
root html;
index index.html index.htm;
}
我使用如上配置,服务端响应如下:
HTTP/1.1 200 OK
Server: nginx/1.20.2
Date: Fri, 02 Sep 2022 09:10:55 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Wed, 20 Jul 2022 12:09:37 GMT
Connection: keep-alive
ETag: "62d7f081-264"
Cache-Control: max-age=2592000
Accept-Ranges: bytes

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>

点赞 0
浏览 3.8k

提供一些关于Node.js作为服务器的性能的信息。但是,需要注意的是,“最具性能”的服务器技术可能会因特定的用例、需求和应用程序的性质而异。




Node.js以其高性能而闻名,尤其是在处理并发请求方面。它建立在V8 JavaScript引擎上,该引擎针对执行JavaScript代码进行了高度优化。Node.js使用事件驱动的非阻塞I/O模型,使其能够同时有效地处理多个连接,而不会阻塞其他请求的执行。




Node.js的单线程事件循环架构具有可扩展性和高效的资源利用率,适用于具有大量并发连接的应用程序,如实时应用程序、聊天应用程序或流媒体服务。此外,通过npm(节点包管理器)提供的模块和包的大型生态系统为开发人员提供了广泛的工具,以增强其应用程序的性能和功能。




然而,必须考虑到Node.js可能不是所有场景的最佳选择。一些考虑因素包括:




1. CPU密集型任务:对于严重依赖CPU密集型的任务的应用程序来说,Node.js不是最佳选择,因为它在单个线程上运行,可能无法完全利用多个CPU核心。




2. 大文件上传/下载:Node.js可能不是处理大文件上传或下载的最具性能的选项,因为它的单线程特性可能会消耗大量内存。




3. 现有基础架构和专业技能:考虑团队中现有的基础架构、资源和专业技能。如果您的团队在不同的服务器技术方面拥有丰富的经验,那么利用这些专业知识可能比引入新技术更有效。




4. 特定使用案例:服务器技术的性能可能因应用程序的特定要求而异。评估应用程序的需求至关重要,例如处理繁重的流量、数据库集成或与特定协议的集成,并相应地选择服务器技术。




总之,虽然Node.js为某些用例提供了高性能,但在确定Node.js是否是服务器应用程序最具性能的选择之前,评估您的特定需求、工作负载特征和团队的专业知识是很重要的。

点赞 0
浏览 9.1k