2013-10-01 66 views
1

我想春天做一個web服務。一些容易和有點讓它變得更加複雜。目前我與Symphony2和Mongodb有相同的邏輯,這個想法通過一個Web服務每秒有很多請求。春天和webservice

關鍵是將實際的代碼遷移到Java,我想用spring來做。直到我明白了REST服務,我可以安裝:

  • 球衣
  • 與Spring MVC的直接
  • 傑克遜

哪一個是最好的,更符合實際,快速,容易... 。?在其他網站,我試圖用我的實際數據庫(Mongo)與休眠,但我有幾個問題。那麼,我的問題在於,我應該選擇其他數據庫嗎?我應該刪除休眠? hibernate如何懲罰延遲我的意思是如果我使用或不使用hibernate,我會損失多少時間。例如,如果您使用Doctrine或不使用Docphine(PHP中的hibernate = Doctrine「或多或少」),那麼從您發送請求到webservice的時間就會有所不同,您可以從中獲得答案。

我終於我用冬眠什麼DB:

  • MySql的
  • PostgreSQL的
  • 甲骨文

的想法是使與股市相關的項目,所以很多的變化與貨幣和新的插入,更新和同時在數據庫中選擇。當更接近「實時」更好。

感謝您的幫助!我對我更多的PHP男孩試圖改變到Java :)

+1

爲什麼要用mongodb使用hibernate? –

+0

嗯,只是因爲我的實際邏輯是與mongo + DoctrineMongo,我應該刪除MongoDb?但後來......我應該選擇哪個數據庫我知道,例如Mysql並不像MongoDB那麼快。 –

回答

1

不是一個真正的問題,這些問題很抱歉,但如果是我和春天是一組要求:

我想通過設立啓動通過Spring BootSpring Roo添加一個Spring應用程序,通過Jackson JSON processor(這與Spring完美集成)添加一些控制器併發送JSON並使用Spring Data將我的數據推送到內存中的存儲(Spring Data RedisRedis。您將不得不關心持久性,但可能會不時異步執行此操作(例如,使用Spring Data MongoDB)。如果這些控制器映射不足以滿足您的用例,並且您確實想要使用REST,則還會有一個Spring Data REST子項目將您的數據公開爲「RESTful端點」。這應該與存儲/持久層很好地集成(從未自己使用過)。

不太瞭解Hibernate的懲罰,我認爲這是你應該測量自己的東西。但是,保持設置儘可能簡單總是一個好主意,所以請嘗試在沒有Hibernate的情況下啓動。當然,如果你想/需要/應該使用ORM,它強烈依賴於你的數據。說起簡單:沒有關於這一點很簡單,你已經有很多庫和依賴關係。這些日子裏似乎都有一個Spring項目,但我對所有這些Spring Data項目的成熟度一無所知。

一般來說(和理論上):如果您使用正確的抽象,那麼如果您需要測試性能瓶頸,您應該能夠稍後遷移到不同的持久性提供程序。