转自:http://www.cnblogs.com/webwlsong/p/3198712.html 了解HTTP和Socket之前先对网络7层协议有个了解: 7 应用层6 表示层5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层,既7.6.5.4层定义了应用程序的功能,下面3层,既3.2.1层主要面向通过网络的端到端的数据流. HTTP是基于应用层,socket是基于传输层(tcp/udp) 我们通常所用的socket协议是基于TCP协议 TCP是面向连接的协议,UDP是…
用java.net.Socket来模拟实现Tomcat,碰到了一些坑,大部分是没有想到的,记录下来自查. 直接上代码, public class TomcatDemo { private static ExecutorService executorService = Executors.newCachedThreadPool(); public static void main(String[] args) throws IOException { //监听9000端口 @SuppressWa…
转自:http://www.cnblogs.com/webwlsong/p/3198712.html 了解HTTP和Socket之前先对网络7层协议有个了解: 7 应用层6 表示层5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层,既7.6.5.4层定义了应用程序的功能,下面3层,既3.2.1层主要面向通过网络的端到端的数据流. HTTP是基于应用层,socket是基于传输层(tcp/udp) 我们通常所用的socket协议是基于TCP协议 TCP是面向连接的协议,UDP是…
Bootstrap的意思就是引导,辅助的意思,在编写服务端或客户端程序时,我们都需要先new一个bootstrap,然后基于这个bootstrap调用函数,添加eventloop和handler,可见对bootstrap进行分析还是有必要的. 1.bootstrap结构图 bootstrap的结构比较简单,涉及的类和接口很少,如下图所示,其中Bootstrap则是客户端程序用的引导类,ServerBootstrap是服务端程序用的引导类. 2.serverbootstrap分析 这部分,专门对s…
New and old users alike can run into a pitfall. Below we outline issues that we see frequently as well as explain how to resolve those issues. In the #nginx IRC channel on Freenode, we see these issues frequently. This Guide Says The most frequent is…
很多人都可以碰到一个陷阱.下面我们列出,我们经常看到的问题,以及解释如何解决这些问题.在Freenode上的#nginx IRC频道这些讨论很频繁. 1.权限 从来不要使用777权限,查看目录的权限 namei -om /path/to/check 2.root设置 BAD: server { server_name www.example.com; location / { root /var/www/nginx-default/; # [...] } location /foo { root…
http的反向推送通常使用"长轮询"或"长连接"的方式. 所谓"长轮询"是指客户端发送请求给服务器,服务器发现没有数据需要发送给客户端. http的反向推送通常使用"长轮询"或"长连接"的方式.所谓"长轮询"是指客户端发送请求给服务器,服务器发现没有数据需要发送给客户端于是hold住不及时返回,等有数据需要发送给客户端时,进行回复,然后关闭连接,客户端收到回复后再发送新的http请求,以…
本节我们将要做一个跨屏互动应用的案例分析,该应用时给一家商场做活动使用的,是一个跨屏爱消除游戏.PC端页面显示在连接在PC的大屏幕上,参与活动的玩家可以用自己的手机扫描PC端页面上的二维码,连接成功后,操作手机上的游戏可以同步控制主屏幕的游戏画面和结果.游戏结果会记录到排行榜,商家定期会对排名前10的玩家进行奖励. 游戏规则和前面分析过的爱消除的案例类似,这个游戏本身就是在原来的单机游戏的基础上有进一步开发做了跨屏通讯的内容. (一)游戏规则: 1.开始游戏时,德基的logo机出现在最上面一行的…
1,简述socket 通信原理 如上图,socket通信建立在应用层与TCP/IP协议组通信(运输层)的中间软件抽象层,它是一组接口,在设计模式中,socket其实就是一个门面模式,它把复杂的TCP/IP协议组隐藏在Socket接口后面,对于用户来说,一组简单的接口就是全部,让socket去组织数据,以符合指定的协议. 所以,经常对用户来讲,socket就是ip+prot 即IP地址(识别互联网中主机的位置)+port是程序开启的端口号 socket通信如下: 客户端 # _*_ coding:…
作者:Derek 简介 Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom 本章介绍bytom代码P2P网络中upnp端口映射 作者使用MacOS操作系统,其他平台也大同小异 Golang Version: 1.8 UPNP介绍 UPNP(Universal Plug and Play)通用即插即用.UPNP端口映射将一个外部端口映射到一个内网ip:port.从而实现p2p…