如何减少通过 REST api 发送的数据的延迟

Sid*_*Sid 4 python compression networking latency ruby-on-rails

我有一个应用程序,它从我们的其他服务器之一获取 JSON 格式的数据。我面临的问题是,在请求此信息时存在显着延迟。由于传递了大量数据(每个请求大约 1000 条记录,其中每条记录都非常大),有没有一种方法可以通过压缩来帮助降低速度。如果是这样,您会推荐哪种压缩方案。

我在另一个线程上读到,他们的数据模式对需要使用的压缩类型也很重要。数据的模式是一致的,类似于以下

 :desc=>some_description
 :url=>some_url
 :content=>some_content
 :score=>some_score
 :more_attributes=>more_data
Run Code Online (Sandbox Code Playgroud)

有人可以推荐一个解决方案来减少这种延迟。他们的延迟大约是 6-8 秒。我正在使用 Ruby on Rails 开发这个应用程序,而提供数据的服务器大部分使用 Python。

Vla*_*anu 6

我会先看看这个 8s 延迟有多少与:

  1. 服务器端处理(生成数据需要多少时间)这次有很多技术可以改进,包括:

    • 数据库索引

    • 缓存

    • 更快的 to_json 库

一些优秀的资源是关于 Rails 可扩展性的 NewRelic 播客http://railslab.newrelic.com/2009/02/09/episode-7-fragment-caching

  1. 传输延迟(服务器和客户端之间发送数据需要多长时间)