三期_day12_其他+jetty的使用

1.大致总结

行程管理和留言反馈和前面的思路差不多,这里就不多啰嗦了。经过十几天的写写停停,有了一个初步的进展了,再往下写也没有啥欲望了,还是研究下android和服务器,设计模式和网络这些东西吧,毕竟留给我的时间也不多了,这个暑假一过,那么也就该去实习了,想想大学真特么快,这俩个月,这个月已经过了1/3,没有干啥事,天天吃吃喝喝,打打游戏。 日子也过得惬意。后面就写一下在开发中遇到一些不懂的东西吧,例如mybatis中的事务,jetty的使用和原理,以及打包发布。

2.jetty的使用

http://search.maven.org/#search   在这个网站输入"jetty-maven-plugin",找到groupId为org.eclipse.jetty,在pom.xml中加入如下代码。

<build>
		<finalName>crm</finalName>
    	<plugins>
			<plugin>
				<groupId>org.eclipse.jetty</groupId>
				<artifactId>jetty-maven-plugin</artifactId>
				<version>9.3.0.M2</version>
				<configuration>
					<scanIntervalSeconds>10</scanIntervalSeconds>
				<webApp>
					<contextPath>/crm</contextPath>
				</webApp>
				</configuration>
				<executions>
					<execution>
						<id>jetty-run</id>
						<phase>install</phase>   <!--在maven install时就捎带运行jetty:run了,方便发布 -->
						<goals>
							<goal>run</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
  </build>

当然里面的配置可以随意修改,jetty的启动和停止都可设置,扫描时间。

做完这些后,项目右键"Run as" -> Maven build -> Name:随便 Goals:jetty:run -> 点击Run 即可

这个时候输入http://localhost:8080/crm/login.html ,会看到网页图标变成了一个

Jetty的优点: 之前没有使用,后来是项目完成了才去研究jetty的,太亏了,因为找个BUG你要不停的启动服务器和清缓存,修改一点java文件就要重启,真麻烦,如果使用jetty的话测试的话就很舒服了。

下面是网上找的资料,有些东西还看不懂,例如设计模式,AJP。就简单的看一下,好有个印象,NIO,BIO....

1.是什么?

在使用了 Ajax 的 Web 2.0 的应用程序中,每个连接需要保持更长的时间,这样线程和内存的消耗量会急剧的增加。

jetty的continuations在短连接上不见得有很大的优势,但是在长连接或者在后台访问IO资源(数据库,网络等)造成的
servlet响应慢问题上,会有很大的优势,他不会让一个线程傻傻地在等待数据库访问完成,而是会放入线程池去处理其他请求。continuations的引入能用很少的线程处理大量的请求。

Jetty 可以作为嵌入式服务器使用,Jetty的运行速度较快,而且是轻量级的,可以在Java中可以从test case中控制其运行。从而可以使自动化测试不再依赖外部环境,顺利实现自动化测试。

--百度百科

注意,是测试!

性能比较

单纯比较 Tomcat 与 Jetty 的性能意义不是很大,只能说在某种使用场景下,它表现的各有差异。因为它们面向的使用场景不尽相同。从架构上来看 Tomcat 在处理少数非常繁忙的连接上更有优势,也就是说连接的生命周期如果短的话,Tomcat 的总体性能更高。

而 Jetty 刚好相反,Jetty 可以同时处理大量连接而且可以长时间保持这些连接。例如像一些 web 聊天应用非常适合用 Jetty 做服务器,像淘宝的 web 旺旺就是用 Jetty 作为 Servlet 引擎。

另外由于 Jetty 的架构非常简单,作为服务器它可以按需加载组件,这样不需要的组件可以去掉,这样无形可以减少服务器本身的内存开销,处理一次请求也是可以减少产生的临时对象,这样性能也会提高。另外 Jetty 默认使用的是 NIO 技术在处理 I/O 请求上更占优势,Tomcat 默认使用的是 BIO,在处理静态资源时,Tomcat 的性能不如
Jetty。

特性比较

作为一个标准的 Servlet 引擎,它们都支持标准的 Servlet 规范,还有 Java EE 的规范也都支持,由于 Tomcat 的使用的更加广泛,它对这些支持的更加全面一些,有很多特性 Tomcat 都直接集成进来了。但是 Jetty 的应变更加快速,这一方面是因为
Jetty 的开发社区更加活跃,另一方面也是因为 Jetty 的修改更加简单,它只要把相应的组件替换就好了,而 Tomcat 的整体结构上要复杂很多,修改功能比较缓慢。所以 Tomcat 对最新的 Servlet 规范的支持总是要比人们预期的要晚。

