首页 文章 精选 留言 我的

精选列表

搜索[类型改进],共10013篇文章
优秀的个人博客,低调大师

Jmeter之tomcat性能测试+性能改进措施

Jmeter用于tomcat性能测试,因为项目部署在tomcat,正常情况下,一个tomcat可以承受500个并发,通过修改配置,及其相关的tomcat优化,可以承受到1000个并发。 如何测试tomcat优化前和优化后的结果? 通过Jmeter测试,就能达到对应的效果 Jmeter测试tomcat比较简单 1.建立对应的线程组 2.建立Http请求 需要填写的一个是协议名称,一个是IP地址或域名,一个是端口号,还有一个是路径 这个路径默认不填也行,如果具体到post或get请求及其携带参数,就需要填写 如果测试具体的get或post请求,加请求url和对应的参数,如下图所示: 注意和postMan工具有些相似,不同于postman,Jmeter可以进行多用户测试,即多个线程测试 通过察看结果树,可以查看请求失败: 聚合报告可供分析: server.xml文件: 线程池优化: 连接池优化: Executor重要参数说明: name:共享线程池的名字。这是Connector为了共享线程池要引用的名字,该名字必须唯一。默认值:None; namePrefix:在JVM上,每个运行线程都可以有一个name 字符串。这一属性为线程池中每个线程的name字符串设置了一个前缀,Tomcat将把线程号追加到这一前缀的后面。默认值:tomcat-exec-; maxThreads:该线程池可以容纳的最大线程数。默认值:200; maxIdleTime:在Tomcat关闭一个空闲线程之前,允许空闲线程持续的时间(以毫秒为单位)。只有当前活跃的线程数大于minSpareThread的值,才会关闭空闲线程。默认值:60000(一分钟)。 minSpareThreads:Tomcat应该始终打开的最小不活跃线程数。默认值:25。 threadPriority:线程的等级。默认是Thread.NORM_PRIORITY 连接池重要参数说明: executor:表示使用该参数值对应的线程池; minProcessors:服务器启动时创建的处理请求的线程数; maxProcessors:最大可以创建的处理请求的线程数; acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。 这时你会发现性能会得到很大的提升 当然必要的时候,需要修改tomcat的内存 tomcat的3种运行模式 bio:默认的模式,性能非常低下,没有经过任何优化处理和支持. nio:nio(new I/O),是Java SE 1.4及后续版本提供的一种新的I/O操作方式(即java.nio包及其子包)。Java nio是一个基于缓冲区、并能提供非阻塞I/O操作的Java API,因此nio也被看成是non-blocking I/O的缩写。它拥有比传统I/O操作(bio)更好的并发运行性能。 apr:安装起来最困难,但是从操作系统级别来解决异步的IO问题,大幅度的提高性能. 启动NIO模式 修改server.xml里的Connector节点,修改protocol为org.apache.coyote.http11.Http11NioProtocol 上述比对,这也就是我们为什么选择NIO的原因

优秀的个人博客,低调大师

LinkedIn Test Butler 旨在改进 Android UI 测试

