2016年5月

使用netty构建一个高可靠性地socket服务器

Java作为网络编程语言出身, 完成一个socket服务器的编写是很容易的.
但是, 这个容易只是完成简单的功能而已. 如果要适应现今越来越流行的高并发, 大数据. 对于一个新人来说还是有点吃力的.
听到Java编写socket服务器, 最常想到的就是使用ServerSocket类new一个对象就可以了. 如果需要多线程, 再搞一个多线程出来, 用一个主线程接收请求(阻塞), 收到请求后, 针对这个请求开启一个线程, 让这个线程去处理收到的请求. 同时, 这个主线程继续接收后序的请求.
基本就是这么个逻辑, 这个一般是工作1~2年的朋友的思路.
上面的同步请求可能会带来比较大的性能问题. 那么用异步线程呢? 当然会好很多. 但是根据之前的经验, 即使一个4~5年的Java工程师,如果对NIO这块不是特别熟悉, 要用原生的NIO去完成一个完美的异步多线程程序, 也是很麻烦的.

那么, 我们提到netty, netty是一个框架, 一个构建完美异步多线程程序的框架.
(未完待续...)

windows上跑redis

最近项目重要要用到redis,但是测试服务器还没搭建好。就只能用自己的windows 10 x64来装个redis跑一下先了。

往上搜了好一会儿,发现给出的步骤都不行。

然后就开始自己尝试:

首先,在github上找到微软团队维护的redis版本:https://github.com/MSOpenTech/redis

微信截图_20160523213806

- 阅读剩余部分 -

Servlet生命周期

Servlet是Java初学者必学、必知、必会的一个东东。

Servlet的生命后期分为三个阶段:

  1. 初始化阶段  调用init()方法
  2. 响应客户请求阶段  调用service()方法
  3. 终止阶段  调用destroy()方法

- 阅读剩余部分 -