2010-08-16 70 views
4

說我想要一個簡單的Web應用程序,它需要一些用戶輸入,在一些預定義的R腳本中執行快速計算,並返回一些看起來很酷的圖形與說ggplot。這樣做的一個方法是:Rscript + PHP的exec()命令vs rapache

  1. 讓PHP接受來自網絡的形式
  2. 消毒用戶輸入PHP
  3. 一些輸入發送參數一些預先寫入的R腳本中使用的某種組合PHP的exec()命令和RSCRIPT
  4. [R做了一些計算和保存情節圖形服務器,以及一些元信息到MySQL數據庫
  5. 的客戶端可以從他們的Web瀏覽器訪問自己的很酷的新的圖形

這看起來相當直截了當。因此我的問題是,rapache軟件包對所描述的過程有什麼優勢?

回答

4

首先,rapache不是一個包。這是一個Apache模塊和一套約定,真的是一個系統,用於創建用R編寫的Web應用程序...

優點是速度。缺點是你必須編寫一堆R代碼。雖然有些人可能會不同意我的觀點。

+0

一如既往,速度爲王。通過「編寫一堆R代碼」,我假設需要R腳本輸出HTML,就像PHP echo()命令一樣。 – stotastic 2010-08-17 01:10:53

+1

如果您使用'brew' R軟件包安裝RApache模塊,您可以輕鬆地將R代碼與純代碼HTML'<%' and '%>'標籤合併。 Google for Jeroen Ooms的教程。 AJAX是你的朋友。如果你可以用JavaScript來完成,不要把負載放在服務器上。 AJAX並沒有消除你的web應用程序中的PHP,但它消除了頁面重新加載,提高交互性,良好的外觀等。 – aL3xa 2010-08-17 05:51:16

+0

非常感謝...順便說一下,有沒有任何'R組'關注R + Web Stuff?我會很樂意嘗試在R和一些PHP CMS(如Drupal)之間創建一個簡單的API。 – stotastic 2010-08-17 12:39:30