用于加速opencpu的参数

cmb*_*rbu 5 r opencpu

我开发了一个在EC2服务器上运行的ocpu应用程序,但是,特别是当在EC2服务器上运行时,应用程序(即使只有一个用户,我)非常慢,从a t2.micro到a的碰撞c3.large并没有改变最轻微的事情.

为了查看瓶颈在哪里,我在我的代码中引入了计时器,结果如下:

  • R函数本身持续846ms(本地400ms)
  • 通过ocpu.call()调用此函数的时间为2558ms
  • 通过检索结果,总凸起高达4790ms意味着(大)geojson的检索需要超过2s,而通过API通过curl检索相同的geojson得到它在1.3s
  • 如果我将输出减少为空,则仍然需要1秒才能检索到任何内容.

在我的个人电脑上,总时间不到1500毫秒!

结论:R部分本身并不慢,但其他一切都是!

它们是opencpu的任何选项,以便它更快地处理服务器上的数据吗?

cmb*_*rbu 0

摆弄了相当多的问题,我实际上找到了一个预加载包的参数,请参阅preload服务器手册。我把我使用的所有东西都放在那里,现在整个事情已经降到了 2896 毫秒。好2s了!

但对于 R 函数来说,启动和“返回”仍然需要 1.5 秒,在服务器上需要 0.869 秒,而通常的握手时间约为 200 毫秒。