首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Node.js
Express
PPA for Ubuntu
ppa:chris-lea/node.js
V2EX  ›  Node.js

node 接口怎么实现热更新呢?

  •  
  •   minglanyu · 265 天前 · 2579 次点击
    这是一个创建于 265 天前的主题,其中的信息可能已经有所发展或是发生改变。

    例如:
    通过"/foo"接口在数据库某张表里增加了一条记录。假设是增加前记录数是 10,增加后记录数变为 10+1。
    但是"/bar"接口不能返回数据库变化后的记录。那么现在我怎么动态得让"/bar"接口去获得 11 条记录呢?是不是有某种监听的机制?
    求 V 站老哥指点迷津~

    15 回复  |  直到 2018-05-31 23:45:26 +08:00
        1
    2pen   265 天前
    自己加个事件监听?
        2
    hlwjia   265 天前 via iPhone
    这是什么业务场景?
        3
    xxxy   265 天前
    不知道你用的是什么数据库,但是基本上都有触发器这个概念的。Mongodb 的话可以使用 mongo log,在插入事件之后返回。
        4
    minglanyu   265 天前 via Android
    @xxxy 就是 mongodb,我去试一下
        5
    minglanyu   265 天前 via Android
    @xxxy 这是个 package 吗
        6
    minglanyu   265 天前 via Android
    @2pen 试一下
        7
    minglanyu   265 天前 via Android
    @hlwjia 比如为文章新增一条评论,直接存到数据库了嘛,但是我没有实时在文章里获得这条评论
        8
    zenxds   265 天前   ♥ 1
    你需要的是轮询或者 websocket
        9
    tinycold   265 天前   ♥ 1
    同#8,你这个问题不是 node 的问题,二是你前端没有更新请求啊,你后端无论怎么改,前端不把新数据拉回来,都是白搭
        10
    lihongjie0209   265 天前   ♥ 1
    @minglanyu #7 你这是实时聊天的功能,不是评论的功能
        11
    my3157   265 天前   ♥ 1
    不建议在数据库做, 作为一名非专业运维, 研发要用触发器,存储过程一般我都是直接怼回去的, 推荐用 mq , 比较重的有 rabbitmq, 轻量级的有 redis
        12
    Mirana   265 天前
    加一个 select count 的接口啊。。
        13
    minglanyu   265 天前 via Android
    @zenxds @tinycold @lihongjie0209 是不是可以用 socket.io
        14
    crs0910   265 天前 via Android   ♥ 1
    实时场景比较多可以试试 feathers.js ,小需求就简单用下 socket 吧
        15
    minglanyu   265 天前 via Android
    @crs0910 感谢~
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   863 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 17ms · UTC 20:27 · PVG 04:27 · LAX 12:27 · JFK 15:27
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1