用Java创建web服务器/servlet容器——站在巨人的肩膀上
首先也是最重要的一点:我想说的是,这主要是个人的锻炼。有很多容器和服务器(Tomcat、Jetty、Winstone)可以满足市场的需求 前几天,我遇到了这个项目,在过去玩过Erlang之后,我觉得用它来构建一个功能强大的web服务器真的很酷 然后我开始做白日梦。如果我可以使用现代框架,以代码高尔夫的方式构建一个几乎完全“站在巨人肩膀上”的web服务器,会怎么样?也就是说:我能利用多少别人的工作 理想情况下,要求类似于:用Java创建web服务器/servlet容器——站在巨人的肩膀上,java,jsp,servlets,webserver,akka,Java,Jsp,Servlets,Webserver,Akka,首先也是最重要的一点:我想说的是,这主要是个人的锻炼。有很多容器和服务器(Tomcat、Jetty、Winstone)可以满足市场的需求 前几天,我遇到了这个项目,在过去玩过Erlang之后,我觉得用它来构建一个功能强大的web服务器真的很酷 然后我开始做白日梦。如果我可以使用现代框架,以代码高尔夫的方式构建一个几乎完全“站在巨人肩膀上”的web服务器,会怎么样?也就是说:我能利用多少别人的工作 理想情况下,要求类似于: 容错、群集、分布式 易于配置 在可配置端口上支持HTTP、HTTPS和A
- 容错、群集、分布式
- 易于配置
- 在可配置端口上支持HTTP、HTTPS和AJP
- 支持接口绑定和多个域
- 通过可插拔接口支持JSP、Jython等
- 支持允许实现WebDAV、代理和URL重写等功能的模块
所以,无论如何,请给我一些建议。至少Tomcat已经将其JSP引擎作为一个模块实现了。它不是单独发布的,可能需要一些工作才能将其与Tomcat代码的其余部分完全分离
它有一个单独的名字(贾斯珀)和。它可以在
org.apache.jasper
包(及以下)中找到。我已经看过几次了,我想我只是觉得应该有更好的方法。我们讨论的是从web服务器内部调用ant任务来创建已编译的JSP。我想我会记住这个方法。ant任务只是一个前端。您可以查看整个org.apache.jasper
包,查找其入口点并以编程方式使用它。事实上,有一个ant任务只能证明代码不依赖于正在运行的Tomcat实例。我将研究它。如果没有人能想出一种更好的插销式组件,那么在我仔细研究之后,我会继续把它作为答案。我仍然不确定我是否喜欢JspC路线,但如果它是我不必从头实现自己的容器就可以得到的,那么我将采用它。谢谢