一、简介
* http://www.w3school.com.cn/html5 *
websocket隶属于html5,一种定义client、server之间交互的子协议,具体实现产品有:
php - http://code.google.com/p/phpwebsocket/
jetty - http://jetty.codehaus.org/jetty/ (版本7开始支持websocket)
netty - http://www.jboss.org/netty
ruby - http://github.com/gimite/web-socket-ruby
Kaazing - http://www.kaazing.org/confluence/display/KAAZING/Home
Tomcat - http://tomcat.apache.org/ (7.0.26支持websocket)
node.js - https://github.com/Worlize/WebSocket-Node
二、个人理解
特点为:支持基于长链接的服务器推(应用场景为类似股票软件、监控等服务器需要频繁发送消息而不需要客户端频繁请求,弥补了b/s结构基于http协议的长链接缺陷(keep-alive),c/s结构直接自定义socket行为应该没有问题。)
(websockets vs sse)
http://stackoverflow.com/questions/5195452/websockets-vs-server-sent-events-eventsource
websocket定义了更加丰富的协议接口,可双向通信。
sse只能server单向推,如股票,监控等等。但sse是基于http协议的,无需定制server端。
三、示例
http://ricardocabello.com/blog/post/701(多人协作画板)
http://demo.kaazing.com/livefeed/(html5 实时推)
http://www.websocket.org
http://rumpetroll.com/ (真屌的创意。。。)
分享到:
相关推荐
`output`目录可能包含了编译后的结果,`Oursnet.net`和`OursNET.HTML5.Socket`可能是具体的代码库,而`OursNET.HTML5.WebSvr`可能是一个用于服务端的WebSocket服务器实现。通过这些文件,你可以深入学习和实践如何在...
HTML5引入WebSocket就是为了改善这种情况,提供了一种低延迟、高效率的双向通信方式。 WebSocket协议是基于TCP的,它通过握手建立连接,之后客户端和服务器就可以双向发送数据,无需像HTTP那样每次都重新建立连接。...
5. **绑定Socket**:使用`bind()`函数将Socket与特定的IP地址和端口关联,使得Socket可以监听特定网络接口上的连接请求。 6. **监听与接受连接**:`listen()`函数使Socket进入监听状态,最多可积压的连接请求由参数...
随着HTML5 WebSocket技术的日益成熟与普及,我们可以借助WebSocket来更加方便地打通BS与CS -- 因为B/S中的WebSocket可以直接连接到C/S的服务端,并进行双向通信。如下图所示:
本项目通过结合Node.js和Socket.IO,利用HTML5技术,实现了一个功能丰富的实时在线聊天室,支持文字、表情和图片消息的群发。 【核心知识点】 1. **Node.js**:Node.js是一个基于Chrome V8引擎的JavaScript运行...
在现代Web开发中,为了实现实时双向通信,JavaScript结合Socket技术(通常指的是WebSocket协议)成为一种常见且强大的解决方案。WebSocket是HTML5引入的一个新特性,允许服务器和浏览器之间建立长时间保持连接的通道...
5. **Emoji-Mart 库**: - Emoji-Mart 是一个JavaScript库,用于在Web应用中展示和选择表情符号。在这个聊天室示例中,它被集成以增强用户体验,允许用户在输入消息时添加表情符号。 6. **系统消息**: - 示例中...
H5(HTML5)是一种超文本标记语言标准,它增强了网页的交互性和多媒体支持。在智能农业系统中,H5移动端可能提供类似Web端的功能,如查看实时数据、远程控制硬件设备、接收报警通知等,使用户能够在田间地头方便地...
5. **Flashsocket** 在某些情况下,Flashsocket 可能被用来提供WebSocket的替代方案。尽管Flash已逐渐被淘汰,但在一些老版本的浏览器中,Flashsocket仍然是实现双向通信的途径。 6. **SocketNamespace** Socket....
5. **断线重连**:Socket.IO库处理了断线和重连的逻辑,确保在网络不稳定的情况下,仍然能保持连接的可靠性。 在给定的压缩包中,`favicon.ico`是一个网站的图标,`.project`可能是IDE的项目配置文件,它们在这个...
WebSocket是HTML5引入的一种新协议,它允许双向通信,即服务器和客户端都可以主动发送数据。传统的HTTP协议是基于请求-响应模型的,每次通信都需要客户端发起请求,服务器响应,这种模式不适合需要频繁交互的实时...
在这个案例中,"用socket下载网页"是指使用Socket编程技术来获取并保存网页的HTML内容。Socket提供了一种低级别的接口,使得开发者可以直接处理TCP/IP协议栈的细节,实现自定义的网络通信功能。 在Python中,我们...
在本场景中,我们讨论的是HTML5(H5)与C#之间通过Socket进行通信的实现方法。H5通常用于构建Web应用,而C#则广泛应用于服务器端开发,特别是在Windows平台上。 首先,让我们理解什么是Socket。Socket是网络编程中...
HTML5 Web Socket是一种在客户端和服务器之间建立长连接的协议,它允许实时、双向的数据传输。这个技术在现代Web开发中扮演着重要角色,尤其是在构建实时应用,如在线聊天、实时股票报价、多人在线游戏或者实时协作...
总之,“socket-php文件分段上传”技术是解决大文件上传的有效方案,它利用了Socket通信的灵活性和HTML5的File API,实现了高效、可靠的文件传输。对于开发大型、高并发的Web应用,尤其是涉及到大量文件操作的场景,...
在本文中,我们将深入探讨如何使用C#编程语言和Socket技术来实现一个基本的HTTP Web服务器。C#是一种面向对象的、类型安全的编程语言,广泛应用于Windows平台上的应用程序开发,包括网络服务。Socket是网络通信的...
因此,Socket.IO还使用了其他技术如AJAX长轮询、EventSource(服务器发送事件)等作为WebSocket的备选方案,确保在各种环境下都能工作。 **事件驱动模型**:Socket.IO基于事件驱动模型,客户端和服务器之间通过发送...
5. **接受连接**:当有客户端连接时,调用`Accept()`方法接收连接请求,这会返回一个新的Socket用于与客户端通信。 6. **建立连接**:如果作为客户端,使用`Connect()`方法指定远程服务器的IP地址和端口,建立连接...
5. **客户端实现**:在客户端,我们需要引入`socket.io-client`库,连接到服务器,并监听和触发相应事件。例如,监听`chat message`事件来显示接收到的消息,同时设置一个表单来发送消息。 ```javascript const ...
本文将深入探讨如何利用socket技术来编写一个简单的Web服务器。我们将基于标题和描述中的内容,讲解socket编程的基本概念、Web服务器的工作原理以及如何用源代码实现这一过程。 一、Socket编程基础 Socket,通常...