LinkedIn工程师兼Test Butler创建者Drew Hannay写道,Test Butler是一款面向Android的开源测试工具,它允许开发人员对若干测试环境设置通过编程进行控制,从而使开发人员可以可靠地运行测试。 据Hannay介绍,Test Butler的灵感来自谷歌2014年的演讲“环保之路:清理有毒的移动环境”。该演讲介绍了如何解决反复出现并影响移动测试的问题,比如缺少可靠性和可再现性、速度缓慢等。Hannay表示,当结果可能受到环境因素影响时,测试就不可靠了,尤其是当它们出现在设备/操作系统层面时,比如Android模拟器的CPU突然休眠,不正常的设备方向变化,随机出现的锁屏,意外弹出的系统对话框,等等。所有那些事件都会导致Espresso UI测试失败。 为了解决这些问题,按照最初的设计,Test Butler将作为一个后台服务在Android模拟器上运行,提供一些旨在增加测试环境稳定性的特性,比如: 禁用动画,这是Espresso正常运行所需要的; 通过安装一个自定义的IActivityController禁用系统对话框; 监控模拟器的锁屏、Wi-Fi和CPU,保证它们不会休眠。 测试中的应用可以和Test Butler进行通信,并控制多个测试环境变量,比如: 启用/禁用Wi-Fi; 在测试执行过程中通过编程改变设备方向; 模拟不同的定位服务模式,比如,省电模式或者高精度模式; 定义应用程序运行的区域设置。 Test Butler的一个关键方面是,它使用面向内置Android模拟器的系统密钥库进行签名。也就是说,它会自动取得自己所需的任何signature级的权限,而不需要通过ADB,或者篡改清单文件。 下面的代码展示了如何设置应用,让其和Test Butler一起工作: public class ExampleTestRunner extends AndroidJUnitRunner { @Override public void onStart() { TestButler.setup(InstrumentationRegistry.getTargetContext()); super.onStart(); } @Override public void finish(int resultCode, Bundle results) { TestButler.teardown(InstrumentationRegistry.getTargetContext()); super.finish(resultCode, results); } } 当应用和Test Butler的连接建立后,你可以使用TestButler类提供的多种方法控制测试环境,比如修改定位服务模式、设置Wi-Fi状态、触发设备反转,等等。 据Hannay介绍,目前,LinkedIn每天使用Test Butler运行超过1百万次测试。该工具是开源的,代码托管在GitHub上。 文章转载自 开源中国社区[http://www.oschina.net]

优秀的个人博客,低调大师

Apache Hadoop 3.0.0-alpha1主要改进

1、Minimum required Java version increased from Java 7 to Java 8 所有的Hadoop JARs针对运行时版本的Java 8被编译。仍在使用Java 7或更低版本的用户必须升级至Java 8。 2、Support for erasure encoding in HDFS HDFS支持纠删码。与副本相比纠删码是一种更节省空间的数据持久化存储方法。像Reed-Solomon这种标准编码用于1.4倍空间开销,而之前的HDFS副本相比则是3倍空间开销。既然纠删码主要的额外开销是在重建和执行远程读,它习惯上用于存储冷数据,即不经常访问的数据。当部署这个新特性时用户应该考虑纠删码的网络和CPU开销。 3、YARN Timeline Service v.2 引入了Yarn时间抽服务v.2,应对两大挑战:改善时间轴服务的可伸缩性和可靠性,通过引入流和聚合增强可用性。 4、Shell script rewrite shell脚本重写,解决了之前的很多长期存在的bug。 5、MapReduce task-level native optimization MR任务级本地优化。MapReduce添加了Map输出collector的本地实现。对于shuffle密集型作业,这将会有30%以上的性能提升。 6、Support for more than 2 NameNodes. 允许用户运行多个Standby NN,更高的容错性。比如,通过配置3个NN和5个JournalNodes,集群能够容忍2个NN宕机而不是之前的一个。 7、Support for Microsoft Azure Data Lake filesystem connector 集成Microsoft Azure Data Lake 8、Intra-datanode balancer 数据节点内在均衡器,之前单个数据节点是可以管理多个磁盘目录的。正常写入操作,各磁盘会被均匀填满。然而,当添加或替换磁盘时可能导致DataNode严重内斜。这种情况现有的HDFS balancer是无法处理的。这种情况是由新intra-DataNode平衡功能来处理。通过hdfs diskbalancer CLI来调用。 9、Reworked daemon and task heap management Hadoop守护进程和MapReduce任务堆内存管理的一系列变化。HADOOP-10950介绍了配置守护集成heap大小的新方法。主机内存大小可以自动调整,HADOOP_HEAPSIZE已弃用。MAPREDUCE-5785map和reduce task堆大小的配置方法,所需的堆大小不再需要通过任务配置和Java选项实现。已经指定的现有配置不受此更改影响。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册