说明:这里仅说明单台服务器的情况.Docker Container 分别映射到不同的端口. Docker Container里通过tomcat对外提供服务.

1.如图,如果反向代理服务器发来一个请求,请求到达Nginx后,假设是匹配到Service A的Upstream,这时会根据nginx.conf里对应的分发算法,分配到端口10100或10101.

2.假设10100对应的docker container 内的tomcat挂了(通常是因为container所持有的可用内存不足,导致该container内的tomcat被杀掉.)

3.此时请求正好被分配到10100端口,这时就会导致出现404.

4.如果此时,我们做一份流量的复制,并且加上超时时间.则当请求发送到10100,超时或404后,再将复制的流量发送到10101端口即可.


Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