首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

可以用数据库实现进程间的通信么?

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

    一个进程往数据库里写东西一个读,比如某某任务完成了就把某个值写成 1。 这样的做法有什么利弊呢? 除此之外还有什么其他的方法呢?

    9 回复  |  直到 2018-08-02 16:53:21 +08:00
        1
    wujichao   204 天前
    感觉杀鸡用牛刀
        2
    wwqgtxx   204 天前 via iPhone
    用 redis 做进程间通讯的倒是不少,最大的好处是后期容易挂物理机迁移
        3
    AllOfMe   204 天前
    为什么不直接用文件存储呢?数据库消耗比较大
        4
    fiht   204 天前 via iPhone
    可以,redis 就可以用来做这个。
    更多的用的是消息队列( message queue )
        5
    petelin   204 天前
    管道了解一下, 本地 socket 了解一下
        6
    yidinghe   204 天前 via Android
    成本高,相应慢,依赖于数据库稳定性和性能
        7
    eslizn   204 天前
    可以,但是推荐用共享内存
        8
    picture2200   204 天前 via Android
    我司很多流程系统都会如此,优势就是简单,各层次开发人员都容易掌握,后面查询也比较方便,因为各种角色都会会点 SQL,跟各种工具集成也方便。缺点就是只能做并发要求不高且模式不复杂的地方。

    我司也用 rabbitmq,主要用在并发较高或者模式复杂的地方,当然架构复杂性就上去了。

    一句话,看自己的场景选择最合适,如果是持续开发的项目,建议根据状况来适度升级架构。最初我司一个原始系统用的是 DB,并发上去后还是死磕原来的架构,最后反而搞得复杂无比,翻掉重新用 rabbitmq 设计了。
        9
    tilv37   204 天前
    socket 可以
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   805 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 18ms · UTC 20:40 · PVG 04:40 · LAX 12:40 · JFK 15:40
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1