首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏朝雨忆轻尘

    Java性能:利用JMC进行性能分析

    JMC, 即Java任务控制(Java Mission Control)是从Java7(7u40)和 Java8 的商业版本包括一项新的监控和控制特性。 JMC 程序 (JDK_HOME\bin目录下) 会启动一个窗口程序,然后让我们选择对那进程进行监控,JMC打开性能日志后, 主要包括7部分性能报告,分别是一般信息、内存、代码、线程、I/O、系统、事件 启动JMC,打开生成的JFR性能日志 1. 一般信息,如下图所示 ? 图中, 堆使用量、CPU总体占用率、GC暂停时间是非常重要的三个指标 对于Java应用而言,GC暂停时间是最值得关注的指标。 系统性能分析初期,我们可以首先定位线程争用的情况,可以初步达到性能的飞跃。 5. IO ?   IO作为系统的基础指标,IO过高会导致系统性能急剧下降,避免过度打印日志和生成大文件可以避免系统IO过高导致的性能问题。

    3.3K31发布于 2019-06-19
  • 来自专栏全栈程序员必看

    JVM工具总结(jConsole jmc jvisualvm)

    false -Dcom.sun.management.jmxremote.ssl=false -jar ay.jar 运行这个命令等服务启动成功就可以了 三、本地连接,找到本地jdk安装目录bin下,jmc.exe ,jconsole.exe,jvisualvm.exe 1.用jmc连接 双击jmc.exe,进入后点击文件–》连接–》创建新连接–》下一步,主机:输入192.168.222.130(你的服务器ip

    1.3K30编辑于 2022-09-04
  • 来自专栏crmeb

    9 个 Java 性能技巧,YYDS!

    在我们学习特定的 Java 编程性能之前,先来探讨一些通用的技巧。1. 在明确必要之前别急着优化这可能是最重要的性能优化技巧之一。你应该遵循常见的最佳实践做法并在案例中高效地应用它。 这将为你提供最大的性能改进,而且你可能仅需要解决这些问题中的一小部分就能满足你的性能要求。常见的通用技巧到此结束。接下来让我们仔细看看一些特定于 Java 的技巧。5. 所以,最后,这段代码在日志文件中写入 “This is a test0 1 2 3 4 5 6 7 8 9” 。 Apache Commons StringUtils.Replace 而不是 String.replace一般来说,String.replace 方法可以正常工作,并且效率很高,尤其是在你使用 Java 9 thistest.replace(“test”, “simple test”);// with thisStringUtils.replace(test, “test”, “simple test”);9.

    47540编辑于 2022-07-07
  • 来自专栏chenchenchen

    SQL性能

    WHERE column1 = -column2 3 还是可以带来查询性能的优化的。 针对专门操作符的 前面,讲的是关于查询条件的一般规则,在这一节中,将讨论如何使用专门的操作符来改进 SQL 代码的性能。 当一些优化器发现查询中存在 OR 操作符时,就不使用索引查询,所以在这种情况下,并且只有在这种情况下,UNION 才比 OR 性能更高。 以上是作者对如何提高 SQL 性能的一些总结,这些规则并一定在所有的数据库系统上都能带来性能的提高,但是它们一定不会对数据库的性能带来下降,所以掌握并使用这些规则可以对数据库 应用程序的开发有所帮助。 本文总结的是一些 SQL 性能的比较初级的方面,SQL 还包括 Order by,Group by 以及 Index 等等。

    2.3K30发布于 2019-12-03
  • 来自专栏嵌入式与Linux那些事

    Linux 性能工具的 9 张图

    这里包含Linux 性能资料的工具图。它们展示了:Linux 可观察性工具、 Linux 静态性能分析工具、 Linux 基准测试工具、 Linux 工具和Linux sar。 性能观察工具: 静态性能工具 性能压测工具: 性能工具 sar perf-tools 追踪工具 BPF性能工具:

    32521编辑于 2024-07-05
  • 来自专栏纯洁的微笑

    Tomcat 性能之 JVM

    因此在对Web 容器( 应用服务器) 的中必不可少的是对于 JVM 的。 对于 JVM 的,主要有两个方面考虑: 内存大小配置 垃圾回收算法选择 当然,确切的说,以上两点并不互相独立,内存的大小配置也会影响垃圾回收的执行效率。 延迟、吞吐量 其他 JVM 配置 垃圾回收算法对应到的就是不同的垃圾收集器,具体到在 JVM 中的配置,是使用 -XX:+UseParallelOldGC 或者 -XX:+UseConcMarkSweepGC 所谓,就是一个不断调整和优化的过程,需要观察、配置、测试再如此重复。有相关经验的朋友欢迎留言补充! 说到底,那上面的这些选项是要配置在哪里呢?

    2.2K30发布于 2019-05-06
  • 来自专栏SmartSi

    Spark 性能之Shuffle

    概述 大多数 Spark 作业的性能主要就是消耗在了 shuffle 环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作。 因此,如果要让作业的性能更上一层楼,就有必要对 shuffle 过程进行。 但是也必须提醒大家的是,影响一个 Spark 作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle 只能在整个 Spark 的性能中占到一小部分而已。 建议:如果作业可用的内存资源较为充足的话,可以适当增加这个参数的大小(比如96m),从而减少拉取数据的次数,也就可以减少网络传输的次数,进而提升性能。 ,建议参考后面的几个参数,通过 bypass 机制或优化的 HashShuffleManager 来避免排序操作,同时提供较好的磁盘读写性能

    1.8K31发布于 2019-08-08
  • 来自专栏SmartSi

    Spark 性能之资源

    Spark的性能实际上是由很多部分组成的,不是调节几个参数就可以立竿见影提升作业性能的。 笔者根据之前的Spark作业开发经验以及实践积累,总结出了一套Spark作业的性能优化方案。整套方案主要分为开发、资源、数据倾斜、shuffle几个部分。 开发和资源是所有Spark作业都需要注意和遵循的一些基本原则,是高性能Spark作业的基础;数据倾斜,主要讲解了一套完整的用来解决Spark作业数据倾斜的解决方案;shuffle,面向的是对 本文作为Spark性能优化指南的基础篇,主要讲解资源。 2. 资源 2.1 概述 在开发完Spark作业之后,就该为作业配置合适的资源了。 这个参数极为重要,如果不设置可能会直接影响你的Spark作业性能。 参数建议:Spark作业的默认task数量为500-1000个较为合适。

    2K30发布于 2019-08-07
  • 来自专栏SmartSi

    Spark 性能之开发

    如果没有对Spark作业进行合理的,Spark作业的执行速度可能会很慢,这样就完全体现不出Spark作为一种快速大数据计算引擎的优势来。因此,想要用好Spark,就必须对其进行合理的性能优化。 Spark的性能实际上是由很多部分组成的,不是调节几个参数就可以立竿见影提升作业性能的。 笔者根据之前的Spark作业开发经验以及实践积累,总结出了一套Spark作业的性能优化方案。整套方案主要分为开发、资源、数据倾斜、shuffle几个部分。 开发和资源是所有Spark作业都需要注意和遵循的一些基本原则,是高性能Spark作业的基础;数据倾斜,主要讲解了一套完整的用来解决Spark作业数据倾斜的解决方案;shuffle,面向的是对 本文作为Spark性能优化指南的基础篇,主要讲解开发。 2. 开发 2.1 概述 Spark性能优化的第一步,就是要在开发Spark作业的过程中注意和应用一些性能优化的基本原则。

    1.3K31发布于 2019-08-07
  • 来自专栏kimze

    分布式系统性能: 一篇彻底搞定JMC定位JVM性能问题

    Java性能:利用JMC分析性能 Java性能作为大型分布式系统提供高性能服务的必修课,其重要性不言而喻。 好的分析工具能起到事半功倍的效果,利用分析利器JMC、JFR,可以实现性能问题的准确定位。 Java线上进程很多面临大堆内存,无法dump堆内存快照,如何解决这样的问题,就可以通过JMC结合JFR连接到线上进程做一段时间采集,分析java进程性能问题 ---- 本文主要阐述如何利用JMC分析系统性能 JMC:Java Mission Control JFR:Java Flight Recorder JMC:Java Mission Control JMC打开性能日志后,主要包括7部分性能报告,分别是一般信息 性能开销低于1% profile.jfc 采集的事件力度更细(性能开销低于2%)JFR 采集实操:  假定 jvm pid是 17206 1.采集固定时长JFR任务--查看当前执行的 JFR 任务 jcmd

    2.1K62编辑于 2023-01-03
  • 来自专栏肉眼品世界

    9张Linux性能工具图,建议收藏!

    这里包含Linux 性能资料的工具图。它们展示了:Linux 可观察性工具、 Linux 静态性能分析工具、 Linux 基准测试工具、 Linux 工具和Linux sar。 性能观察工具: 静态性能工具 性能压测工具: 性能工具 sar perf-tools 追踪工具 BPF性能工具:

    65710编辑于 2022-01-20
  • 来自专栏有关SQL

    Hive 性能,这 9 点都掌握了?

    使用 ORCfile 存储: 官方说明,predicate-push-down, compression 等技术使得 ORCfile 在 join 两张大表的时候,更能体现性能的优势。 配置 Tez 对于 Hive 有益的地方在于有效利用 YARN 带来的比 MapReduce 1 优异的性能。 compute statistics for columns sender, topic; analyze table tweens compute statistics for columns ; 语句级别的

    1.5K20发布于 2019-12-25
  • 来自专栏运维经验分享

    tomcat 8 9 性能 优化 centos 7 linux

    个人分类: tomcat 不要单纯为了而去,应该有针对性的去发现不足,解决问题,以提高性能。 所以,的前提是做好各种监控分析,包括服务器基础资源使用、各个应用运行状况、代码质量、数据库状况、等等,根据业务的并发,服务器资源,以及存在的问题,有针对性的去优化。 ==========正文============== 性能的提升,主要从以下几个方面入手: 1,架构 负载均衡,高可用,nginx + tomcat  动静分离,容器化 等, 不具体阐述 2 ,代码 3,tomcat 相关参数优化,jvm。 (1),连接数,线程数,缓存,修改server.xml。 打开被注释的默认连接池配置 默认配置: <! 5,操作系统 硬件: CPU、内存、硬盘、带宽 。 这个属于 不差钱 性质的优化。人民币玩家 不废话。 系统:内核参数.

    2.4K70发布于 2019-03-16
  • 来自专栏存储内核技术交流

    Glusterfs性能

    指定了接收和发送套接字缓冲区大小的最大值,对于小文件小文件请求处理时候效率比较高 net.core.rmem_max=67108864 net.core.wmem_max=67108864 //为自动定义每个 net.ipv4.tcp_rmem=33554432 net.ipv4.tcp_wmem=33554432 Gluster参数 读写性能参数优化 // 打开metadata-cache,打开这个选项可以提高在 这尤其会影响小文件的性能,其中大量文件被快速连续地添加/创建。 gluster volume get dht-vol performance.readdir-ahead on // 设置performance.readdir-ahead的内存,默认是10mb,可以适当大 rep-vol cluster.shd-max-threads 64 //修复的数据快大小,默认是1(1*128k),默认是按照128K数据快修复,如果需要修复的数据很大,这个默认1太小,可以适当的

    3.5K42编辑于 2022-08-17
  • 来自专栏Jed的技术阶梯

    Spark性能01-资源

    理解作业基本原理,是我们进行资源参数的基本前提。 3. spark内存管理 (1) spark-1.5.x版本以前使用静态内存管理 ? Executor内存的大小,很多时候直接决定了Spark作业的性能,而且跟常见的JVM OOM异常,也有直接的关联。 参数建议: 每个Executor进程的内存设置4G~8G较为合适。 参数建议: Executor的CPU core数量设置为2~4个较为合适。 参数建议: Driver的内存通常来说不设置,或者设置1G左右应该就够了。 这个参数极为重要,如果不设置可能会直接影响你的Spark作业性能。 参数建议: Spark作业的默认task数量为500~1000个较为合适。

    1.5K20发布于 2018-09-13
  • 来自专栏Super 前端

    Tomcat性能

    提高Tomcat性能一般从三方面入手,JVM内存调整、禁用DNS查询、调整线程数。 一、JVM内存调整   -Xms<size> 表示JVM初始化堆的大小,-Xmx<size>表示JVM堆的最大值。 为了消除DNS查询对性能的影响我们可以关闭DNS查询,方式是修改server.xml文件中的enableLookups参数值 enableLookups="false" 三、调整线程数   另外一个可通过应用程序的连接器 (Connector)进行性能控制的的参数是创建的处理请求的线程数。 注意事项: 设置NewSize、MaxNewSize相等,"new"的大小最好不要大于"old" 的一半,原因是old区如果不够大会频繁的触发主GC,大大降低了性能。 因为对于操作系统,请求内存的系统调用会占用大量的cpu时间,所以频繁的请求、释放内存将会导致性能的严重下降。

    4.8K21发布于 2019-08-15
  • 来自专栏技术向

    nextcloud性能

    默认的nextcloud是Apache web, 我们将其换为nginx,通过搭配nextcloud-fpm和nginx两个docker完成。

    9.6K30发布于 2019-11-20
  • 来自专栏Elixir

    GC 性能

    什么是? 根据需求进行JVM规划和预 优化运行JVM运行环境(慢,卡顿) 解决JVM运行过程中出现的各种问题(OOM) ,从规划开始 ,从业务场景开始,没有业务场景的都是耍流氓 无监控(压力测试 ,能看到结果),不调 步骤: 熟悉业务场景(没有最好的垃圾回收器,只有最合适的垃圾回收器) 响应时间、停顿时间 [CMS G1 ZGC] (需要给用户作响应) 吞吐量 = 用户时间 /( 扩容或,让它达到 用压测来确定 优化环境 有一个50万PV的资料类网站(从磁盘提取文档到内存)原服务器32位,1.5G 的堆,用户反馈网站比较缓慢,因此公司决定升级,新的服务器为64位,16G 的堆内存 PS -> PN + CMS 或者 G1 系统CPU经常100%,如何

    1.7K10编辑于 2022-11-05
  • 来自专栏大数据-BigData

    Alluxio性能

    本文档介绍了各种 Alluxio 性能的技巧和配置。 常见性能问题 以下是在调整性能时用于解决常见问题的清单: 所有节点都在工作吗? 检查 Alluxio 集群是否健康。 Master Journal性能 Property Default Description alluxio.master.journal.flush.batch.time 5ms Time to worker 块读取线程池大小 alluxio.worker.network.block.reader.threads.max 属性配置用于处理块读取请求的最大线程数。 作业服务 工作服务能力 作业服务限制当前运行的作业总数以控制其资源使用。 请注意,单个 CLI 命令(例如 distributedLoad)可以触发创建多个作业,每个文件一个。 客户端 被动缓存 被动缓存会导致 Alluxio worker 缓存另一个已缓存在单独 worker 上的数据副本。

    2.3K40编辑于 2023-04-03
  • 来自专栏电光石火

    SQL 性能

    我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享! FROM  EMP E  WHERE  E.ROWID > (SELECT MIN(X.ROWID) FROM  EMP X  WHERE  X.EMP_NO = E.EMP_NO); (9性能上的差异,关键看你的from和where子句。比如说如果你的where条件中可以通过索引,那显然 select 1 from ... 的性能比 select * from ... 好。 也就是说如果某列存在空值,即使对该列建索引也不会提高性能。 任何在where子句中使用is null或is not null的语句优化器是不允许使用索引的。 仔细检查order by语句以找出非索引项或者表达式,它们会降低性能

    3.7K60发布于 2018-01-18
领券