我想提供一个需要访问大型数据集的网络工具。优选地,这个 R 数据对象应该被加载到内存中一次,然后可用于用户定义的查询。
openCPU 框架是否以任何方式支持持久数据对象,还是每个查询都从空白开始?
OpenCPU API 是无状态的,无法在请求之间保持进程处于活动状态。但是您可以通过将数据集放入一个包中并将其安装在服务器上来轻松解决您的问题。
您可以使用服务器手册preload
中描述的选项,或者在服务器启动时使用脚本将数据集与内存中的数据集一起加载。这样,当请求进来时,数据就可以使用了。/etc/opencpu/Rprofile