ImageVerifierCode 换一换
格式:DOC , 页数:20 ,大小:2.40MB ,
资源ID:4331421      下载积分:8 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4331421.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(-weblogic日常维护总结与故障诊断.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

-weblogic日常维护总结与故障诊断.doc

1、中间件故障诊断总结一、 步骤:1、准确描述现象:客户说的和自己查看到的:平台、版本、操作、信息等。特别是,故障前是否有做过什么操作:网络调整、设备调整、主机参数调整、配置文件修改反正将这一切都列入排查的对象。2、使用工具收集数据,收集配置文件、日志、dump文件等等。3、 使用分析数据,根据问题或收集的数据,使用适当的工具分析数据,当然包括了在网上和在官方支持站点搜索类似的问题的解决办法。 4、 尝试解决问题,根据找到的问题点,尝试解决。如修改错的,复原正确的;运行有问题的,适当调整运行的环境和运行的参数等等。5、 给出最佳解决方案,一般就是继续观察了。6、总结经验并加以重用,知识积累。二、

2、通过前台收集基本的信息:1、重点是故障前做过的操作2、比对运行平台是否在官方的兼容性列表中,一般就是关注各个版本,特别是一些比较怪异的问题3、检查环境和参数,如能打开控制台,就在控制台中初步观察,一般进入控制台的格式是http:/ip地址:端口/console 如:http:/192.168.0.89:7001/console/。常用的留意点如下:A、 域运行状态(域-监视-健康状况);一般为running状态,如果不是running,那这些界面就没有了。B、 服务器运行状态(域-环境-服务器),正常的为running。C、 各个server性能(JVM)状态(域-环境-服务器,点击具体的se

3、rve后进入,监视-健康状况);留意JVM 堆中当前可用的内存量。不同的JVM,所显示的内容可能不一样,以下为sun的:D、 各个server线程状态(域-环境-服务器,点击具体的serve后进入,监视-线程);一般来说,空闲线程要多;健康状况为ok如下图health状态为:Warning,这个是有线程阻塞的。阻塞线程的内容为:# Servers右侧菜单:AdminServer(admin)-logging只找到examplesServer.log、access.log配置如图: 4、其他如果日志太少,里面没有记载相关信息,可参照日志文件的回滚设置。在“滚动类型:”属性页中可以设置这些日志文件

4、的回滚方式,当日志文件到一定得大小或过了设定的时间后,把日志信息保存到一个新的文件中。WebLogic提供按文件大小和时间两种方式。如下面的设置种,选择Rotation Type 为BY SIZE。也就是当日志文件的大小达到500K时,重新写一个新的文件。假如Rotation Type 为BY TIME,那么是每隔一段时间重新写一个新的文件。并且对这些文件编号设置日志文件名如:_%yyyy%_%MM%_%dd%_%hh%_%mm%5、日志的处理:查看日志中输出的具体内容,再进行处理。如:BEA-下面是一个线程阻塞的一个信息# STUCK ExecuteThread: 1 for queue:

5、weblogic.kernel.Default (self-tuning) has been busy for 2,503 seconds working on the request weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpldeab5f, which is more than the configured time (StuckThreadMaxTime) of 2,400 seconds. Stack trace:四、 产生hread Dump来分析问题hread Dump是非常有用的诊断Java应用问题的工具,每一个J

6、ava虚拟机都有及时生成显示所有线程在某一点状态的thread-dump的能力。虽然各个Java虚拟机thread dump打印输出格式上略微有一些不同,但是Thread dumps出来的信息包含线程;线程的运行状态、标识和调用的堆栈;调用的堆栈包含完整的类名,所执行的方法,如果可能的话还有源代码的行数。Thread Dump特点: 能在各种操作系统下使用 能在各种Java应用服务器下使用 可以在生产环境下使用而不影响系统的性能 可以将问题直接定位到应用程序的代码行上 Thread Dump能诊断的问题包括: 查找内存泄露,常见的是程序里load大量的数据到缓存 发现死锁线程 收集 Threa

7、d Dump 进行 Thread Dump 的方法取决于安装挂起服务器实例的操作系统。有关在不同的操作系统上进行 Thread Dump 的信息,Solaris OS- (Control-Backslash)kill -QUIT LinuxLinux 操作系统查看线程的方式不同于其它操作系统。该操作系统将每个线程视为一个进程。若要在 Linux 上进行 Thread Dump,查找通过其启动所有其它进程的进程 ID。使用命令: 若要获得根 PID,使用: ps -efHl | grep java *. * 使用一个作为字符串的 grep 参数(可在与服务器启动命令匹配的进程堆栈中找到该字符串)

8、。如果 ps 命令还没有管道传送到另一个例程,则报告的第一个 PID 将是根进程。IBM AIX在AIX上用IBM的JVM,内存溢出时默认地会产生javacore文件(关于cpu的)和heapdump文件(关于内存的)。执行kill -3 命令可以生成javacore文件和heapdump文件(pid为was java进程的id号,可以用ps -ef|grep java 查到),可以多执行几次。有些Java应用服务器是在控制台上运行,如Weblogic,为了方便获取threaddump信息,在 weblogic启动的时候,最好将其标准输出重定向到一个文件,用nohup sh startWebL

9、ogic.sh start.log &命令,执行kill -3 ,Stack trace就会输出到start.log里。为了反映线程状态的动态变化,需要接连多次做thread dump,每次间隔10-20s。Windows、XP、NT 设置DOS 窗口的属性:Layout - Screen Buffer Size- Height 9999。 同时按下CTRL-BREAK 找到Thread Dump的最开始的位置:Full thread dump. 每个服务器需要 - 来创建诊断问题所需的 Thread Dump。确保在每个服务器上执行几次,每次间隔大约 5 到 10 秒,以帮助诊断死锁问题。在

10、 NT 上,在命令 shell 中输入 CTRL-Break。 获取失败时刻的获取失败时刻的Thread Dump 启动JVM 时,加入参数: Sun JVM: -XX:+ShowMessageBoxOnE JRockit JVM: -Djrockit.waitone 五、 常见的问题1、Out of Memory 当JVM没有足够的内存执行任务时,会触发 java.lang.OutOfMemoryError 当没有更多内存可以分配时 或空闲的内存有太多碎片,无法利用时 可能不足的内存类型有可能不足的内存类型有: Native (物理内存) Heap (堆内存) 特定Java 内存代(例如,p

11、ermanet) 对Out of Memory的响应的响应 JVM会发送error到标准输出流和错误输出流 WLS会将应用程序没有处理的Java异常和错误都输出 到服务器日志 Out-of-Memory和类似的系统错误不应该由应用程序直 接处理接处理 如果应用程序发生错误,会给客户端返回错误信息( 例如HTTP 500) 如果WLS子系统发生错误,则服务器处于不稳定状态 ,需要重启 内存泄漏内存泄漏 内存泄漏: 最常见的引发Out-of-Memory错误的原因 在Java中,内存泄漏并不常发生(相对传统语言) 内存泄漏的原因是当对象不再被需要时,没有显式声明,进而 没有被垃圾回收处理 常见的场

12、景有: 太大的缓存造成内存泄漏 太多使用HTTP会话,导致内存泄漏 对数据库操作结束时,没有正常关闭数据集及数据连接 动态类加载问题 错误日志错误日志 该日志文件通常包括如下类型的信息: 操作系统错误消息 JVM版本 硬件和操作系统参数 系统环境变量 堆和垃圾回收汇总 线程汇总Runtime data area 主要包括五个部分:Heap (堆), Method Area(方法区域), Java Stack(java的栈), Program Counter(程序计数器), Native method stack(本地方法栈)。Heap 和Method Area是被所有线程的共享使用的;而Jav

13、a stack, Program counter 和Native method stack是以线程为粒度的,每个线程独自拥有。 Heap Java程序在运行时创建的所有类实或数组都放在同一个堆中。而一个Java虚拟实例中只存在一个堆空间,因此所有线程都将共享这个堆。每一个java程序独占一个JVM实例,因而每个java程序都有它自己的堆空间,它们不会彼此干扰。但是同一java程序的多个线程都共享着同一个堆空间,就得考虑多线程访问对象(堆数据)的同步问题。 (这里可能出现的异常java.lang.OutOfMemoryError: Java heap space) Method area 在Ja

14、va虚拟机中,被装载的class的信息存储在Method area的内存中。当虚拟机装载某个类型时,它使用类装载器定位相应的class文件,然后读入这个class文件内容并把它传输到虚拟机中。紧接着虚拟机提取其中的类型信息,并将这些信息存储到方法区。该类型中的类(静态)变量同样也存储在方法区中。与Heap 一样,method area是多线程共享的,因此要考虑多线程访问的同步问题。比如,假设同时两个线程都企图访问一个名为Lava的类,而这个类还没有内装载入虚拟机,那么,这时应该只有一个线程去装载它,而另一个线程则只能等待。 (这里可能出现的异常java.lang.OutOfMemoryErro

15、r: PermGen full)Java stack Java stack以帧为单位保存线程的运行状态。虚拟机只会直接对Java stack执行两种操作:以帧为单位的压栈或出栈。每当线程调用一个方法的时候,就对当前状态作为一个帧保存到java stack中(压栈);当一个方法调用返回时,从java stack弹出一个帧(出栈)。栈的大小是有一定的限制,这个可能出现StackOverFlow问题。 下面的程序可以说明这个问题。public class TestStackOverFlow public static void main(String args) Recursive r = new

16、Recursive();r.doit(10000);/ Exception in thread main java.lang.StackOverflowErrorclass Recursive public int doit(int t) if (t = 1) return 1;return t + doit(t - 1);Program counter 每个运行中的Java程序,每一个线程都有它自己的PC寄存器,也是该线程启动时创建的。PC寄存器的内容总是指向下一条将被执行指令的饿“地址”,这里的“地址”可以是一个本地指针,也可以是在方法区中相

17、对应于该方法起始指令的偏移量。 Native method stack 对于一个运行中的Java程序而言,它还能会用到一些跟本地方法相关的数据区。当某个线程调用一个本地方法时,它就进入了一个全新的并且不再受虚拟机限制的世界。本地方法可以通过本地方法接口来访问虚拟机的运行时数据区,不止与此,它还可以做任何它想做的事情。比如,可以调用寄存器,或在操作系统中分配内存等。总之,本地方法具有和JVM相同的能力和权限。 (这里出现JVM无法控制的内存溢出问题native heap OutOfMemory )旧系统2、服务器挂起问题描述在出现以下情况时怀疑服务器挂起:服务器不响应新的请求。 请求超时。 请求

18、处理的时间越来越长(其最终结果可能是挂起)。 通常,服务器挂起不会表现为服务器崩溃,但服务器挂起之后可能会崩溃。 资源濒临枯竭:内存、工作线程、数据库连接池 故障排除请注意,并非下面所有任务都需要完成。有些问题仅通过执行几项任务就可以解决。 快速链接: l为什么发生此问题? l服务器挂起的可能原因 l基本步骤 l已知的 WebLogic Server 问题 l收集 Thread Dump lThread Dump 分析 为什么发生此问题?服务器挂起有多种原因。一般而言,服务器挂起是因为缺少某种资源。缺少资源会阻止服务器响应服务请求。例如,由于故障(死锁)或者大量请求的缘故,可能没有任何可用的执

19、行线程来完成工作,所有执行线程都被占用或忙于处理以前的请求。 引起引起Server Hang的原因的原因 工作线程太少 垃圾回收占用时间太多 JVM代码优化问题 应用程序死锁 JDBC 死锁 Remote JNDI lookups JSP 编译 JSP 不正确的设置:PageCheckSeconds JVM bug 服务器挂起的可能原因 主题模式名称链接RMI、RJVM 响应 所有绑定线程等待 RJVM、RMI 响应。EJB_RMI 服务器挂起EJB_RMI 服务器挂起应用程序死锁 线程锁定资源 1,然后等待锁定资源 2。另一个线程锁定资源 2,然后等待锁定资源 1。应用程序死锁导致服务器挂起

20、待定线程全部被占用,没有线程可用于新工作。线程占用导致服务器挂起待定垃圾回收花费太多时间。垃圾回收导致服务器挂起待定servlet 时间的 JSP 错误设置,比如 PageCheckSeconds。JSP 导致服务器挂起待定死锁造成 JDBC 挂起。JDBC 中的服务器挂起待定(代码优化)过程中的 JVM 挂起类似于服务器挂起。代码优化中服务器挂起待定在大量负载情况下 JSP 编译造成服务器挂起。JSP 编译导致服务器挂起待定SUN JVM 错误,比如轻量型线程库。Sun JVM 错误导致服务器挂起待定返回页首 基本步骤当服务器挂起时,首先使用 java weblogic.Admin t3:/

21、server:port PING 来 ping 该服务器。如果服务器能够响应此 ping,则可能是应用程序正在挂起而不是服务器自身。 确保服务器确实正在挂起,而不是在做垃圾回收。若要验证挂起,启用 -verbosegc 重新启动服务器,然后将 stdout 和 stderr 重定向到一个文件中。当服务器停止响应时,可以判断它是正在收集无用信息还是确实挂起。 WebLogic Server 使用“Default”线程队列响应客户端服务请求。这些是在发生服务器挂起时应当检查的线程。下面是其中一个线程在 Thread Dump 中的形式示例。Execute Thread 14 正在等待任务。该线程调

22、用的最后方法是 Object.wait()。 ExecuteThread: 14 for queue: default daemon prio=5 tid=0x8b0ab30 nid=0x1f4 waiting on monitor 0x96af000.0x96afdc4atjava.lang.Object.wait(Native Method)atjava.lang.Object.wait(Object.java:420)atweblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:94)atweblogic.kernel

23、.ExecuteThread.run(ExecuteThread.java:118)确定“Default”ExecuteThread 队列是否超载。利用控制台确定“Default”队列中的所有 ExecuteThreads 是否空闲。如果没有一个空闲,则应用程序可能需要一个更大的 ExecuteThread 数来配置。可以通过控制台更改该值,并将其保存在 config.xml 文件中。 如果执行队列有空闲线程,则可能没有分配足够的 Socket Reader 线程。缺省情况下,WebLogic Server 实例在启动时创建三个 Socket Reader 线程。如果群集系统在高峰期使用的 S

24、ocket Reader 线程超过三个,则增加 Socket Reader 线程的数量。 通常,Socket Reader 线程的数量应当较小。但是,如果 Weblogic Serve 充当正在挂起的服务器实例的客户端,则应当为每个 Weblogic Serve 配置一个线程。 如果使用 JDBC 连接池,确保池中已经配置的 JDBC 连接数量与同时请求(即执行线程)的数量相等。 已知的 WebLogic 问题JDBC 产生死锁问题的可能性存在。检查在 weblogic.log 开头找到的服务器的版本和 Service Pack 级别。然后对已经应用于服务器类路径的所有临时修补程序检查以上版本

25、和 Service Pack 行。修补程序将指明已经解决了什么问题。 Thread Dump 分析 分析服务器挂起的最有用的工具是一系列 Thread Dump。Thread Dump 提供关于每个线程在特定时刻正在执行什么操作的信息。一系列 Thread Dump(一般每隔 5 到 10 秒进行三个或更多 Thread Dump)可以帮助分析每个线程从一个 Thread Dump 到另一个 Thread Dump 过程中的状态变化或所缺少的变化。挂起服务器 Thread Dump 一般显示线程状态从第一个 Thread Dump 到最后一个 Thread Dump 中变化很小。 在 Thre

