pitt1007 2019-11-22 13:08 采纳率: 0%
浏览 662

一个请求是怎么样从DNS到nginx ,然后从nginx访问到dubbo服务的?麻烦说说访问流程

架构:

DNS

nginx+keepalived(反向代理、web层负载均衡);

dubbo+zookeeper(服务端,服务注册和负载均衡);

缓层:redis3.0集群

数据库分库分表中间件:sharding-JDBC

数据库:mysql

  • 写回答

1条回答 默认 最新

  • 猿码士 2024-01-18 11:28
    关注

    当你发送一个请求到一个域名时,这个请求的旅程会经历几个关键步骤,从DNS查询开始,到Nginx作为反向代理,再到最终的Dubbo服务。以下是这个流程的详细解释:

    DNS查询:

    当你在浏览器中输入一个域名(例如 example.com)时,你的计算机首先会查询DNS服务器,以获取该域名的IP地址。
    DNS服务器会将域名的IP地址映射到相应的服务器。

    请求到达Nginx:

    一旦获得了IP地址,你的请求将直接发送到该地址。假设Nginx是负责该域名的Web服务器。
    Nginx是一个高性能的HTTP和反向代理服务器。当Nginx收到请求时,它会根据配置来决定如何处理这个请求。

    Nginx配置:

    Nginx的配置文件定义了如何处理不同类型的请求。例如,你可能有一个配置规则,将所有以.jpg或.png结尾的请求直接发送到文件,而其他所有请求可能都会被转发到后端的应用服务器。

    请求转发:

    如果Nginx决定将请求转发到后端的应用服务器,它会根据配置中的地址或端口号将请求转发给相应的服务器。

    Tomcat和Dubbo:

    如果应用服务器是Tomcat,它可能会托管一个或多个Dubbo服务。Dubbo是一个高性能、轻量级的Java RPC框架。
    当Tomcat收到来自Nginx的请求时,它会根据请求的URL找到相应的Dubbo服务并执行它。Dubbo服务会处理请求并返回响应给Tomcat。

    响应返回:

    Tomcat将Dubbo服务的响应返回给Nginx。
    Nginx再将响应返回给原始的客户端(可能是浏览器或其他客户端)。

    返回客户端:

    客户端收到响应后,可以显示网页内容或进行其他操作。

    在整个过程中,Maven主要在开发阶段用于项目管理和依赖管理。它帮助开发者构建、测试和部署他们的应用程序。但在实际的生产环境中,Maven可能不会直接参与请求的处理流程。

    评论

报告相同问题?

悬赏问题

  • ¥15 算法使用了tf-idf,用手肘图确定k值确定不了,第四轮廓系数又太小才有0.006088746097507285,如何解决?(相关搜索:数据处理)
  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决
  • ¥15 关于华为5g模块mh5000-31接线问题