参考网站
http://www.ibm.com/developerworks/cn/java/j-lo-jetty/

参考网站
http://www.cnblogs.com/fnng/archive/2011/12/16/2290587.html

我是菜鸟,我在路上。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-14 13:18:37

三期_day12_其他+jetty的使用的相关文章

三期_day12_其它+jetty的使用

1.大致总结 行程管理和留言反馈和前面的思路差点儿相同,这里就不多啰嗦了.经过十几天的写写停停.有了一个初步的进展了,再往下写也没有啥欲望了.还是研究下android和server,设计模式和网络这些东西吧,毕竟留给我的时间也不多了.这个暑假一过,那么也就该去实习了,想想大学真特么快,这俩个月,这个月已经过了1/3,没有干啥事,天天吃吃喝喝.打打游戏. 日子也过得满意.后面就写一下在开发中遇到一些不懂的东西吧,比如mybatis中的事务,jetty的使用和原理,以及打包公布. 2.jetty的使

Jetty使用

目标:在Linux以及Windows下面配置应用: 之前使用过smartfox,安装的时候弹出一个浏览器,一路next,印象很深刻.只是记得他是使用Jetty.最近做的项目也是需要进行配置:过往都是使用SWT进行制作:但是此次有一个网页版的监控程序,我的想法就是连带着配置程序一起坐到这个监控程序中. Jetty是内嵌式的Servlet容器:启动一个执行html的很简单,但是启动一个Jsp的工程,则需要多写几步,左后是启动默认浏览器并跳转到指定的页面: ????public static void

Maven部署Jetty服务器pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion&

Jetty实战之 安装 运行 部署

本文地址:http://blog.csdn.net/kongxx/article/details/7218767 1. 首先从Jetty的官方网站http://wiki.eclipse.org/Jetty/Starting/Downloads下载最新的Jetty,上面有两个版本7.x和8.x,7.x是运行在JDK5及以上版本,8.x是运行在JDK6及以上版本,这里我选择了8.0.4版本. 2. 解压压缩包到指定目录,且将其目录路径定义为${JETTY_HOME} 3. 启动Jetty服务 3.1

No plugin found for prefix &#39;jetty&#39; in the current project and in the plugin groups

现在Jetty的版本已经到9了,也早已经在Eclipse的门下了.所以有很多groupId,比如:org.eclipse.jetty.org.mortbay.jetty.这些都可以用的哦. 我在使用MyEclipse结合maven操作jetty作为开发的服务器,这开开发比较方便. 当我运行命令: jetty:run 出现: [ERROR] No plugin found for prefix 'jetty' in the current project and in the plugin gro

使内嵌式jetty服务器支持jsp

1.jetty是什么 jetty是一个轻量级的web服务器,类似tomcat,但用起来比tomcat灵活,尤其是支持内嵌式使用.所谓内嵌式即以java语句的形式启动jetty,这样我们可以无需部署和启动web容器就能达到同样的效果.这对于简单的基于http协议的应用以及调试程序就方便的多了. 2.一个简单的jetty服务器 简单到仅需类似以下几条语句: public class JettySample { public static void main(String[] args)throws 

Eclipse中进行Gradle+Jetty部署的web项目的断点调试(原创)

1.自行配置好build.gradle文件和按照gradle的web项目目录结构规范建立java.resourece和webapp文件夹 可在build.gradle文件中自由设定“http端口” 1 jettyRun { 2 reload = "automatic" 3 scanIntervalSeconds = 1 4 httpPort = 1234 5 stopPort = 4321 6 stopKey = 'stop' 7 } 2.接下来,在利用gradle部署web项目完毕后

Jetty的安装和配置

Jetty 是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境.Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布.开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接.(Jetty是一个开源的软件,可以作为HTTP服务,javax.servlet的容器.) 配置jetty server的步骤: 创建server 配置connector 配置handl

jetty插件

Jetty 插件 在 Maven 等构建的项目中,我们要使用 Jetty 做嵌入式 Web 容器运行 Web 应用,通常需要添加 Jetty 相关依赖以及进行类似下面代码配置: package com.coderknock.jettystudy; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.webapp.WebAppContext; public class WebAppContextWithFolderSer