Skip to content

Instantly share code, notes, and snippets.

@shaunlee
Last active December 22, 2015 14:18
Show Gist options
  • Save shaunlee/6484676 to your computer and use it in GitHub Desktop.
Save shaunlee/6484676 to your computer and use it in GitHub Desktop.
新老RPC协议TCP数据包大小对比

新老RPC协议TCP数据包大小对比

新协议

共计 682 字节(压缩后429),其中请求数据 149 字节(141)、返回数据 533 字节(288)

老协议

共计 1650 字节,其中请求数据 370 字节、返回数据 1280 字节(HTTP 头 136 字节 + 数据 1144 字节)

新协议的数据量是老协议的 42%, 压缩后 26%

TCP数据包

新协议(Text)

9 * 16 + 5 = 149
T 127.0.0.1:34410 -> 127.0.0.1:2201 [AP]
  33 0a 52 50 43 0a 31 33    38 0a 7b 22 76 65 72 73    3.RPC.138.{"vers
  69 6f 6e 22 3a 22 32 2e    30 22 2c 22 63 6c 61 73    ion":"2.0","clas
  73 22 3a 22 52 70 63 43    6c 69 65 6e 74 5f 55 73    s":"RpcClient_Us
  65 72 5f 49 6e 66 6f 22    2c 22 6d 65 74 68 6f 64    er_Info","method
  22 3a 22 62 79 55 69 64    22 2c 22 70 61 72 61 6d    ":"byUid","param
  73 22 3a 5b 35 31 30 30    5d 2c 22 75 73 65 72 22    s":[5100],"user"
  3a 22 4f 70 74 6f 6f 6c    22 2c 22 73 69 67 6e 22    :"Optool","sign"
  3a 22 33 36 65 35 39 39    61 35 62 65 37 61 33 37    :"36e599a5be7a37
  30 65 36 61 35 61 63 34    33 63 35 61 61 33 38 34    0e6a5ac43c5aa384
  30 33 22 7d 0a                                        03"}.           

33 * 16 - 4 = 533
T 127.0.0.1:2201 -> 127.0.0.1:33446 [AP]
  35 31 39 0a 7b 22 72 65    73 75 6c 74 22 3a 7b 22    519.{"result":{"
  75 69 64 22 3a 22 35 31    30 30 22 2c 22 63 72 65    uid":"5100","cre
  61 74 65 5f 74 69 6d 65    73 74 61 6d 70 22 3a 22    ate_timestamp":"
  31 33 31 30 33 39 36 36    36 33 22 2c 22 75 73 65    1310396663","use
  72 5f 75 70 64 61 74 65    64 22 3a 22 30 22 2c 22    r_updated":"0","
  75 73 65 72 5f 75 70 64    61 74 65 5f 74 69 6d 65    user_update_time
  73 74 61 6d 70 22 3a 22    30 22 2c 22 6e 69 63 6b    stamp":"0","nick
  6e 61 6d 65 22 3a 22 5c    75 37 33 62 32 5c 75 37    name":"\u73b2\u7
  33 62 32 22 2c 22 61 76    61 74 61 72 5f 6c 61 72    3b2","avatar_lar
  67 65 22 3a 22 22 2c 22    61 76 61 74 61 72 5f 73    ge":"","avatar_s
  6d 61 6c 6c 22 3a 22 22    2c 22 67 65 6e 64 65 72    mall":"","gender
  22 3a 22 32 22 2c 22 62    69 72 74 68 64 61 79 22    ":"2","birthday"
  3a 22 30 30 30 30 2d 30    30 2d 30 30 22 2c 22 68    :"0000-00-00","h
  69 64 65 5f 70 72 69 76    61 63 79 22 3a 22 30 22    ide_privacy":"0"
  2c 22 68 69 64 65 5f 6d    79 5f 70 72 6f 64 75 63    ,"hide_my_produc
  74 73 22 3a 22 31 22 2c    22 73 6b 69 6e 5f 74 79    ts":"1","skin_ty
  70 65 22 3a 22 22 2c 22    68 61 69 72 5f 74 79 70    pe":"","hair_typ
  65 22 3a 22 22 2c 22 70    75 72 63 68 61 73 69 6e    e":"","purchasin
  67 5f 70 6f 77 65 72 22    3a 22 22 2c 22 63 6f 6d    g_power":"","com
  6d 65 6e 74 22 3a 22 22    2c 22 70 72 6f 64 75 63    ment":"","produc
  74 5f 72 65 70 6f 72 74    73 5f 6e 75 6d 62 65 72    t_reports_number
  22 3a 22 30 22 2c 22 70    72 6f 64 75 63 74 73 5f    ":"0","products_
  6e 75 6d 62 65 72 22 3a    22 31 33 22 2c 22 6e 75    number":"13","nu
  6d 62 65 72 5f 73 79 6e    63 65 64 5f 74 69 6d 65    mber_synced_time
  73 74 61 6d 70 22 3a 22    31 33 34 35 36 30 39 37    stamp":"13456097
  38 36 22 2c 22 70 72 6f    64 75 63 74 5f 72 65 70    86","product_rep
  6f 72 74 5f 6c 61 73 74    5f 72 65 61 64 5f 6e 6f    ort_last_read_no
  74 69 63 65 5f 74 69 6d    65 22 3a 22 30 22 2c 22    tice_time":"0","
  69 73 5f 75 67 63 5f 66    6f 72 62 69 64 64 65 6e    is_ugc_forbidden
  22 3a 22 30 22 2c 22 63    72 6d 5f 72 65 61 6c 6e    ":"0","crm_realn
  61 6d 65 22 3a 22 22 2c    22 63 72 6d 5f 6d 6f 62    ame":"","crm_mob
  69 6c 65 22 3a 22 22 2c    22 63 72 6d 5f 74 65 6c    ile":"","crm_tel
  70 68 6f 6e 65 22 3a 22    22 7d 7d 0a                phone":""}}.  

老协议TCP数据包(HTTP)

23 * 16 + 2 = 370
T 127.0.0.1:55450 -> 127.0.0.1:8080 [AP]
  50 4f 53 54 20 2f 72 70    63 2e 70 68 70 3f 70 72    POST /rpc.php?pr
  6f 74 6f 63 6f 6c 3d 70    68 70 26 75 73 65 72 3d    otocol=php&user=
  4f 70 74 6f 6f 6c 26 73    69 67 6e 3d 33 36 65 35    Optool&sign=36e5
  39 39 61 35 62 65 37 61    33 37 30 65 36 61 35 61    99a5be7a370e6a5a
  63 34 33 63 35 61 61 33    38 34 30 33 20 48 54 54    c43c5aa38403 HTT
  50 2f 31 2e 31 0d 0a 48    6f 73 74 3a 20 31 32 37    P/1.1..Host: 127
  2e 30 2e 30 2e 31 3a 38    30 38 30 0d 0a 41 63 63    .0.0.1:8080..Acc
  65 70 74 3a 20 2a 2f 2a    0d 0a 43 6f 6e 74 65 6e    ept: */*..Conten
  74 2d 54 79 70 65 3a 20    61 70 70 6c 69 63 61 74    t-Type: applicat
  69 6f 6e 2f 78 2d 72 6d    2d 72 70 63 3b 20 63 68    ion/x-rm-rpc; ch
  61 72 73 65 74 3d 75 74    66 2d 38 0d 0a 43 6f 6e    arset=utf-8..Con
  6e 65 63 74 69 6f 6e 3a    20 63 6c 6f 73 65 0d 0a    nection: close..
  43 6f 6e 74 65 6e 74 2d    4c 65 6e 67 74 68 3a 20    Content-Length: 
  31 35 35 0d 0a 0d 0a 61    3a 36 3a 7b 73 3a 37 3a    155....a:6:{s:7:
  22 76 65 72 73 69 6f 6e    22 3b 73 3a 33 3a 22 31    "version";s:3:"1
  2e 30 22 3b 73 3a 35 3a    22 63 6c 61 73 73 22 3b    .0";s:5:"class";
  73 3a 31 33 3a 22 52 70    63 4a 75 6d 65 69 5f 55    s:13:"RpcJumei_U
  73 65 72 22 3b 73 3a 36    3a 22 6d 65 74 68 6f 64    ser";s:6:"method
  22 3b 73 3a 31 32 3a 22    67 65 74 49 6e 66 6f 42    ";s:12:"getInfoB
  79 55 69 64 22 3b 73 3a    36 3a 22 70 61 72 61 6d    yUid";s:6:"param
  73 22 3b 61 3a 31 3a 7b    69 3a 30 3b 69 3a 35 31    s";a:1:{i:0;i:51
  30 30 3b 7d 73 3a 37 3a    22 6f 70 74 69 6f 6e 73    00;}s:7:"options
  22 3b 4e 3b 73 3a 32 3a    22 69 64 22 3b 69 3a 30    ";N;s:2:"id";i:0
  3b 7d                                                 ;}              

9 * 16 - 8 = 136
T 127.0.0.1:8080 -> 127.0.0.1:55450 [AP]
  48 54 54 50 2f 31 2e 31    20 32 30 30 20 4f 4b 0d    HTTP/1.1 200 OK.
  0a 48 6f 73 74 3a 20 31    32 37 2e 30 2e 30 2e 31    .Host: 127.0.0.1
  3a 38 30 38 30 0d 0a 43    6f 6e 6e 65 63 74 69 6f    :8080..Connectio
  6e 3a 20 63 6c 6f 73 65    0d 0a 58 2d 50 6f 77 65    n: close..X-Powe
  72 65 64 2d 42 79 3a 20    50 48 50 2f 35 2e 35 2e    red-By: PHP/5.5.
  33 2d 31 7e 64 6f 74 64    65 62 2e 31 0d 0a 43 6f    3-1~dotdeb.1..Co
  6e 74 65 6e 74 2d 74 79    70 65 3a 20 61 70 70 6c    ntent-type: appl
  69 63 61 74 69 6f 6e 2f    6f 63 74 65 74 2d 73 74    ication/octet-st
  72 65 61 6d 0d 0a 0d 0a                               ream....        

72 * 16 - 8 = 1144
T 127.0.0.1:8080 -> 127.0.0.1:55450 [AP]
  61 3a 35 3a 7b 73 3a 37    3a 22 76 65 72 73 69 6f    a:5:{s:7:"versio
  6e 22 3b 73 3a 33 3a 22    31 2e 30 22 3b 73 3a 32    n";s:3:"1.0";s:2
  3a 22 69 64 22 3b 69 3a    30 3b 73 3a 36 3a 22 72    :"id";i:0;s:6:"r
  65 73 75 6c 74 22 3b 61    3a 31 3a 7b 73 3a 36 3a    esult";a:1:{s:6:
  22 72 65 73 75 6c 74 22    3b 61 3a 32 33 3a 7b 73    "result";a:23:{s
  3a 33 3a 22 75 69 64 22    3b 73 3a 34 3a 22 35 31    :3:"uid";s:4:"51
  30 30 22 3b 73 3a 31 36    3a 22 63 72 65 61 74 65    00";s:16:"create
  5f 74 69 6d 65 73 74 61    6d 70 22 3b 73 3a 31 30    _timestamp";s:10
  3a 22 31 33 31 30 33 39    36 36 36 33 22 3b 73 3a    :"1310396663";s:
  31 32 3a 22 75 73 65 72    5f 75 70 64 61 74 65 64    12:"user_updated
  22 3b 73 3a 31 3a 22 30    22 3b 73 3a 32 31 3a 22    ";s:1:"0";s:21:"
  75 73 65 72 5f 75 70 64    61 74 65 5f 74 69 6d 65    user_update_time
  73 74 61 6d 70 22 3b 73    3a 31 3a 22 30 22 3b 73    stamp";s:1:"0";s
  3a 38 3a 22 6e 69 63 6b    6e 61 6d 65 22 3b 73 3a    :8:"nickname";s:
  36 3a 22 e7 8e b2 e7 8e    b2 22 3b 73 3a 31 32 3a    6:"......";s:12:
  22 61 76 61 74 61 72 5f    6c 61 72 67 65 22 3b 73    "avatar_large";s
  3a 30 3a 22 22 3b 73 3a    31 32 3a 22 61 76 61 74    :0:"";s:12:"avat
  61 72 5f 73 6d 61 6c 6c    22 3b 73 3a 30 3a 22 22    ar_small";s:0:""
  3b 73 3a 36 3a 22 67 65    6e 64 65 72 22 3b 73 3a    ;s:6:"gender";s:
  31 3a 22 32 22 3b 73 3a    38 3a 22 62 69 72 74 68    1:"2";s:8:"birth
  64 61 79 22 3b 73 3a 31    30 3a 22 30 30 30 30 2d    day";s:10:"0000-
  30 30 2d 30 30 22 3b 73    3a 31 32 3a 22 68 69 64    00-00";s:12:"hid
  65 5f 70 72 69 76 61 63    79 22 3b 73 3a 31 3a 22    e_privacy";s:1:"
  30 22 3b 73 3a 31 36 3a    22 68 69 64 65 5f 6d 79    0";s:16:"hide_my
  5f 70 72 6f 64 75 63 74    73 22 3b 73 3a 31 3a 22    _products";s:1:"
  31 22 3b 73 3a 39 3a 22    73 6b 69 6e 5f 74 79 70    1";s:9:"skin_typ
  65 22 3b 73 3a 30 3a 22    22 3b 73 3a 39 3a 22 68    e";s:0:"";s:9:"h
  61 69 72 5f 74 79 70 65    22 3b 73 3a 30 3a 22 22    air_type";s:0:""
  3b 73 3a 31 36 3a 22 70    75 72 63 68 61 73 69 6e    ;s:16:"purchasin
  67 5f 70 6f 77 65 72 22    3b 73 3a 30 3a 22 22 3b    g_power";s:0:"";
  73 3a 37 3a 22 63 6f 6d    6d 65 6e 74 22 3b 73 3a    s:7:"comment";s:
  30 3a 22 22 3b 73 3a 32    32 3a 22 70 72 6f 64 75    0:"";s:22:"produ
  63 74 5f 72 65 70 6f 72    74 73 5f 6e 75 6d 62 65    ct_reports_numbe
  72 22 3b 73 3a 31 3a 22    30 22 3b 73 3a 31 35 3a    r";s:1:"0";s:15:
  22 70 72 6f 64 75 63 74    73 5f 6e 75 6d 62 65 72    "products_number
  22 3b 73 3a 32 3a 22 31    33 22 3b 73 3a 32 33 3a    ";s:2:"13";s:23:
  22 6e 75 6d 62 65 72 5f    73 79 6e 63 65 64 5f 74    "number_synced_t
  69 6d 65 73 74 61 6d 70    22 3b 73 3a 31 30 3a 22    imestamp";s:10:"
  31 33 34 35 36 30 39 37    38 36 22 3b 73 3a 33 36    1345609786";s:36
  3a 22 70 72 6f 64 75 63    74 5f 72 65 70 6f 72 74    :"product_report
  5f 6c 61 73 74 5f 72 65    61 64 5f 6e 6f 74 69 63    _last_read_notic
  65 5f 74 69 6d 65 22 3b    73 3a 31 3a 22 30 22 3b    e_time";s:1:"0";
  73 3a 31 36 3a 22 69 73    5f 75 67 63 5f 66 6f 72    s:16:"is_ugc_for
  62 69 64 64 65 6e 22 3b    73 3a 31 3a 22 30 22 3b    bidden";s:1:"0";
  73 3a 31 32 3a 22 63 72    6d 5f 72 65 61 6c 6e 61    s:12:"crm_realna
  6d 65 22 3b 73 3a 30 3a    22 22 3b 73 3a 31 30 3a    me";s:0:"";s:10:
  22 63 72 6d 5f 6d 6f 62    69 6c 65 22 3b 73 3a 30    "crm_mobile";s:0
  3a 22 22 3b 73 3a 31 32    3a 22 63 72 6d 5f 74 65    :"";s:12:"crm_te
  6c 70 68 6f 6e 65 22 3b    73 3a 30 3a 22 22 3b 7d    lphone";s:0:"";}
  7d 73 3a 35 3a 22 73 74    61 74 73 22 3b 61 3a 32    }s:5:"stats";a:2
  3a 7b 73 3a 37 3a 22 72    75 6e 54 69 6d 65 22 3b    :{s:7:"runTime";
  64 3a 30 2e 32 31 39 33    30 35 39 39 32 31 32 36    d:0.219305992126
  34 36 34 38 34 3b 73 3a    31 31 3a 22 73 71 6c 43    46484;s:11:"sqlC
  6f 6d 6d 61 6e 64 73 22    3b 61 3a 31 3a 7b 69 3a    ommands";a:1:{i:
  30 3b 61 3a 36 3a 7b 73    3a 31 34 3a 22 63 6f 6e    0;a:6:{s:14:"con
  6e 65 63 74 69 6f 6e 4e    61 6d 65 22 3b 73 3a 31    nectionName";s:1
  34 3a 22 74 75 61 6e 6d    65 69 40 73 6c 61 76 65    4:"tuanmei@slave
  31 22 3b 73 3a 38 3a 22    66 75 6e 63 74 69 6f 6e    1";s:8:"function
  22 3b 73 3a 35 3a 22 71    75 65 72 79 22 3b 73 3a    ";s:5:"query";s:
  33 3a 22 73 71 6c 22 3b    73 3a 36 34 3a 22 53 45    3:"sql";s:64:"SE
  4c 45 43 54 20 20 2a 20    20 46 52 4f 4d 20 60 74    LECT  *  FROM `t
  75 61 6e 6d 65 69 5f 75    73 65 72 5f 69 6e 66 6f    uanmei_user_info
  60 20 20 57 48 45 52 45    20 20 28 60 75 69 64 60    `  WHERE  (`uid`
  20 3d 20 27 35 31 30 30    27 29 20 20 20 20 22 3b     = '5100')    ";
  73 3a 31 32 3a 22 61 66    66 65 63 74 65 64 52 6f    s:12:"affectedRo
  77 73 22 3b 69 3a 31 3b    73 3a 39 3a 22 62 65 67    ws";i:1;s:9:"beg
  69 6e 54 69 6d 65 22 3b    64 3a 31 33 37 38 34 33    inTime";d:137843
  36 36 38 34 2e 32 32 34    39 32 36 39 3b 73 3a 37    6684.2249269;s:7
  3a 22 65 6e 64 54 69 6d    65 22 3b 64 3a 31 33 37    :"endTime";d:137
  38 34 33 36 36 38 34 2e    33 31 30 37 39 32 39 3b    8436684.3107929;
  7d 7d 7d 73 3a 36 3a 22    6f 75 74 70 75 74 22 3b    }}}s:6:"output";
  73 3a 30 3a 22 22 3b 7d                               s:0:"";}        
@macdylan
Copy link

macdylan commented Sep 8, 2013

Nice!

@macdylan
Copy link

macdylan commented Sep 8, 2013

老协议这个把debug关了应该也还好吧,比新协议多些HTTP头

整体算下来开销还是省了接近一半的,很多RPC请求返回的数据还不一定有 HTTP 头长

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment