tomcat 产生heapdump文件配置

系统有时会遇到OutOfMemoryError,Java堆溢出了。我们需要找到造成OutOfMemoryError原因。一般有两种情况:

1、内存泄露,对象已经死了,无法通过垃圾收集器进行自动回收;

2、内存溢出,内存中的对象都还必须存活着,这说明Java堆分配空间不足,检查堆设置大小(-Xmx与-Xms),检查代码是否存在对象生命周期太长、持有状态时间过长的情况。


想在泄漏未发生前,取堆转储文件分析, 通过jvm参数-XX:+HeapDumpOnOutOfMemoryError(XX:+HeapDumpOnCtrlBreak不知道为什么tomcat启动不了)可以让JVM在出现内存溢出是Dump出当前的内存转储快照。

当然也可以通过用jmap生产dump文件。windows通过任务管理器查看tomcat的进程pid,linux用ps命令查看进程pid,然后用jmap命令(Java5:jmap -heap:format=b <pid>;Java6:jmap -dump:format=b,file=HeapDump.bin <pid>)

 

在tomcat中设置jvm参数

linux系统中

1.打开/tomcat_home/bin/catalina.sh文件 

2.加上:JAVA_OPTS="$JAVA_OPTS -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\heapdump"

如下图位置:

注:其中不设-XX:HeapDumpPath时,dump出的文件在/tomcat_home/bin目录下

Windows系统中

1.打开/tomcat_home/bin/catalina.bat文件

2.加上:set JAVA_OPTS=%JAVA_OPTS% -server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:\heapdump

如下图位置:

 

分析dump出来的内存快照文件


可以使用分析工具进行分析,如:

 

Eclipse的MAT

下载地址:http://www.eclipse.org/mat/downloads.php

说明文档:http://www.vogella.com/articles/EclipseMemoryAnalyser/article.html#example_project

 

注意:解析过大的HeapDump可能导致Eclipse抛出OutOfMemory的错误。这时你需要手动调整Eclipse的缓存大小,可以参考官网给出的处理方式(原文连接

 

Alternatively, edit the MemoryAnalyzer.ini to contain:

-vmargs
-Xmx2g
-XX:-UseGCOverheadLimit

Eclipse插件版打不开的朋友可以试试 RPC版的MAT (我的232m的dump文件也打不开,难道非得用64bit的机器吗?):RPC版MAT下载地址 。

 

JProfile

 

等等;

转自:http://jiangsha.iteye.com/blog/1576355

<think>好的,我现在需要回答用户关于HTML中a标签的使用方法、属性和示例的问题。首先,我要回忆一下a标签的基本知识,确保自己理解正确。a标签主要用于创建超链接,连接其他页面或资源,这是HTML中非常重要的一个标签。 接下来,用户提到了使用方法和属性。根据记忆,a标签有几个关键属性,比如href、target、download、rel等。我需要详细解释每个属性的作用,并给出示例。例如,href指定链接的URL,target定义如何打开链接,比如在新标签页中打开。还要注意,有些属性可能需要配合其他属性使用,比如download属性通常和href一起使用来指定下载的文件名。 用户还要求提供示例代码。我需要确保示例涵盖不同的使用场景,比如普通链接、锚点跳转、下载链接等。同时,要检查代码的正确性,避免语法错误。比如,锚点链接需要在目标元素设置id属性,下载链接可能需要服务器端配置才能正确工作。 另外,用户提到的引用需要自然融入回答中。根据提供的引用资料,引用[1]提到a标签是文本级标签,可以包含伪类,并且不能包裹p标签。这需要在注意事项部分强调,避免用户错误嵌套标签。引用[2]关于z-index的内容可能与此问题关联不大,但如果有涉及层叠上下文的场景,可能需要提及,但这里可能不需要。 在结构上,应该分点说明属性和用法,每个属性单独列出,示例代码用代码块展示。注意事项部分需要提醒用户常见的错误,比如嵌套问题和伪类的使用。最后,生成的相关问题需要与a标签相关,帮助用户进一步学习,比如属性区别、新窗口打开的方法、锚点使用和下载功能实现。 需要检查是否有遗漏的重要属性,比如rel属性中的noreferrer、noopener等安全相关属性,或者hreflang、type等较少用到的属性。但为了保持回答的简洁性,可能只需提到常用属性,高级属性可以放在相关问题中。 最后,确保回答符合系统级指令,使用正确的中文表达,数学公式(如果有的话)用$...$格式,但这里可能不需要。独立公式也不涉及,所以主要检查代码格式和引用标识是否正确添加。</think>### HTML中<a>标签的使用方法、属性及示例 #### 一、基本语法与核心属性 <a>标签(超链接标签)用于定义超链接,允许用户跳转到其他页面或页面内的特定位置。其基本语法为: ```html <a href="URL">链接文本</a> ``` **主要属性:** 1. **`href`** - 功能:指定链接目标的URL,可以是绝对路径、相对路径、锚点或协议(如`mailto:`)。 - 示例: ```html <a href="https://www.example.com">访问示例网站</a> ``` 2. **`target`** - 功能:定义链接打开方式,常用值包括: - `_self`(默认,当前窗口打开) - `_blank`(新标签页打开) - `_parent`/`_top`(框架页面中使用) - 示例: ```html <a href="page.html" target="_blank">在新标签页打开</a> ``` 3. **`download`** - 功能:强制浏览器下载链接资源而非打开,可指定下载文件名[^1]。 - 示例: ```html <a href="image.jpg" download="my-photo.jpg">下载图片</a> ``` 4. **`rel`** - 功能:定义当前文档与目标资源的关系,如`nofollow`(禁止搜索引擎追踪)、`noopener`(安全防护)等。 - 示例: ```html <a href="external-site.com" rel="nofollow">外部链接</a> ``` --- #### 二、特殊功能示例 1. **锚点跳转** ```html <!-- 定义锚点 --> <a href="#section2">跳转到第二部分</a> <!-- 目标位置 --> <h2 id="section2">第二部分标题</h2> ``` 2. **邮件与电话链接** ```html <a href="mailto:contact@example.com">发送邮件</a> <a href="tel:+1234567890">拨打电话</a> ``` --- #### 三、注意事项 1. **标签嵌套规则** - <a>是**文本级标签**,不能包裹块级标签(如<p>、<div>),但可以被块级标签包裹[^1]。 - ✅ 正确用法: ```html <p><a href="#">段落中的链接</a></p> ``` - ❌ 错误用法: ```html <a href="#"><p>包裹段落</p></a> ``` 2. **伪类样式** - 支持`:link`(未访问)、`:visited`(已访问)、`:hover`(悬停)、`:active`(点击时)四种状态样式: ```css a:link { color: blue; } a:visited { color: purple; } ``` --- #### 四、完整示例 ```html <!DOCTYPE html> <html> <head> <style> a:hover { color: red; } </style> </head> <body> <a href="https://www.example.com" target="_blank">示例网站(新标签页打开)</a><br> <a href="#contact">跳转到联系信息</a> <div style="height: 1000px"></div> <!-- 模拟长页面 --> <h2 id="contact">联系信息</h2> <a href="mailto:test@example.com">发送邮件</a> </body> </html> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值