咖啡伴侶

          呆在上海
          posts - 163, comments - 156, trackbacks - 0, articles - 2

          go對象序列化和反序列化

          Posted on 2013-09-29 09:52 oathleo 閱讀(3073) 評論(0)  編輯  收藏 所屬分類: Golang
          模擬測試1,000, 000條數(shù)據(jù) 每條10個字節(jié)  也就是10M不到的 數(shù)據(jù)(高度結(jié)構(gòu)化的數(shù)據(jù))
          過程
          1.對象序列化為 byte
          2.byte反序為對象
          3.gzip壓縮byte

          測試語言go
          測試方案: raw byte,json ,bson, msgpack (protostuff需要先做對象配置文件,比較麻煩,通常認為和msgpack性能相當 )
          結(jié)果:msgpack 勝出


          大小
          gzip壓縮后大小
          對象到byte耗時
          byte到對象耗時
          raw 10000000
          6573252(65%) 未測試
          未測試
          json
          47515988 7919511 (17%) 3248ms 5280ms
          bson
          49888910 9506965 (19%)
          3863ms 6235ms
          msgpack
          29934223 7448484 2046ms 3113ms


          raw data: 1000000
          raw data gzip compress: 6573252 //gzip壓縮后大小

          start: 1000000
          Marshal cost: 3248  //json 序列化耗時
          json string: 47515988 
          json byte: 47515988  //二進制數(shù)組大小
          Unmarshal cost: 5280  //json 反序列化耗時
          test data: {1 100 0.9405091}
          json gzip compress: 7919511 //gzip壓縮后大小

          start
          Marshal cost: 3863
          bson byte: 49888910
          Unmarshal cost: 6235
          test data: {1 100 0.9405091}
          bson gzip compress: 9506965


          start: 1000000
          Marshal cost: 2046
          msgpack: 29934223
          Unmarshal cost: 3113
          test data: {1 100 0.9405091}
          msgpack gzip compress: 7448484
          主站蜘蛛池模板: 蒙山县| 绿春县| 台东市| 那坡县| 盈江县| 云安县| 侯马市| 威远县| 江川县| 宿州市| 丹东市| 丹巴县| 铜川市| 积石山| 句容市| 随州市| 九龙县| 华安县| 包头市| 潜江市| 上栗县| 文成县| 莎车县| 济宁市| 视频| 万州区| 渝北区| 鱼台县| 徐水县| 都兰县| 自治县| 鄂托克前旗| 临邑县| 麻江县| 巩留县| 从化市| 任丘市| 三门县| 揭东县| 古田县| 永泰县|