Rscript + PHP exec() 命令与 rapache 的区别

4
我想要一个简单的Web应用程序,它可以接受用户输入,使用预定义的R脚本进行快速计算,并返回一些漂亮的图形,如ggplot。实现这个目标的一种方法是:
  1. 使用PHP从Web表单接受一些输入
  2. 在PHP中对用户输入进行清理
  3. 使用PHP exec()命令和Rscript的组合将参数发送到某个预先编写的R脚本
  4. R执行一些计算并将绘图图形以及一些元信息保存到MySQL数据库服务器上
  5. 客户端然后可以从他们的Web浏览器中访问他们很酷的新图形
这对我来说似乎相当直截了当。因此,我的问题是,rapache包相对于上述过程有哪些优势?
1个回答

4

首先,Rapache不是一个软件包。它是一个Apache模块和一套约定,实际上是用R语言编写Web应用程序的系统...

优点是速度快。缺点是你需要编写大量的R代码。当然,有些人可能不同意我的看法。


一如既往,速度为王。通过“编写一堆R代码”,我假设需要让R脚本输出HTML,有点像PHP的echo()命令。 - stotastic
1
如果您使用brew R软件包安装RApache模块,您可以轻松地在纯HTML代码中使用<%%>标签嵌入R代码。请搜索Jeroen Ooms的教程。 AJAX是您的好朋友。如果可以使用JavaScript完成任务,请不要将负载放在服务器上使用PHP。 AJAX并不会从您的Web应用程序中消除PHP,但它可以消除页面重新加载,提高交互性,外观等方面的问题。 - aL3xa
非常感谢...顺便问一下,是否有专注于R + Web Stuff的“R组”?我非常有兴趣尝试在R和一些PHP CMS之间创建一个简单的API,比如Drupal。 - stotastic
2
有一个名为rApache的谷歌小组,我建议您加入。此外,我刚刚在这里完成了rApache维基百科:http://wiki.rapache.net/我计划在那里添加各种教育材料……只要我能找到时间。 - Jeff

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接