车驰夜幕|Java中常见的服务器
Web服务器是运行及发布Web应用的容器 , 只有将开发的Web项目放置到该容器中 , 才能使网络中的所有用户通过浏览器进行访问 。 开发Java Web应用所采用的服务器主要是与JSP/Servlet兼容的Web服务器 。
0x01:Jetty
Jetty是一个开源的servlet容器 , 它为基于Java的web容器 , 例如JSP和servlet提供运行环境 。 Jetty是使用Java语言编写的 , 它的API以一组JAR包的形式发布 。 开发人员可以将Jetty容器实例化成一个对象 , 可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接 。 在做基于Maven的Java项目开发时 , 常用Jetty来运行 。
【车驰夜幕|Java中常见的服务器】特点
- 轻量级:Jetty体积小巧 , 占用系统资源较少 。
- 易嵌入性:Jetty既可以像Tomcat一样独立运行 , 也可以很方便的嵌入到工具、框架或其他应用服务器中运行 。 Jetty在设计之 初就是作为一个可以嵌入到其他的Java代码中的servlet容器而设计的 , 因此开发小组将Jetty作为一组Jar文件提供出来 , 可以非常方便的在自 己的容器中将Jetty实例化成一个对象并操纵该容器对象 。
- 灵活性:Jetty的体系架构及其面向接口的设计实现了功能模块高度可插拔和可扩展的特性 , 可以非常方便的根据需要来配置Jetty启用的功能 。
- 稳定性:Jetty运行速度较快 , 即使有大量服务请求并发的情况下 , 系统性能也能保持在一个可以接受的状态 。
目前最为流行的Tomcat服务器是Apache-Jarkarta开源项目中的一个子项目 , 是一个小型、轻量级的支持JSP和Servlet 技术的Web服务器 。 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器 , 属于轻量级应用服务器 , 在中小型系统和并发访问用户不是很多的场合下被普遍使用 , 是开发和调试JSP 程序的首选 。 对于一个初学者来说 , 可以这样认为 , 当在一台机器上配置好Apache 服务器 , 可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求 。 实际上Tomcat是Apache 服务器的扩展 , 但运行时它是独立运行的 , 所以当你运行tomcat 时 , 它实际上作为一个与Apache 独立的进程单独运行的 。
特点
- 部署简单:与传统的桌面应用程序不同 , Tomcat中的应用程序是一个WAR(WebArchive)文件 。 WAR是Sun提出的一种Web应用程序格式 , 与JAR类似 , 也是许多文件的一个压缩包 。 这个包中的文件按一定目录结构来组织:只需将你的WAR放到Tomcat的Webapp目录下 , Tomcat会自动检测到这个文件 , 并将其解压 。 另外Tomcat也提供了一个应用管理器 , 通过这个应用 , 辅助于Ftp , 可以在远程通过Web部署和撤销应用 , 当然本地也可以 。 可见一个Web应用在Tomcat中的部署与管理都是如此的简单方便 。 Tomcat短小精悍 , 配置方便 , 能满足实际的需求 , 这种情况下自然会选择Tomcat 。
- 安全管理:Tomcat提供Realm支持 。 Realm类似于Unix里面的group 。 在Unix中 , 一个group对应着系统的一定资源 , 某个group不能访问不属于它的资源 。 Tomcat用Realm将不同的运用(类似系统资源)赋给不同的用户(类似group) 。 没有权限的用户则不能访问这个应用 。 Tomcat提供三种Realm:JDBCRealm:这个Realm将用户信息存在数据库里 , 通过JDBC获得用户信息来进行验证;?JNDIRealm:用户信息存在基于LDAP的服务器里 , 通过JNDI获取用户信息;MemoryRealm:用户信息存在一个xml文件里面 , 验证用户时即使用此种Realm 。 通过Realm可以方便地对访问某个应用的客户进行验证 。 在Tomcat中 , 还可以利用Servlet2.3提供的事件监听器功能 , 来对应用程序或者Session实行监听 , 进行身份权限控制 。 Tomcat也提供其他的一些特征 , 如与SSL集成到一块 , 实现安全传输 。
推荐阅读
- 小机灵鬼|干货速来!透彻剖析微服务架构设计模式,深入开发Java有奇效
- Java|计算机专业的本科生,该选择学习Java技术体系还是.NET技术体系
- 小鹰说科技|美军警告:别想分割封锁我们,美火速增兵叙利亚!大批装甲车驰援
- 上观新闻|夜幕下的南京路步行街东拓段,灯光璀璨,景色更加迷人
- 柚子在野区|【当当与您早知道】月亮不“孤单”
- 知足常乐|Java线程池原理,这一篇就够了
- 车驰夜幕|美国GPS卫星精度0.4米,俄卫星的精度1.2米,中国北斗呢?
- 小熊回收站|-链表阻塞队列和数组阻塞队列的异同,Java并发编程
- 车驰夜幕|联合国向你发来活动邀请:与全球尖端人士探讨关注自然的真谛
- 车驰夜幕|简单聊聊处理器的核显
