nginx grpc trial

1. Compile

wget https://nginx.org/download/nginx-1.13.10.tar.gz
tar xvf nginx-1.13.10.tar.gz
cd nginx-1.13.10
./configure --with-http_ssl_module --with-http_v2_module

备注:需要安装pcre  openssl 
centos 操作为: yum install -y pcre-devel openssl-devel
2. Simple configuration
   upstream  grpc9001 {
       server 127.0.0.1:9001 weight=20 max_fails=2 fail_timeout=30s;
    }
    upstream  grpc9000 {
       server 127.0.0.1:9000 weight=20 max_fails=2 fail_timeout=30s;
    }
    server {
        listen       80 http2;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
            grpc_pass grpc://grpc9001;
        }
        location /userserviceapp.UserServiceApp{
          grpc_pass grpc://grpc9001;
        }
        location /echoservice.EchoService{
          grpc_pass grpc://grpc9000;
        }    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
3. A few questions
目前在使用  grpc-gateway中间件的时候存在内容content-type 的问题,具体的原因还需要进排查源码
对于grpc 的负载均衡以规则路由目前测试是没有问题的
4. Reference Documentation
https://www.nginx.com/blog/nginx-1-13-10-grpc/
https://mp.weixin.qq.com/s/kiMAMrPx_6lKYJlFwDK6rA
https://nginx.org/en/docs/http/ngx_http_grpc_module.html

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326298307&siteId=291194637