月野うさぎ (TSUKINO Usagi) on Nostr: ...
同じことをJSONテキストにシリアライズした場合でやってみた。
(この時はgolangのライブラリ関数ではなく、7zipのgzip圧縮でやった。オプションは標準。圧縮の条件がバイナリの時と厳密には違う可能性あり)
圧縮前: 16561バイト
圧縮後: 4789バイト
雑に4分の一弱の圧縮率。
圧縮率がこちらの方が倍程度高い理由は、おそらく、鍵、ID、署名なんかのバイト配列をバイナリにエンコードすれば配列長そのままのサイズだが、文字列にすると1byteが1byteの文字2つの2byteに膨れるので、そこいらに圧縮が効いた、ということではないかと推測。
というか、バッチで圧縮かければ、バイナリだろうとJSONテキストだろうと同じぐらいのサイズになるんだなw
うーむ。
#nostrp2p
(この時はgolangのライブラリ関数ではなく、7zipのgzip圧縮でやった。オプションは標準。圧縮の条件がバイナリの時と厳密には違う可能性あり)
圧縮前: 16561バイト
圧縮後: 4789バイト
雑に4分の一弱の圧縮率。
圧縮率がこちらの方が倍程度高い理由は、おそらく、鍵、ID、署名なんかのバイト配列をバイナリにエンコードすれば配列長そのままのサイズだが、文字列にすると1byteが1byteの文字2つの2byteに膨れるので、そこいらに圧縮が効いた、ということではないかと推測。
というか、バッチで圧縮かければ、バイナリだろうとJSONテキストだろうと同じぐらいのサイズになるんだなw
うーむ。
#nostrp2p