實時數據庫框架:End.js
第一次看到Firebase就被它所吸引,此后嘗試使用它開發了一個chrome聊天插件,開發過程中,Firebase極大的提高了開發效率。由于對Firebase的強烈興趣,所以畢設選擇做一個類似的東西,便是End.js
Firebase幾個優點:
- 云服務,隨時擴展,高性能,無需部署管理自己的服務器,數據庫,大大減少工作量
- api簡單,使用起來非常的方便,可大大減少代碼量
- 可通過網頁對數據進行管理,很方便
Firebase幾個缺點
- 數據結構和數據庫存儲方式不一致(由于想支持REST方式讀取數據)
- 不能部署自己的數據庫(很多項目都需要自己維護數據庫的)
- 目前數據操作能力教弱(有很多需求(稍微復雜點的查詢)目前Firebase很難支持)
- 數據分析功能很弱,只能查看流量和當前在線人數(獨立數據庫的話,這部分很容易做的更強大)
- 不支持離線開發(廢話。。)
總結一下就是Firebase弱化了數據庫的存在,看起來很酷,但是現實情況下出于安全、數據分析等考慮,自己維護數據庫才是更合適的。
為什么使用End
- 如果想部署一個自己的Firebase,可以考慮使用End
- 增強了數據庫操作能力
- 盡量和Firebase api設計一致
- 很方便的和其他Node Package結合使用
客戶端使用:
var chat = new End('chat','http://localhost:8080'), chatRoom = chat.child(window.location.search.split('?')[1]), chatMsgs = chatRoom.child('msgs'); chatMsgs.on('child_added',function(msg){ $('.msgs').append('<div class="msg">'+msg.value.name+' : '+msg.value.text+'</div>'); }); $('#btn_send').click(function(){ var name = $('.txt_send_name').val(); var text = $('.txt_send_text').val(); chatMsgs.push({name:name,text:text}); });
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!