V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
silov
V2EX  ›  PHP

有人做过在线的实时聊天系统么?多个一对一

  •  
  •   silov · 2016-09-11 15:18:52 +08:00 · 12303 次点击
    这是一个创建于 2781 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Web 端的实时聊天。

    目前技术选择,前端 Node 系列,后端 Laravel

    PHP 实现此类功能会不会太弱了?

    有做过的或者了解过类似功能的开源项目的,求推荐&指导
    第 1 条附言  ·  2016-09-12 10:13:37 +08:00
    1.关于我的问题主题: php-server 端如何实现?

    2.关于 Node : 网站前后端分离, php 处理 server 端的东西,前端部分又做了一层 node 与 php 进行交互。。。
    41 条回复    2019-01-23 17:42:18 +08:00
    tkisme
        1
    tkisme  
       2016-09-11 15:33:43 +08:00
    前端 Node 系列
    厉害。。。
    ericls
        2
    ericls  
       2016-09-11 15:37:09 +08:00
    web socket 即可啊
    eoo
        3
    eoo  
       2016-09-11 15:37:28 +08:00 via Android
    前端 后端 一起上
    jeremaihloo
        4
    jeremaihloo  
       2016-09-11 15:52:41 +08:00 via Android
    shiina
        5
    shiina  
       2016-09-11 16:05:52 +08:00
    最近好像很多 Node 前端的, 这难道是潮流??
    wolfan
        6
    wolfan  
       2016-09-11 16:10:28 +08:00
    可以用右边广告上的‘野狗’君来玩的说~
    yun
        7
    yun  
       2016-09-11 16:13:45 +08:00
    cometchat.com 一个 php+jquery 实时聊天插件,很强大。
    silov
        8
    silov  
    OP
       2016-09-11 16:25:28 +08:00
    @wolfan 自建,不打算买服务。。。
    silov
        9
    silov  
    OP
       2016-09-11 16:25:47 +08:00
    @yun 看起来不错,我研究下~3Q~
    momou
        10
    momou  
       2016-09-11 16:37:27 +08:00
    http://socket.io/
    分分钟实现。。。
    job111lyckk1
        11
    job111lyckk1  
       2016-09-11 17:49:54 +08:00
    18600491593
        12
    18600491593  
       2016-09-11 17:52:57 +08:00
    十几年 这是 各大门户网站基本功能啊 那会还是 cgi 的时代 啊啊啊啊太遥远了 勾起了我的回忆
    49degree
        13
    49degree  
       2016-09-11 18:09:26 +08:00
    野狗这个 DEMO 改进下,应该可以实现
    https://docs.wilddog.com/resources/sync/web/tutorial.html
    hwiiago
        14
    hwiiago  
       2016-09-11 18:11:05 +08:00 via iPhone
    swoole 有 demo
    tkisme
        15
    tkisme  
       2016-09-11 19:03:37 +08:00
    澄清一点: node 不是前端技术,是后端技术
    然后项目有 rocketchat 和 lets chat

    https://github.com/RocketChat/Rocket.Chat

    https://github.com/sdelements/lets-chat
    williamx
        16
    williamx  
       2016-09-11 19:28:51 +08:00
    刚用 laravel 做了个
    rokeyzki
        17
    rokeyzki  
       2016-09-11 19:37:14 +08:00
    前端 Node 系列是什么鬼。。。
    bdbai
        18
    bdbai  
       2016-09-11 21:35:03 +08:00 via Android
    @tkisme2013 @rokeyzki 这年头前端复杂点的都得上 node
    yeasy
        19
    yeasy  
       2016-09-11 22:14:26 +08:00
    看规模,万以下规模常见技术即可。
    liuxu
        20
    liuxu  
       2016-09-11 22:17:42 +08:00
    我明天正要做聊天室,多对多。。这几天想了想,聊天原理上就是后端维护一个队列,发消息就写进入这个队列,然后每个客户端循环请求读取这个队列。。至于这个队列用 redis 还是 mysql 来我还没想好,循环请求间隔时间我准备用一个平均 ajax 完整请求时间*2
    wwlweihai
        21
    wwlweihai  
       2016-09-11 22:26:58 +08:00
    websocket 可以满足,如果是用 nodejs 可以考虑用 socket.io 这个包。

    但是,开发起来稍微有点麻烦。 所以我安利你用 meteor ,我用 meteor 做了一个论坛,看似是一个网页,但是由于支持 websocket 所以把他当成一个聊天室也没问题。 给个地址 http://coderapp.ohuoyi.com/ 体验下吧!
    CupTools
        22
    CupTools  
       2016-09-11 23:05:32 +08:00
    做过, Vue.js + WebSocket + NodeJS 。真心一晚上搞定的事情,帮一个教授做的
    lovesky
        23
    lovesky  
       2016-09-11 23:14:47 +08:00
    可以参考贤心的 LayIM

    http://layim.layui.com/
    smsvir
        24
    smsvir  
       2016-09-12 00:29:15 +08:00 via iPhone
    github/开源中国,去搜啊
    cunkouwdy007
        25
    cunkouwdy007  
       2016-09-12 00:41:39 +08:00 via Android
    推荐 wokerman
    qile1
        26
    qile1  
       2016-09-12 10:12:51 +08:00 via Android
    c #有个开源的实时的, r 开通好像,忘记了
    doublleft
        27
    doublleft  
       2016-09-12 10:54:22 +08:00
    “ PHP 实现此类功能会不会太弱了? ”

    PHP 做这个的时候,不知道 NodeJS 哪里去了!
    wizardoz
        28
    wizardoz  
       2016-09-12 11:56:03 +08:00
    我没做过,但是如果现在要我做的话我选择 websockets 后端用 C 语言或 C++实现.
    silov
        29
    silov  
    OP
       2016-09-12 13:10:29 +08:00
    @doublleft 我没让他俩对比。。。 Node 做的是 websocket 偏前端,跟 PHP 交互的部分。。。 server 端用 PHP 。。。。我是不会,没做过,来请教大家的
    silov
        30
    silov  
    OP
       2016-09-12 13:11:10 +08:00
    @wizardoz 这俩还给老师了==大一的时候到时用 c 写过 socket 的东西。。。
    dl2k
        31
    dl2k  
       2016-09-12 14:45:53 +08:00
    不带量级的需求讨论结果都是无数种不靠谱的方案。 同样是造房子,造个茅厕跟造摩天大楼会是用同样的方法么?
    eqing
        32
    eqing  
       2016-09-12 15:21:50 +08:00
    swoole
    vigoss
        33
    vigoss  
       2016-09-12 20:02:58 +08:00
    我用 node 做过一个,几乎把微信所有功能做了一遍,组群语音什么的。
    tkisme
        34
    tkisme  
       2016-09-16 17:42:27 +08:00
    @bdbai 用上 node 只是用 node 工具包罢了,具体的开发还是与框架有关
    bdbai
        35
    bdbai  
       2016-09-16 21:32:15 +08:00 via Android
    @tkisme2013 node 可以接管整个前端开发流程,前端也算具体的开发。
    mingyun
        36
    mingyun  
       2016-09-17 20:04:18 +08:00
    tkisme
        37
    tkisme  
       2016-09-20 17:39:02 +08:00
    @bdbai 你让 node 后台情何以堪
    bdbai
        38
    bdbai  
       2016-09-20 19:38:27 +08:00 via Android
    @tkisme2013 所以说 做全栈 用 node
    buseni
        39
    buseni  
       2017-10-05 16:39:39 +08:00 via Android
    有没有开源解决方案
    pianjiao
        40
    pianjiao  
       2018-09-30 16:56:12 +08:00
    hehe520347
        41
    hehe520347  
       2019-01-23 17:42:18 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5375 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 08:50 · PVG 16:50 · LAX 01:50 · JFK 04:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.