当前位置: 首页 > news >正文

网站建设工具有哪些网站的根目录

网站建设工具有哪些,网站的根目录,wordpress ajax返回0,中国招标与采购网openjdk目前#xff0c;我大部分时间都在Java虚拟机 #xff08;JVM#xff09;中和周围进行大量工作#xff0c;大部分时间是在Linux上。 当事情变得不对劲并且我试图确定原因时#xff0c;我接触了Java性能分析工具。 这些工具有两种形式#xff0c;一种是精美的GUI我大部分时间都在Java虚拟机 JVM中和周围进行大量工作大部分时间是在Linux上。 当事情变得不对劲并且我试图确定原因时我接触了Java性能分析工具。 这些工具有两种形式一种是精美的GUI称为visualvm 我在本地计算机上使用时使用另一种是Java开发工具包JDK附带的cli工具当我在远程工作时使用。 我指的CLI工具是 jps – JVM进程状态工具 jstat – JVM统计信息监视工具 jhat – Java堆分析工具 jstack – Java堆栈跟踪工具 我最常用的工具是jpsjstat和jstack而jhat工具也非常方便但实际上它本身需要一个完整的博客文章因为您疯狂地使用它可以做什么。 在这篇文章中我整理了一些技巧观察和示例输出以说明如何使用它们。 当我使用ubuntu 11.10仅安装Java运行时环境JRE时我将需要安装JDK。 就我而言我决定尝试一下openjdk 7但是版本6可以正常工作。 rootoneric:~# apt-get install openjdk-7-jdk 要尝试这些命令我​​已经安装了tomcat7可以通过ubuntu上的apt来完成同样以前的版本是tomcat 6。 rootoneric:~# apt-get install tomcat7 现在我已经安装了tomcat我想列出Java进程请注意这样做时最好假定使用与服务相同的用户帐户。 在ubuntu上我将使用用户帐户因为tomcat7用户是系统帐户我必须覆盖shell因为默认情况下它是/ bin / nologin 然后我可以以该用户身份运行jps。 jps命令输出java进程的PID以及启动时传递给它的主类名称和参数。 rootoneric:~# su - tomcat7 -s /bin/bash tomcat7oneric:~$ jps -ml 12728 org.apache.catalina.startup.Bootstrap start 13926 sun.tools.jps.Jps -ml tomcat7oneric:~$ 现在我们有了这些进程的PID可以运行jstat了我使用的第一个开关是-gcutil这使我对jvm中的堆使用有了一个总体了解。 如果出现暂停或性能下降的情况我将查看最后两列。 其中包含垃圾收集时间GCT和完整垃圾收集时间FGCT。 如果FGCT列每秒增加一次则可能是我们遇到了问题。 下面的示例针对tomcat的PID运行jstat 。 我还指示该命令每20行显示表头并以1000毫秒的间隔连续打印统计信息就像正常的控件C一样在输出末尾。 此示例显示了一个很少发生的新启动的tomcat 7这从完全垃圾收集时间FGCT和垃圾收集时间GCT列中的值可以清楚地看出。 还要注意的是目前的Permgen空间P占70。 permgen空间是堆的重要区域因为它保存用户类方法名称和内部jvm对象。 如果您使用tomcat已有一段时间则会看到java.lang.OutOfMemoryErrorPermGen空间错误该错误指示什么时候该空间已满并且无法进行垃圾回收。 重新部署大型Web应用程序时经常发生这种情况。 同样在示例中我们可以看到幸存者0S0幸存者1S1伊甸园和旧空间具有相当大的可用空间。 tomcat7oneric:~$ jstat -gcutil -h20 12728 1000S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 17.90 32.12 4.81 71.41 5 0.009 1 0.023 0.0320.00 17.90 32.12 4.81 71.41 5 0.009 1 0.023 0.0320.00 17.90 32.12 4.81 71.41 5 0.009 1 0.023 0.032 为了说明相比之下tomcat的负载情况我们可以安装一个名为Apache bench的工具。 rootoneric:~# apt-get install apache2-utils 并运行以下命令以同时访问具有大量请求的基本页面。 markwoneric:~$ ab -n 1000000 -c 100 http://localhost:8080/ 下面是该测试运行了一段时间后的输出因为我们可以看到幸存者1伊甸园和旧空间有了相当大的增长但是服务器并没有花费很多时间来进行完整的垃圾收集如下所示完整垃圾收集计数FGC的值只有10从年轻一代收集计数YGC的增加可以看出大部分工作是在年轻一代中进行的。 这里还要注意的是permgen空间没有太多变化实际上下降了这是由于堆的大小增加了。 tomcat7oneric:~$ jstat -gcutil -h20 12728 1000S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 100.00 52.02 81.84 59.62 117 1.176 10 0.074 1.2500.00 100.00 52.02 81.84 59.62 117 1.176 10 0.074 1.2500.00 100.00 52.02 81.84 59.62 117 1.176 10 0.074 1.2500.00 100.00 52.02 81.84 59.62 117 1.176 10 0.074 1.250 为了更深入地了解垃圾收集的原因我们使用了带有-gccause选项的jstat命令该命令显示的列与上一个命令相同但有两个额外的列提供了GC的原因。 在下面的示例中我们可以看到分配失败的示例这表明由于堆太小正在执行完整的gc。 tomcat7oneric:~$ jstat -gccause -h20 12728 1000 100.00 0.00 0.00 78.91 59.67 168 1.680 14 0.083 1.763 unknown GCCause No GC 100.00 0.00 72.61 83.73 59.67 170 1.698 14 0.083 1.781 unknown GCCause No GC 0.00 100.00 46.24 91.83 59.67 173 1.729 14 0.083 1.811 unknown GCCause No GC 100.00 0.00 11.39 29.80 59.67 176 1.759 16 0.086 1.846 unknown GCCause No GC 100.00 0.00 92.41 35.30 59.67 179 1.777 16 0.086 1.864 unknown GCCause Allocation Failure 0.00 100.00 62.58 43.05 59.67 181 1.803 16 0.086 1.889 unknown GCCause No GC 诊断性能问题时我还想研究的另一个领域是虚拟机中运行的线程。 这可以帮助我理解是否有任何组件过载因此要运行大量线程来追赶。 这主要仅适用于异步过程例如消息传递或调度例程。 要转储线程及其当前堆栈的列表请使用jstack命令如下面的示例所示我通常再次以进程所有者的身份运行它。 tomcat7oneric:~$ jstack 12728 2011-10-16 14:53:58 Full thread dump OpenJDK 64-Bit Server VM (20.0-b11 mixed mode):Attach Listener daemon prio10 tid0x00000000015be800 nid0x4004 waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLEhttp-bio-8080-exec-182 daemon prio10 tid0x00007f9d84274800 nid0x3cd3 waiting on condition [0x00007f9d7a0df000]java.lang.Thread.State: WAITING (parking)at sun.misc.Unsafe.park(Native Method)- parking to wait for 0x00000000ef16da38 (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject. await(AbstractQueuedSynchronizer.java:2043)at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:386)at org.apache.tomcat.util.threads.TaskQueue.take(TaskQueue.java:104)at org.apache.tomcat.util.threads.TaskQueue.take(TaskQueue.java:32)at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)at java.lang.Thread.run(Thread.java:679) ... 我计划用jruby在一些可视化工具上做一些工作但是这可能是我下一篇文章的重点。 在撰写本文的过程中我找到了一些有趣的文章这些文章链接如下 Sun Microsystems的Chuk-Munn Lee对Java SE 6部署进行故障排除 解释java.lang.OutOfMemoryErrorPermGen空间 参考 Mark Wolfe博客上的 JCG合作伙伴 Mark Wolfe 从CLI监视OpenJDK 。 相关文章 任何软件开发公司应存在的服务实践和工具第1部分 这是在您的业务逻辑之前 您的代码中有几个错误 使用FindBugs产生更少的错误代码 引入新技术–如何抵抗阻力 Java工具源代码优化和分析 我们可以更好地理解需求规范吗 每个程序员都应该知道的事情 为什么自动化测试可以提高您的开发速度 翻译自: https://www.javacodegeeks.com/2011/10/monitoring-openjdk-from-cli.htmlopenjdk
http://www.huolong8.cn/news/56361/