26、ad Dump 中查看的内容 所有请求都通过 ListenThread 进入 WebLogic Server。如果 ListenThread 丢失,就无法接收任何工作,因此也无法完成任何工作。确认在 Thread Dump 中存在 ListenThread。ListenThread 应当在 socketAccept 方法中。下面示例说明监听线程 (Listen Thread) 的形式。 ListenThread.Default prio=10 tid=0x00037888 nid=93 lwp_id=6888343 runnable 0x 1a81b000.0x1a81b530at .Plai

27、nSocketImpl.socketAccept(Native Method)at.PlainSocketImpl.accept(PlainSocketImpl.java:353)- locked (a .PlainSocketImpl)at.ServerSocket.implAccept(ServerSocket.java:439)at.ServerSocket.accept(ServerSocket.java:410)atweblogic.socket.WeblogicServerSocket.accept(WeblogicServerSocket.java:24)atweblogic.t

28、3.srvr.ListenThread.accept(ListenThread.java:713)atweblogic.t3.srvr.ListenThread.run(ListenThread.java:290) Socket Reader 线程接受来自监听线程队列的传入请求,并将该请求放入执行线程队列。如果 Thread Dump 中没有 Socket Reader 线程,则在某个地方存在导致 Socket Reader 线程消失的错误。应当始终保持至少有三个 Socket Reader 线程。一个 Socket Reader 线程一般用于轮询功能,另外两个用于处理请求。下面是一个 Thr

