2010-01-07 96 views
0

我是一個比較大的系統上工作有:什麼是大型SOA系統的最佳編程語言?

  1. 低C級處理多媒體數據(視頻/音頻)
  2. 一個輕量級的數據庫,最好的MySQL ++/C代碼,但我願意接受其他更好的選擇
  3. 爲前端RESTful Web服務

所有請求將由RESTful接口,低C級處理的真實實幹(分析/處理)和數據庫++/C碼被用於一些處理中間結果將來可以重複使用。

在這種情況下,哪種編程語言最適合這項工作?

東西我曾想過:

  1. 的Java:的Restlet是相當容易使用,它與MySQL工作得很好,但其界面C/​​C++使用JNI是一種過時了。 JNA更新得更好,但它不支持映射C++類,因此集成可能會很難。/C++使用的ctypes /痛飲,工作與MySQL,並擁有自己的Python DB可以使用C工作:

  2. 網:該系統是Linux操作系統,所以排除了淨

  3. 的Python。 REST風格的界面可以用CherryPy等實現。我對Python並不熟悉,這也意味着我的團隊也需要學習Python。

  4. 其他? Perl的?紅寶石? etc ...

+1

MySql不輕量級,berkeley數據庫將是輕量級的,sqlite甚至更輕。 – 2010-01-07 21:52:38

+0

我想你錯過了一些上下文......你的後端是否需要快速響應外部請求?前端主要訪問數據庫還是主要直接與後端對話? – 2010-01-07 22:36:00

+0

1.您的後端是否需要快速響應外部請求? - 是和否。後端需要儘快開始處理請求,但結果將逐步遞送給用戶(即時響應)。 2。前端主要訪問數據庫還是主要直接與後端對話? 目前它是後者(實際上,當我在做出決定之前,我並沒有多多考慮......)我可以做出一些更改,並使前端始終與數據庫交談。哪種方法更好? – Lily 2010-01-08 00:21:00

回答

-1

你會從每一個編程語言粉絲那裏得到一個不同的答案。

但我建議的Ruby/Rails:

  • 易建/路由一個RESTful接口
  • ActiveResource處理Web服務的消費
  • 可以使用Ruby擴展調出C代碼easily
  • 的ActiveRecord或者DataMapper的抽象很好的mysql數據庫
+0

如果OP可以證明使用C/C++比我強烈建議不要混合使用C/C++和執行環境 - 在這種情況下是ruby。紅寶石在前端很好。這是基於這樣的假設,即OP使用C++來做一些嚴肅的事情,而不僅僅是生成網頁。 – 2010-01-07 21:56:32

+0

請問什麼是OP?... – Lily 2010-01-07 22:02:50

+0

OP =原創海報。 – mopoke 2010-01-07 22:20:07

0

如果你喜歡動態語言,Ruby是Web(服務)部分的不錯選擇。我建議不要爲這個特定的目的使用Rails,除非你需要爲使用你的MySQL DB的某些邏輯建立一個Web UI;相反,請使用更輕量的產品,如Sinatra