websocket php vs node js

时间:2014-03-20 07:33:15

标签: javascript php node.js websocket

有人可以说“websocket php”http://www.php.net/manual/en/sockets.examples.php>之间有什么区别吗?和node.js? 。我曾经使用websocket php聊天,但我不知道如果这个聊天移动到node.js会更好吗?

2 个答案:

答案 0 :(得分:1)

Websockets是基于TCP套接字构建的传输。如果您在所提供的链接中注意到,作者建议手动解码数据帧。有些项目可以帮助你解决这个问题,正如@oberstet推荐的那样(另见https://github.com/nicokaiser/php-websocket)。 @Kanaka对websockets和原始TCP套接字here之间的区别有很好的解释。

使用node.js无疑是为websocket连接推出服务器的一种智能,低开销的方式。另一种选择是使用实时网络。 PubNub特别在how to write a chat app in 10 lines of code上有一篇博文,非常容易访问。简而言之,代码是:

Enter Chat and press enter
<div><input id=input placeholder=you-chat-here /></div>

Chat Output
<div id=box></div>

<script src=http://cdn.pubnub.com/pubnub.min.js></script>
<script>(function(){
    var box = PUBNUB.$('box'), input = PUBNUB.$('input'), channel = 'chat';
        PUBNUB.subscribe({
            channel : channel,
            callback : function(text) { box.innerHTML = (''+text).replace( /[<>]/g, '' ) + '<br>' + box.innerHTML }
        });
        PUBNUB.bind( 'keyup', input, function(e) {
            (e.keyCode || e.charCode) === 13 && PUBNUB.publish({
            channel : channel, message : input.value, x : (input.value='')
        })
    } )
})()</script>

这样一个简单的方法可以让你完全切断服务器托管和配置。希望这有帮助!

答案 1 :(得分:0)

这就像问“PHP和HTTP之间有什么区别”。 Node.js是您编写代码的技术框架.WebSockets是一种可以使用技术框架实现的协议。您可以使用Node.js来实现WebSockets的服务器端方面。