zoukankan      html  css  js  c++  java
  • 实时数据库框架 End.js

    第一次看到Firebase就被它所吸引,此后尝试使用它开发了一个chrome聊天插件,开发过程中,Firebase极大的提高了开发效率。由于对Firebase的强烈兴趣,所以毕设选择做一个类似的东西,便是End.js

    Firebase几个优点:

    1. 云服务,随时扩展,高性能,无需部署管理自己的服务器,数据库,大大减少工作量
    2. api简单,使用起来非常的方便,可大大减少代码量
    3. 可通过网页对数据进行管理,很方便

    Firebase几个缺点

    1. 数据结构和数据库存储方式不一致(由于想支持REST方式读取数据)
    2. 不能部署自己的数据库(很多项目都需要自己维护数据库的)
    3. 目前数据操作能力教弱(有很多需求(稍微复杂点的查询)目前Firebase很难支持)
    4. 数据分析功能很弱,只能查看流量和当前在线人数(独立数据库的话,这部分很容易做的更强大)
    5. 不支持离线开发(废话。。)
      总结一下就是Firebase弱化了数据库的存在,看起来很酷,但是现实情况下出于安全、数据分析等考虑,自己维护数据库才是更合适的。

    为什么使用End

    1. 如果想部署一个自己的Firebase,可以考虑使用End
    2. 增强了数据库操作能力
    3. 尽量和Firebase api设计一致
    4. 很方便的和其他Node Package结合使用

    客户端使用:

    01 var chat = new End('chat','http://localhost:8080'),
    02     chatRoom = chat.child(window.location.search.split('?')[1]),
    03     chatMsgs = chatRoom.child('msgs');
    04 chatMsgs.on('child_added',function(msg){
    05     $('.msgs').append('<div class="msg">'+msg.value.name+' : '+msg.value.text+'</div>');
    06 });
    07 $('#btn_send').click(function(){
    08     var name = $('.txt_send_name').val();
    09     var text = $('.txt_send_text').val();
    10     chatMsgs.push({name:name,text:text});

    11 });
  • 相关阅读:
    牢骚与javascript中的this
    Vim 命令整理
    跟我一起写 Makefile
    Scikit-Learn模块学习笔记——数据预处理模块preprocessing
    Scikit-Learn模块学习笔记——数据集模块datasets
    Markdown 完全指南
    Shell命令行操作
    init_ir_技术实现篇
    ch2 创建和销毁对象
    ch6 影响 MySQLServer 性能的相关因素
  • 原文地址:https://www.cnblogs.com/shihao/p/3021722.html
Copyright © 2011-2022 走看看