netty系列之:使用netty实现支持http2的服务器

简介 上一篇文章中,我们提到了如何在netty中配置TLS,让他支持HTTP2。事实上TLS并不是https的一个必须要求,它只是建议的标准。那么除了TLS之外,还需要如何设置才能让netty支持http2呢?一起来看看吧。 基本流程 netty支持http2有两种情况,第一种情况是使用tls,在这 ... »

netty系列之:让TLS支持http2

简介 我们知道虽然HTTP2协议并不强制使用HTTPS,但是对大多数浏览器来说,如果要使用HTTP2的话,则必须使用HTTPS,所以我们需要了解如何在netty的TLS中支持http2。 TLS的扩展协议NPN和ALPN HTTP2协议是从spdy协议发展而来的,无论是spdy还是http2都为了能 ... »

网络协议之:加密传输中的NPN和ALPN

简介 自从HTTP从1.1升级到了2,一切都变得不同了。虽然HTTP2没有强制说必须使用加密协议进行传输,但是业界的标准包括各大流行的浏览器都只支持HTTPS情况下的HTTP2协议。 那么怎么在HTTPS之中加入HTTP2协议的支持呢?今天本文将会跟大家聊一下SSL/TLS协议的扩展NPN和ALPN ... »

看动画学算法之:平衡二叉搜索树AVL Tree

简介 平衡二叉搜索树是一种特殊的二叉搜索树。为什么会有平衡二叉搜索树呢? 考虑一下二叉搜索树的特殊情况,如果一个二叉搜索树所有的节点都是右节点,那么这个二叉搜索树将会退化成为链表。从而导致搜索的时间复杂度变为O(n),其中n是二叉搜索树的节点个数。 而平衡二叉搜索树正是为了解决这个问题而产生的,它通 ... »

密码学系列之:加密货币中的scrypt算法

简介 为了抵御密码破解,科学家们想出了很多种方法,比如对密码进行混淆加盐操作,对密码进行模式变换和组合。但是这些算法逐渐被一些特制的ASIC处理器打败,这些ASIC处理器不做别的,就是专门来破解你的密码或者进行hash运算。 最有名的当然是比特币了,它使用的是为人诟病的POW算法,谁的算力高,谁就可 ... »

小知识系列:查询数据库数据的元信息

简介 java中数据库的操作相信大家都不陌生,JDK提供了java.sql包来规范对数据库的各种操作。我们最常用的操作就是从数据库的ResultSet中获取数据,其实这个包中还有一个非常有用的类叫做ResultSetMetaData,可以通过这个类来获取查询数据的元信息,一起来看看吧。 使用Resu ... »

flydean java

看动画学算法之:栈stack

简介 栈应该是一种非常简单并且非常有用的数据结构了。栈的特点就是先进后出FILO或者后进先出LIFO。 实际上很多虚拟机的结构都是栈。因为栈在实现函数调用中非常的有效。 今天我们一起来看学习一下栈的结构和用法。 栈的构成 栈一种有序的线性表,只能在一端进行插入或者删除操作。这一端就叫做top端。 定 ... »

Pandas高级教程之:时间处理

简介 时间应该是在数据处理中经常会用到的一种数据类型,除了Numpy中datetime64 和 timedelta64 这两种数据类型之外,pandas 还整合了其他python库比如 scikits.timeseries 中的功能。 时间分类 pandas中有四种时间类型: Date times ... »

屌丝程序员的那些事(三)-一起培训的那些人

一起培训的那些人早上起床的时候开始有点后悔昨天去人才市场时没有抄录一些相关公司的面试日期,看来今天还要去跑一趟。走到门口掏出烟盒的时候,一张便条掉到了地上,是昨天天X信息汤总给的在十八中培训教室的地址 »

dyllove98

屌丝程序员的那些事(二)-第一次面试

第一次面试第二天一大清早心情忐忑的带着各类复印件出门,满怀期待的踏入了NN市人才市场招聘大厅。这个年代还没有大规模毕业生现场招聘会,面试单位也没按专业类型区分,每天不同类型的单位混杂在一起。当时正值毕 »

dyllove98

netty系列之:使用netty搭建websocket客户端

简介 在网速快速提升的时代,浏览器已经成为我们访问各种服务的入口,很难想象如果离开了浏览器,我们的网络世界应该如何运作。现在恨不得把操作系统都搬上浏览器。但是并不是所有的应用都需要浏览器来执行,比如服务器和服务器之间的通信,就需要使用到自建客户端来和服务器进行交互。 本文将会介绍使用netty客户端 ... »

看动画学算法之:doublyLinkedList

简介 今天我们来学习一下复杂一点的LinkedList:doublyLinkedList。 和LinkedList相比,doublyLinkedList中的节点除了next指向下一个节点之外,还有一个prev之前的一个节点。所以被称为doublyLinkedList。 doublyLinkedLis ... »

netty系列之:分离websocket处理器

简介 在上一篇文章中,我们使用了netty构建了可以处理websocket协议的服务器,在这个服务器中,我们构建了特制的handler用来处理HTTP或者websocket请求。 在一个handler中处理两种不同的请求,对于某些有代码洁癖的人可能忍受不了。那么,有没有可能将普通的HTTP请求和we ... »

10年老司机经验总结--程序员兼职的那些事

写给想软件工程师的一封信 web ,ui ,andorid ,ios, h5,python 工程师的职业发展请阅读本文 各位工程师好: 本人从08年开始接触程序,也开始了编程之路,对软件行业有些许见解 »

chaoren399

网络协议之:WebSocket的消息格式

简介 我们知道WebSocket是建立在TCP协议基础上的一种网络协议,用来进行客户端和服务器端的实时通信。非常的好用。最简单的使用WebSocket的办法就是直接使用浏览器的API和服务器端进行通信。 本文将会深入分析WebSocket的消息交互格式,让大家得以明白,websocket到底是怎么工 ... »

小学生都能读懂的网络协议之:WebSocket

简介 服务端和客户端应该怎么进行通信呢?我们常见的方法就是客户端向服务器端发送一个请求,然后服务器端向客户端发送返回的响应。这种做法比较简单,逻辑也很清晰,但是在某些情况下,这种操作方式并不好使。 比如在服务器端的某些变动需要通知客户端的情况,因为客户端并不知道服务器端的变动是否完成,所以需要不停的 ... »