zoukankan      html  css  js  c++  java
  • nginx转发grpc服务(grpc ->grpc)

    前言

    网上很多教程都是无效配置,现通过自己实际操作和验证,精简出配置如下

    一、版本要求

    nginx 1.13.10 + (nginx从1.13.10开始支持grpc)

    二、环境信息

    服务器A grpc服务提供者,服务信息 127.0.0.1 8502
    服务器B grpc服务代理者,转发后 服务信息 127.0.0.1 8503
    服务器C grpc测试服务,服务信息 127.0.0.1 8080

    三、需求

    当前C可通过GRPC调用A,考虑到性能及安全性,现需要将A进行代理,由C通过GRPC调用B,再由B进行转发至A

    四、配置

    1.修改nginx.conf配置,在http{}里面添加如下内容:

    # 设置超时和发包大小
    client_max_body_size 4000M;
    grpc_read_timeout 1d;
    grpc_send_timeout 1d;
    grpc_buffer_size 100M;
    
    # 透传headers
    underscores_in_headers on;
    

    2.配置nginx转发

    # grpc 代理配置
    server {
    	listen 8503 http2; # grpc方式对外暴露端口
    	server_name localhost;
    	# access_log logs/access.log main;
    	location / {
    		grpc_pass grpc://127.0.0.1:8502; # 此处配置grpc服务的ip和端口
    	}
    }
    

    五、测试调用

  • 相关阅读:
    前端大文件分片上传/多线程上传
    网页大文件分片上传/多线程上传
    docker基础入门之二
    linux之iptable
    linux内核之网络协议栈
    ubuntu之iptables
    c++栈管理库TCMalloc、jeMalloc
    curl之post提交xml
    ceph基本操作整理
    docker基础入门之一
  • 原文地址:https://www.cnblogs.com/yonyong/p/14014605.html
Copyright © 2011-2022 走看看