29、ead Dump 示例中的 Socket Reader 线程。ExecuteThread: 2 for queue: weblogic.socket.Muxer daemon prio=10 tid=0x00036128 nid=75 lwp_id=6888070 waiting for monitor entry 0x1b12f000.0x1b12f530atweblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:92)- waiting to lock (a java.lang.String)atweblo

30、gic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)atweblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)atweblogic.kernel.ExecuteThread.run(ExecuteThread.java:151) ExecuteThread: 1 for queue: weblogic.socket.Muxer daemon prio=10 tid=0x00035fc8 nid=74 lwp_id=6888067 runnable

31、 0x1b1b0000.0x1b1b0530at weblogic.socket.PosixSocketMuxer.poll(Native Method)atweblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:99) - locked (a java.lang.String)atweblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)atweblogic.kernel.ExecuteThread.execute(Exec

32、uteThread.java:178)atweblogic.kernel.ExecuteThread.run(ExecuteThread.java:151) ExecuteThread: 0 for queue: weblogic.socket.Muxer daemon prio=10 tid=0x00035e68 nid=73 lwp_id=6888066 waiting for monitor entry 0x1b231000.0x1b231530atweblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:

33、92)- waiting to lock (a java.lang.String)atweblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)atweblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)atweblogic.kernel.ExecuteThread.run(ExecuteThread.java:151) ThreadPoolPercentSocketReaders 属性设定要用于从 java Socket 中读取消息的执行线程

