三期_day12_其它+jetty的使用

三期_day12_其它+jetty的使用

大家好,又见面了,我是全栈君。


1.大致总结

行程管理和留言反馈和前面的思路差点儿相同,这里就不多啰嗦了。经过十几天的写写停停。有了一个初步的进展了,再往下写也没有啥欲望了。还是研究下android和server,设计模式和网络这些东西吧,毕竟留给我的时间也不多了。这个暑假一过,那么也就该去实习了,想想大学真特么快,这俩个月,这个月已经过了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 。会看到网页图标变成了一个三期_day12_其它+jetty的使用

Jetty的长处: 之前没有使用。后来是项目完毕了才去研究jetty的,太亏了。由于找个BUG你要不停的启动server和清缓存,

改动一点java文件就要重新启动。真麻烦。假设使用jetty的话測试的话就非常舒服了。

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


1.是什么? 
在使用了 Ajax 的 Web 2.0 的应用程序中,每一个连接须要保持更长的时间,这样线程和内存的消耗量会急剧的添加。

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


Jetty 能够作为嵌入式server使用,Jetty的执行速度较快。并且是轻量级的,能够在Java中能够从test case中控制其执行。从而能够使自己主动化測试不再依赖外部环境,顺利实现自己主动化測试。

        –百度百科

注意,是測试!

 

性能比較

单纯比較 Tomcat 与 Jetty 的性能意义不是非常大,仅仅能说在某种使用场景下,它表现的各有差异。

由于它们面向的使用场景不尽同样。

从架构上来看 Tomcat 在处理少数非常繁忙的连接上更有优势,也就是说连接的生命周期假设短的话,Tomcat 的整体性能更高。

而 Jetty 刚好相反,Jetty 能够同一时候处理大量连接并且能够长时间保持这些连接。比如像一些 web 聊天应用很适合用 Jetty 做server,像淘宝的 web 旺旺就是用 Jetty 作为 Servlet 引擎。

另外因为 Jetty 的架构很easy,作为server它能够按需载入组件,这样不须要的组件能够去掉,这样无形能够降低server本身的内存开销。处理一次请求也是能够降低产生的暂时对象。这样性能也会提高。另外 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

我是菜鸟,我在路上。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115527.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [CF] 986 A. Fair

    [CF] 986 A. Fair

    2022年4月3日
  • 【Python 局域网控制】——做一个超简单的局域网指令控制电脑

    【Python 局域网控制】——做一个超简单的局域网指令控制电脑程序分为两部分,一个是客户端也是被操控的端口,另一个是服务端就是用来操作被操控的端口点个赞留个关注吧!!程序很简单,是通过局域网聊天系统改造而成,没有高级的GUI框架,只有简简单单的DOS窗口,这个仅供学习,当然也可以在你的第二台电脑里放入客户端,然后用服务端进行指令操作,也是很不错的。客户端会自动获取你的IPv4地址,并显示出来,需要用客户端给出的IP地址去服务端进行连接。执行指令也很简单,用接收到的数据进行os.system()进行执行。想法多的也可以做一个鼠标定位数据传输,可达到鼠

    2022年6月22日
  • eBPF 介绍_bcp方案是什么意思

    eBPF 介绍_bcp方案是什么意思eBPF介绍Tcpdump是Linux平台常用的网络数据包抓取及分析工具,tcpdump主要通过libpcap实现,而libpcap就是基于eBPF。先介绍BPF(BerkeleyPacketFilter),BPF是基于寄存器虚拟机实现的,支持JIT(Just-In-Time),比基于栈实现的性能高很多。它能载入用户态代码并且在内核环境下运行,内核提供BPF相关的接口,用户可以将代码编译成字节码,通过BPF接口加载到BPF虚拟机中,当然用户代码跑在内核环境中是有风险的

    2022年9月21日
  • 硬件加密芯片介绍 及 加密芯片选择(加密IC) 加密芯片原理

    硬件加密芯片介绍 及 加密芯片选择(加密IC) 加密芯片原理前端时间有研究多款加密芯片,加密算法实现,以及激活成功教程可能,也有一些个人的观点,仅供参考;一,加密芯片的来源及工作流程:市面上的加密芯片,基本都是基于某款单片机,使用I2C或SPI等通讯,使用复杂加密算法加密来实现的,流程大致如下:主控芯片生成随机码–>主控芯片给加密芯片发送明文–>加密芯片通过加密算法对明文进行加密生成密文–>加密芯片返回密文给主控芯片–>主控芯片对密文进行解密生成解密值–>主控芯片对解密值与之前明文进行对比,比较.

    2022年6月25日
  • DB2存储过程语法解析

    DB2存储过程语法解析创建SQL存储过程(CREATEPROCEDURE(SQL)statement)语法格式如下:>>-CREATEPROCEDURE–procedure-name—————————–>>–+—————————————————-+–*—->’-(–+-

    2022年7月17日
  • zabbix监控面试题[通俗易懂]

    zabbix监控面试题[通俗易懂]监控基础概论zabbix并非监控,而是实现监控的工具Zabbix-server是一个c/s和b/s结构安装zabbbix的服务器安装时和php7.1有冲突:若此机器上已经安装php7.1就安装不上zabbix监控知识体系为什么要使用监控1.对系统不间断实时监控2.实时反馈系统当前状态3.保证服务可靠性安全性4.保证业务持续稳定运行如果去到…

    2022年6月12日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号