2012-06-19 42 views
0

我可以使用哪種NOSQL DB來併發寫入和讀取大約2000到5000個用戶?我使用了MongoDB,但這不起作用,因爲併發性在mongoDB中是不可能的。是的,我想在我的JAVA代碼中使用該NOSQL數據庫。最快和併發的NOSQL數據庫

+0

你需要它是併發還是快速?如果你需要它快,你需要多快?例如每秒讀/寫。如果你只是想使用你的所有核心,你有多少核心?由於單個用戶應該能夠使用機器的所有資源,因此用戶的數量應該不重要。 –

+0

這對我來說不是問題..我有一個java程序,它將大約2000個用戶連接到服務器,並將他們的請求發送到服務器並從服務器接收響應。這是在java中使用threding完成的。因此,我希望將每個用戶的所有請求和響應同時存儲在數據庫中。 – shalki

+0

我認爲您需要更清楚地瞭解您的要求。如果你有2000個用戶每20秒發出一個請求,並且每個請求需要1毫秒,那麼你將在任何時候平均進行0.1次請求。即小於1.除非你知道你需要併發性,否則你應該假設你不需要併發。 –

回答

0

我們使用Apache Cassandra相當成功,它是寫optimated db解決方案,它有多個客戶端選項http://wiki.apache.org/cassandra/ClientOptions,例如, the Java Hector Client。 Cassandra用於水平縮放,所以如果性能不佳,我們只需添加另一個節點(服務器),性能就會提高。

我們在一秒內完成了數千個併發寫入,而且我們還沒有真正開始縮放水平。

+0

你能給我一些鏈接,我可以得到在Java中使用Hector的例子嗎?一些例子就是我想要的。要連接到數據庫服務器以及如何使用它... – shalki

+0

請嘗試https://github.com/zznate/cassandra-tutorial。一個簡單的連接就像在https://github.com/zznate/cassandra-tutorial/blob/master/src/main/java/com/datastax/tutorial/TutorialBase.java中創建 –

0

您可以嘗試Apache cassandra,它支持使用羣集進行大量的併發寫入。

+0

是否可以在java中使用cassandra?正如我在尋找,但我沒有得到如何在Java中配置。所以,你能幫忙嗎? – shalki