我沒有太多的位和字節,所以我很抱歉,如果這個問題很愚蠢。通過UDP傳輸數據最小化的最有效方法是什麼?
我有一些插座的經驗,通常用於傳輸少量的純文本。但是這一次我必須傳輸更多的數據,我可以通過UDP分解。
我正在開發一個遊戲,其中服務器是用Java編寫的,我想向客戶端發送一個對象數組。由於我是一個web開發人員,JSON是傳輸數據時彈出的第一個東西,但我非常懷疑這是網絡中最有效的方式。
在JSON的情況下:
{
"players": [
{
"id": "884B0EAA2C7F16BA", // hex string
"name": "some guy", // string
"x": 0, // double
"y": 0, // double
"xv": 0, // double
"yv": 0, // double
"angle": 0, // double
}, {
"id": "AB61F7C2AAE0B488", // hex string
"name": "some other guy", // string
"x": 0, // double
"y": 0, // double
"xv": 0, // double
"yv": 0, // double
"angle": 0, // double
}
]
}
現在,我可以添加自定義的分隔符來分割每個球員和另一個分隔符分割的數據。在我的光學中,最有效的方法之一是將每行播放器的值放入,並在這些值之間放置預定義的字符序列。
884B0EAA2C7F16BA[|]some guy[|]0[|]0[|]0[|]0[|]0
AB61F7C2AAE0B488[|]some other guy[|]0[|]0[|]0[|]0[|]0
雖然這對我很有用,但名稱等仍有一些安全隱患。我很難告訴客戶,包含「[|]」的顯示名稱是非法的。
什麼是儘量減少傳輸數據的最有效的方法是什麼?
有關加密任何其他資料將不勝感激!
「加密」 deoesn't最小化數據,*壓縮*數據最小化 - 你可以看看類似的gzip壓縮類(GZIPInput /輸出中流)? – Nim 2012-07-12 11:24:49