zoukankan      html  css  js  c++  java
  • 根据Unix哲学来编写你的HTML5 Websocket服务器来实现全双工通信

    websocketd代表WebSocket的守护进程

    websocketd处理的是浏览器和服务器之间的WebSocket连接,它会启动你所指定的服务器端应用来对WebSockets进行处理,然后在浏览器和服务器应用之间进行消息的传递。

    在20年前的话,有一项叫做CGI的技术做的工作类似,但现在这项技术将会被websocket所取代。

    语言无关

    只要你的服务器应用是可以从命令行进行运行的,你就可以为你的服务器应用编写WebSocket终端服务。

    无需额外的库的支持

    通过WebSocketd进行信息传递其实非常的简单,从标准输入stdin读取出文本然后写入到标准输出stdout,就是这么的简单。

    让你远离多线程所带来的痛苦

    Websocketd会根据所有进来的WebSocket连接来在对应的一个专门的独立进程中来运行你的应用。也就是说每个连接都是通过不同的进程隔离开来的。

    完全符合我们公认的Unix哲学:

    “编写的Unix应用应该一次只做一件事情,且把该事情做到极致。编写的软件应该可以协同工作。编写的软件应该可以处理文本流。因为你为Unix编写的接口将会是全球通用的。”

    10秒教程

    下面我们创建一个微型的WebSocket服务器,所做的事情就是去自增加到十,每次加1的时候都停顿一下并将当前数字输出到标准输出。

    首先使用你喜欢的语言编写以上代码,这里我用的是bash脚本语言。

    通过以上websocketd命令指定要监听的端口以及需要和浏览器进行通信的以上编写的应用名称。

    最后在pc客户端的一个网页页面中编写对应的javascript脚本来通过WebSocket来连接上上面的WebSocketd监听端口。

    大功告成...从中大家可以看到通过WebSocketd来建立一个WebSocket服务器是多么的简单!

    ------完----------

    Websocketd官网:http://websocketd.com/

    作/译者

    微信知识共享公众号

    CSDN

    天地会珠海分舵

    TechGoGoGo

    http://blog.csdn.net/zhubaitian

  • 相关阅读:
    python 报错 AttributeError: 'Series' object has no attribute 'as_matrix'
    python 报错 NameError: name 'xrange' is not defined
    python报错 AxisError: axis 0 is out of bounds for array of dimension 0
    Python 列表中的浅拷贝与深拷贝
    python列表中查找元素
    Python中两个变量交换
    Python中*和**的使用
    Airtest启动报错:ERROR:gup_process_transport_factory.cc<1019>] Lost UI share context
    adb的使用
    Python函数
  • 原文地址:https://www.cnblogs.com/techgogogo/p/4293409.html
Copyright © 2011-2022 走看看