如何学netty? 关键点在于抓住主线: 请求处理最主要的流程是什么? 最核心的逻辑是什么? 在了解这些主线之前,不要迷恋细节,否则容易迷失在那些细枝末节的代码中。 如何学好一个技术? 1、了解这个技术的本质、背景、定位、过去和未来 2、这个技术的原理是什么 3、看文档,怎么用这个技术 4、别人是怎 ...
分类:
Web程序 时间:
2020-06-12 09:13:30
阅读次数:
74
浅析 Netty 实现心跳机制与断线重连 1、基础 何为心跳 顾名思义, 所谓 心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, 通知对方自己还在线, 以确保 TCP 连接的有效性. 为什么需要心跳 因为网络的不可靠性, 有可能在 TCP 保持长连接的过程中, 由于某 ...
分类:
Web程序 时间:
2020-06-11 19:58:23
阅读次数:
67
java两台服务器之间,大文件上传(续传),采用了Socket通信机制以及JavaIO流两个技术点,具体思路如下: 实现思路: 1、服:利用ServerSocket搭建服务器,开启相应端口,进行长连接操作 2、服:使用ServerSocket.accept()方法进行阻塞,接收客户端请求 3、服:每 ...
分类:
编程语言 时间:
2020-06-01 13:45:51
阅读次数:
62
TCP是一个面向连接的协议。无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。下面会介绍一个TCP连接是如何建立的以及通信结束后是如何终止的。 一、TCP连接的建立与终止 1.1 建立连接协议 请求端(通常称为客户)发送一个SYN段指明客户打算连接的服务器的端口,以及初始序号(ISN, ...
分类:
其他好文 时间:
2020-06-01 13:28:52
阅读次数:
70
在HTTP/1.0中默认使用短连接。也就是说,客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。当客户端浏览器访问的某个HTML或其他类型的Web页中包含有其他的Web资源(如JavaScript文件、图像文件、CSS文件等),每遇到这样一个Web资源,浏览器就会重新建立一个 ...
分类:
Web程序 时间:
2020-05-29 22:57:58
阅读次数:
146
转自:https://www.cnblogs.com/linjiqin/p/9600590.html 为了确保服务不会被过多的http长连接压垮,我们需要对tomcat设定个最大连接数,超过这个连接数的请求会拒绝,让其负载到其它机器。达到保护自己的同时起到连接数负载均衡的作用。 一、解决方案:修改t ...
分类:
其他好文 时间:
2020-05-27 20:32:32
阅读次数:
85
一、http http的历史http(超文本传输协议),在创建之初就是为了将超文本标记语言(html)文档从web服务端传送给浏览器的客户端。随着我们网页内容变得复杂,不单单有文字、图片,还有css,js等等渲染,ajax的出现、移动互联网的高速发展,随着时代的变迁,http也一直升级优化,丰富自己 ...
分类:
Web程序 时间:
2020-05-25 19:02:20
阅读次数:
115
转:https://www.cnblogs.com/liuxia912/p/11075630.html ·【场景描述】 HTTP1.1之后,HTTP协议支持持久连接,也就是长连接,优点在于在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。 如果我们使用了nginx去 ...
分类:
其他好文 时间:
2020-05-19 10:40:05
阅读次数:
140
死磕nginx系列--使用upsync模块实现负载均衡 问题描述 nginx reload是有一定损耗的,如果你使用的是长连接的话,那么当reload nginx时长连接所有的worker进程会进行优雅退出,并当该worker进程上的所有连接都释放时,进程才真正退出。 解决办法 对于社区版nginx ...
分类:
其他好文 时间:
2020-05-18 18:59:41
阅读次数:
50
PoolingHttpClientConnectionManager是一个HttpClientConnection的连接池,可以为多线程提供并发请求服务。主要作用就是分配连接,回收连接等。同一个route的请求,会优先使用连接池提供的空闲长连接。 源码版本4.5.2,因为代码太多,很多不是自己关心的 ...
分类:
Web程序 时间:
2020-05-16 00:23:23
阅读次数:
73