假設我們有一個應用程序,它與服務器進行非常密集的通信(幾秒鐘內有多個請求)。同一秒內發送的請求是獨立的。iOS網絡(速度和流量)優化
什麼樣的方法可以提高數據交換的速度並減少流量? 你能告訴如何實現每一個。
PS: 我在與僱主面談時收到了這個問題,因此我無法對此做更具體的說明。我按「原樣」提出
假設我們有一個應用程序,它與服務器進行非常密集的通信(幾秒鐘內有多個請求)。同一秒內發送的請求是獨立的。iOS網絡(速度和流量)優化
什麼樣的方法可以提高數據交換的速度並減少流量? 你能告訴如何實現每一個。
PS: 我在與僱主面談時收到了這個問題,因此我無法對此做更具體的說明。我按「原樣」提出
最好的建議 - 不要那樣做。請求很貴。如果可能,優化。在一個請求中發送和接收儘可能多的數據(和合理的)。如果不可能嘗試在HTTP中使用壓縮(通常是gzip),儘量減少服務器響應(省略空格,...),儘可能使用緩存。
同意igo,而不是優化你的協議。使用一個持久的TCP套接字,看看像谷歌的協議緩衝區(https://developers.google.com/protocol-buffers/)
非常開放的一般問題,很難知道要通過什麼參數。但是...
1)使用JSON而不是XML進行測試傳輸。
2)不要顯示比絕對要求更多的數據。換句話說,如果你只需要顯示文字,就不要顯示附加的圖片。
3)傳輸圖像時使用強壓縮。 NSData *imageData = UIImageJPEGRepresentation(yourImage, compression);
4)使用異步傳輸和塊。
5)使用TCP,不要搞亂它。
6)嘗試儘可能將您的數據分組到單個傳輸。
你使用什麼樣的協議? – nduplessis
@nduplessis假定它是http。無論如何,我想得到一些概念性的建議 –
除非你在你的問題中得到更多具體的東西,SO的大Poobahs將盡快關閉你的問題... – sangony