2
我必須在集羣環境(許多無狀態的基於Java的應用服務器+ Mongodb)範圍內(0-100.000)生成隨機數 - 因此每個用戶請求會得到一些唯一的號碼,並會在接下來的幾個請求中保留它。在集羣環境中生成一個範圍內(0-100k)的隨機數
據我所知,我有兩個選擇: 1.有一些數字持續在mongo和incrementAndGet它 - 但它不是原子 - 不好的選擇。 2.使用Redis - 它是原子和支持計數器。 3.任何想法?使用UUID併爲其設置範圍安全嗎? 4. Hazelcast?
其他呢?
感謝
預先生成隨機數,將它們全部存儲起來,然後按順序爲每個用戶分配數組/列表/表/其他數據中的「下一個」數字? – 2013-02-18 00:03:33
如果唯一性是真正的要求,順序是好的,請使用規範的http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/方法。 – JohnnyHK 2013-02-18 00:47:03