减少https请求的总大小

时间:2013-01-08 22:25:09

标签: web-services http optimization https request

假设您有一个iPhone应用程序,通过发送下面的JSON字符串不断更新您的坐标;

{"id":"abcd","lat":12.2312,"lon":23.0212}

我确实发送了一个回复;

{"r":"OK"}

现在复杂的部分是(我正在使用 Heroku 作为我的部署服务)当我发出这样的请求时它大约需要 400字节并且被数据计划。一个挑战是,在我的应用程序中,我每2秒发出一次请求,而我计划将其纳入的数据计划不超过每月250 MB 。然而,简单的计算表明;

总计: 400 * 30 * 60 * 24 * 30 = 1 036 800 000 = ~1 GB 非常离谱。那么可以做些什么才能减少正在发送的整体数据 Gzip / deflate,减少标题中发送的元素(甚至删除请求类型),缩短标记?为了尽可能小,我还能做些什么呢?

1 个答案:

答案 0 :(得分:2)

嗯,每个纬度和经度表示大约68英里(~111公里)的测量值。因此,即使在汽车中,发送的大量读数也将在同一程度内。

发送最后一个和当前读数的增量有助于缩小它。

您还可以将lon / lat(或delta)数据连接到一个值,并使用您在服务器端解析的单个分隔符。

So once a minute:  {"id":"abcd","m":"12.2312|23.0212"} 
Then 29 times:     {"id":"abcd","d":"-25|+68"} etc.

你需要弄清楚服务器端,但这是一个开始。