一.前言 近期项目里需做一个在线聊天功能,就想要在对话的时候建立socket链接.又因为聊天只是其中一个部分,在它外面还有一些全局的消息通知需要接收,因此也需要建立socket链接.在该项目里不仅一处用到了socket,就想着封装一个socket的,可以在项目里调用. 之前也用过一次websocket,但那次是直接用的socke.io,我也忘了这次为啥没有继续使用,对这个也一知半解,似懂非懂,先一点一点记起来.具体是介绍和解释就不写了,主要写几个帮助理解的部分. 二.HTML5  WebSock…
PreparedStatement实现表数据的增删改 PreparedStatementUpdateTest package com.aff.PreparedStatement; import java.io.InputStream; import java.sql.Connection; import java.sql.Date; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.text…
近日工作闲暇之余,对IM系统产生了兴趣,转而研究了IM的内容.找了半天,知道比较流行的是Openfire的系统,Openfire有许多平台实现,由于我是做Web的,所以当然是希望寻找Web的实现.Openfire的以前的Web实现,是基于Http-bind的一种长轮询机制,当然也没什么不好,只是我现在HTML5都开始了,当然希望能够来个基于Websocket的机制了.然而Google&百度了好久,也没有找到什么教程,发现这个东西并不是很火热的样子,那只好自己开始研究了.于是有了这一篇文章. 对了…
关于VS2010与SQL2008建立链接及初步调用问题,网上参考的资料很多,我写这个博客,并非是做重复工作,也不是做搬运工.本文将以一种初学者的角度,去完成从数据库建立,到VS2010与SQL中的数据库进行链接,最后进行简单的调用,将这个详细的步骤写下来.目的是:学习者能够照着我的步骤,一步步操作,能够掌握这一方法,对学习更有信心.保持学习的态度,力争让每一位初学者能够完成这一学习. 一.利用SQL2008建立数据库 1.打开SQL Server Management Studio界面,身份验证…
spring boot 集成 websocket 实现消息主动 前言 http协议是无状态协议,每次请求都不知道前面发生了什么,而且只可以由浏览器端请求服务器端,而不能由服务器去主动通知浏览器端,是单向的,在很多场景就不适合,比如实时的推送,消息通知或者股票等信息的推送:在没有 websocket 之前,要解决这种问题,只能依靠 ajax轮询 或者 长轮询,这两种方式极大的消耗资源:而websocket,只需要借助http协议进行握手,然后保持着一个websocket连接,直到客户端主动断开:相…
后面整理相关信息 //后面整理相关信息 /* * This function implements the receiving procedure of RFC 793 for * all states except ESTABLISHED and TIME_WAIT. * It's called from both tcp_v4_rcv and tcp_v6_rcv and should be * address independent. */ int tcp_rcv_state_proces…
     文章参考百度过的文章,现在忘了具体哪篇,感谢其分享,这里根据自己的操作和遇到的问题整理一下.      需求:在两个不同的SQL SERVER 2012的服务器之间进行数据访问和更新.我们需要把SourceData的数据插入到TargetData的服务器上去,一天执行一次任务.我们的首选方案是在两个服务器之间建立链接服务器.      操作:定时全量的把SourceData的数据插入到TargetData里去.这里涉及到需要把TargetData里的表的信息做删除操作,由于delete…
首先我们先来回顾一下tcp关闭连接的过程: 假设A和B连接状态为EST,A需要主动关闭: A发送FIN给B,并将状态更改为FIN_WAIT1, B接收到FIN将状态更改为CLOSE_WAIT,并回复ACK和FIN A收到ACK后将状态更改为FIN_WAIT2,收到FIN后,更改状态为WAIT_TIMEOUT并给B返回ACK B收到ACK后,将关闭自己的链接CLOSE. 问题就在此时,A将处于WAIT_TIMEOUT状态长达2MSL时常(RFC793定义了MSL为2分钟,Linux设置成了30s)…
接到一个应用测试,应用实现主要使用websocket保持长链接,使用protobuf格式交换数据,用途为发送消息,需要我们测试评估性能,初步评估需要测试长链接数.峰值消息数以及长期运行稳定性 整体需求不难,主要困难是第一次接触websocket和protobuf,同时也没有现成的脚本可以使用,jmeter原生也不支持websocket协议,需要安装插件支持,protobuf格式也需要重新编译大包使用 万里长征第一步,先开发测试脚本,由于目前一直在使用python开发,评估项目的性能要求,不需要严…
一.建立连接(三次握手) 第一次握手:建立连接时,客户端发送SYN(seq=x)包到服务器,并进入SYN_SENT状态,等待服务器的确认.SYN:同步序列编号(Synchronize Sequence Numbers). 第二次握手:服务器收到SYN包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y),即发送SYN+ACK包,此时服务器进入SYN_RECV状态: 第三次握手:客户端收到SYN+ACK包,向服务器发送ACK(ack=y+1)包,此包发送完毕,客户端和…