我正在重寫一個項目來使用Node.js. 我想繼續使用MySQL做爲數據庫(儘管我不介意重寫架構)。 我正在尋找一種簡單易用,性能合理的ORM,它支持緩存,多對一和多對多關係。 從我能夠找到的MySQL ORM中, persistencejs和sequelize彷佛是最成熟的。 你有經驗嗎? 在個人決定中我應該注意哪些相關的利弊? node
我能夠建議Node ORM嗎? git
https://github.com/dresende/node-orm2 github
有關自述文件的文檔,支持MySQL,PostgreSQL和SQLite。 數據庫
MongoDB自2.1.x版(2013年7月發佈)開始提供 瀏覽器
更新:根據項目的自述文件,再也不維護此包。 它改成推薦書架和續集 緩存
我會選擇Sequelize由於它的優秀文檔。 這只是一個誠實的意見(我歷來沒有真正使用MySQL與Node那麼多)。 架構
首先,請注意我沒有使用其中任何一個(但已使用Node.js)。 性能
兩個庫都記錄得很好,而且具備穩定的API。 可是,persistence.js彷佛在更多項目中使用 。 但我不知道他們是否仍然使用它。 spa
sequelize的開發者有時會在blog.depold.com上發表關於它的博客。 當您想使用主鍵做爲外鍵時,您將須要此博客文章中描述的補丁。 若是您須要persistence.js的幫助,那麼有一個專門討論它的谷歌小組。 code
從我收集的例子來看,sequelize比persistance.js更像JavaScript(更多糖),但支持更少的數據存儲(只有MySQL,而persistance.js甚至可使用瀏覽器內存儲)。
我認爲sequelize多是你的方式,由於你只須要MySQL支持。 可是,若是您須要一些方便的功能(例如搜索)或者但願之後使用其餘數據庫,則須要使用persistence.js。
Sequelize和Persistence.js之間的一個主要區別是前者支持STRING
數據類型,即VARCHAR(255)
。 我以爲製做一切TEXT
真的很不舒服。