流模式入门(上)、场景:批量查询用户积分

为何要用流模式

前面的例子,我们仅仅是传输比较小的数据 基本模式是客户端请求----服务端响应

如果是传输较大数据呢?会带来

1、数据包过大导致压力陡增

2、需要等待客户端包全部发送,才能处理以及响应

 

1,普通查询积分方式

服务端:

syntax="proto3";
package services;

import "google/protobuf/timestamp.proto";

message ProdModel{ //商品模型
    int32 prod_id=1;
    string prod_name=2;
    float prod_price=3;
}


message OrderMain{ //主订单模型
      int32 order_id=1;//订单ID,数字自增
      string order_no=2; //订单号
      int32 user_id=3; //购买者ID
      float order_money=4;//商品金额
      google.protobuf.Timestamp order_time=5; //下单时间
      repeated OrderDetail order_details=6;
}

//子订单模型
message OrderDetail{
    int32 detail_id=1;
    string order_no=2;
    int32 prod_id=3;
    float prod_price=4;
    int32 prod_num=5;
}

//用户模型
message UserInfo{
    int32 user_id=1;
    int32 user_score=2;
}
Models.proto

相关文章: