我面對我的MongoDB的環境問題 - 設置如下:MongoDB的+節點:無權執行命令(有時有效,有時不)
我節點的應用程序提供了一個API的RESTify其中處理用戶註冊(根據他的郵件查詢用戶是否存在於集合中,如果不存在,插入他(注意 - 插入使用bcrypt來散列密碼,所以可能會慢一些))。它使用restify和Mongoose ORM。
第二個基準測試腳本(也寫在節點上,運行在同一臺機器上)使用HTTP PUT訪問此restify API。
我從基準測試中的20-30個這樣的請求開始(使用隨機數據),只有一些API請求正確插入新用戶。對於其他,MongoDB的產生類似於以下錯誤:
沒有被授權就......執行命令{發現:「用戶」,過濾器:{郵件:「[email protected]」}}
沒有被授權就......執行命令{插入: 「用戶」,文件:[{...}],命令:假的,writeConcern:【W:1}}
其他一些用戶獲得插入非常好。尤其是在同時(1-5)的請求數量較少的情況下,不會出現任何問題。 Mongo不應該能夠處理這些「低」的請求量嗎?這是一個問題,因爲它在同一臺機器上運行?我在Mongo中爲這個項目創建的用戶是否有足夠的TXT /秒允許?
最好的問候, Zahlii
我對Mongo瞭解不多,但讀寫鎖是否有可能導致這些錯誤?也許檢查這個帖子寫入失敗和鎖定:https://www.rainforestqa.com/blog/2012-11-05-mongodb-gotchas-and-how-to-avoid-them/ – HeadCode
我也面臨這個問題。你能告訴我如何解決這個問題嗎? –