相关文章:

  • 中企动力 网站价格免费搭建单页网站
  • 如何建设一个双语的网站烦恼可以做网站吗
  • 导购类网站模板wordpress首页缓存
  • 广西seo网站母婴类网站 网站建设方案书 备案
  • 苏州哪里做网站青岛济南网站建设优化
  • 建设银行官方网站手机版下载类似淘宝的网站怎么做的
  • 基因数据库网站建设seo工具不包括
  • 怎么样学做网站简单h5
  • 专业房地产网站建设网站建设月流量
  • 做外贸最好的网站建设如何在wordpress中添加背景音乐
  • 北京市住房城乡建设厅网站首页百度知道推广软件
  • 龙岩网站推广h5响应式网站源码下载
  • 石家庄最新大事建设和优化网站的步骤
  • 椒江做网站wordpress编辑器不行
  • 锒川市住房和城乡建设局网站公告oppo网站开发设计
  • 商家产品展示网站源码加拿大购物网站排名
  • 网站访客qq号码获取企业网站建设和运营
  • 网站建设公司十大部门门户网站建设请示
  • 建设工程施工许可证在哪个网站办python做一个简单的网页
  • 怎么找人帮做网站WordPress 布局 企业网站
  • 网站注册备案之后怎么做网站php怎么创建网站
  • 响应式网站开发pdf网站备案查询姓名
  • 海珠区pc端网站建设如何做网站拓扑结构图
  • 免费推广店铺的网站怎么用源码搭建网站
  • 潍坊中脉网站建设广东网站建设系统
  • 用wordpress建立的网站网络推广方式有哪几种
  • 英语教学网站建设意见项目营销推广方案
  • 长沙的网站建设公司哪家好搜索更多网页内容
  • dw做网站是静态还是动态凡科网站建设网页怎么建
  • 网站的技术分析天津建设网投标网站