34、的最大百分比。此属性的最佳值是针对应用程序设定的。缺省值为 33,有效范围是 1 到 99。 分配执行线程充当 Socket Reader 线程可提高服务器接受客户端请求的速度和能力。必须平衡专门用于从 Socket 读取消息的执行线程和那些在服务器中执行实际运行任务的线程的数量。 后续步骤 后续步骤要求进一步分析 Thread Dump。检查 Thread Dump,了解每个线程在服务器挂起时正在执行的操作。这有助于分析下一个探查阶段。例如,如果 JSP 编译中涉及许多线程,参考服务器挂起的可能原因一节可了解进一步的诊断和测试操作。 Ping Serve java weblogic.Admi

35、n -url t3:/localhost:7001 -username -password PING 如果服务器有响应,说明是应用本身挂起了,服务器并没有挂起。 检查垃圾回收:verbosegc 检查挂起时,是否正在进行频繁的垃圾回收。 查看工作线程:Listener、Socket Reader、Execute 是否Listener/ Socket Reader 线程存在,并正常工作? 是否Execute线程都处在忙碌状态? 查看Thread Core Dump 每个线程都在忙些啥? 进一步观察分析 1.挂起时仍有空闲的挂起时仍有空闲的Execute 线程线程 挂起时仍有空闲的挂起时仍有空闲的 线程线程 确定Socket Reade线程都在正常工作。 适当提高 Socket Reader 线程数。 集群环境下需要更多的Socket Reader 线程。 2.挂起时没有空闲的挂起时没有空闲的Execute 线程线程 挂起时没有空闲的挂起时没有空闲的线程线程 确定所有线程都在正常工作,没有死锁等现象。 为耗时较长的请求创建单独的请求队列。 增加资源:内存、工作线程、数据库连接池 应用检查 EJB RMI calls JSP calls 其它检查 垃圾回收 代码优化 JVM bugs JSP 编译问题 dump 分析工具heapAnalyzer

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服