一步步实现WebServer中间件——项目介绍

来源:互联网 发布:mac eclipse new task 编辑:程序博客网 时间:2024/06/05 09:44

前段时间借助《Spring源码深度解析》和《Spring技术内幕》两本书对Spring框架的底层实现有了更深层次的认识,本想写一个Spring架构系列博客同时实现一个简易版的Spring的,但无奈手上同时有三个外包项目,并且白天也有一些本科课程,就只能暂时搁置拖到寒假再写了。

上星期京东搞活动,京东自营的图书都半价,我又手痒撸了几百块钱的,哎,真是败家。但是书的质量还是蛮高的,我买了《Java多线程实战指南(核心篇)》、《Java多线程实战指南(设计模式篇)》、《实战Java虚拟机》、《Kotlin实战》、《揭秘Java虚拟机》、《从零开始写分布式服务框架》、《MyBatis技术内幕》、《Tomcat内核设计剖析》,有几本我看过电子版的,但是感觉不是很过瘾,书的质量很高,所以就买了实体书回来再看几遍,也遂生出了利用这些书中的知识来写一个类似Tomcat的WebServer中间件

我简单地归纳了一下,其中的主要技术如下:

1.TCP/IP协议、HTTP协议

2.Java网络编程(主要是Socket)

3.Java多线程编程

4.类加载机制

5.反射与注解

6.XML

7.Java流与文件操作

8.软件体系结构与设计模式(其实这两项应该不能算是具体的技术,准确地来讲应该算是方法)



最后要实现的成果为:

1.能部署JavaWeb项目,支持JSP、Servlet

2.能监听Web应用的生命周期,实现各个容器的Listener

3.实现过滤器

4.实现热部署

5.实现WebSocket

6.实现分布式

7.实现WebService



有兴趣的可以持续关注我的github项目,可能项目更新会比较慢,但应该会在今年寒假结束前完成所有实现,并且系列博客也会跟项目一并进行

项目地址为https://github.com/xiaoxiaobingdxb/webserver.git