首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏架构师成长之路

    java(10)-JVM性能监控和优化

    基于以上信息,我们可以修改应用程序或者调整GC算法(GC优化)。 jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]] (如 jstat -gcutil pid 100 10) pid指jps 假设需要每250毫秒查询一次进程2764垃圾收集状况,一共查询20次,那命令应当是 :jstat-gc 2764 250 20 或者 $ jstat -gcutil 17551 100 10 使用/usr/java/bin/jstat -gcutil 17551 100 10就可以。 qtp496432309-42" prio=10 tid=0x00002aaaba2a1800 nid=0x7580 waiting on condition [0x00000000425e9000]

    1.6K11编辑于 2022-04-14
  • Java10 大简单的性能优化

    O(N3) 以下是 Java 中最简单的 10 个性能优化:1、使用StringBuilder这应该是几乎所有 Java 代码中的默认设置。尽量避免使用+操作符。 5、使用原语和堆栈上面的例子,它使用了很多泛型,因此被迫使用包装器类型byte, short, int, 和long– 至少在泛型在 Java 10 和项目 Valhalla 中专用之前。 关注公/众/号/Java技术精选,获取更多技术6、避免递归像 Scala 这样的现代函数式编程语言鼓励使用递归,因为它们提供了将尾递归算法优化回迭代算法的方法。 我们之前在10 Subtle Best Practices when Coding Java中对此进行了博文。现在,在明显情况下尽早中止比较之后,您可能还希望在可以做出部分决定时尽早中止比较。 10、在集合中思考,而不是在单个元素最后但并非最不重要的一点是,有一件事与 Java 无关,但适用于任何语言。此外,我们将离开N.O.P.E.分支,因为此建议可能只会帮助您从 迁移到,或类似的东西。

    28010编辑于 2024-04-03
  • 来自专栏终码一生

    Java10 大简单的性能优化

    O(N3) 以下是 Java 中最简单的 10 个性能优化: 1 使用StringBuilder 这应该是几乎所有 Java 代码中的默认设置。尽量避免使用+操作符。 5 使用原语和堆栈 上面的例子,它使用了很多泛型,因此被迫使用包装器类型byte, short, int, 和long– 至少在泛型在 Java 10 和项目 Valhalla 中专用之前。 我们之前在10 Subtle Best Practices when Coding Java中对此进行了博文。现在,在明显情况下尽早中止比较之后,您可能还希望在可以做出部分决定时尽早中止比较。 10 在集合中思考,而不是在单个元素 最后但并非最不重要的一点是,有一件事与 Java 无关,但适用于任何语言。此外,我们将离开N.O.P.E.分支,因为此建议可能只会帮助您从 迁移到,或类似的东西。 原文地址:blog.jooq.org/top-10-easy-performance-optimisations-in-java/

    51510编辑于 2022-04-15
  • 来自专栏Java学习网

    10种简单的Java性能优化学习

    10种简单的Java性能优化学习 你是否正打算优化hashCode()方法?是否想要绕开正则表达式?Lukas Eder介绍了很多简单方便的性能优化小贴士以及扩展程序性能的技巧。 这里有10条改善Java性能的小建议: 1、使用StringBuilder StingBuilder 应该是在我们的Java代码中默认使用的,应该避免使用 + 操作符。 但至少泛型在Java 10或者Valhalla项目中被专门化之前,不应该成为代码的限制。 我在以前的博客中已经对这一点进行了说明,请参考10个精妙的Java编码最佳实践。 在我们对以上几种情况的比较结束后,应该能得出部分结论。 10、考虑使用set而并非单个元素 最后,还有一种情况可以适用于所有语言而并非仅仅同Java有关。除此以外,我们以前研究的N.O.P.E.

    1.5K60发布于 2018-02-26
  • 来自专栏FunTester

    Java 序列化10倍性能优化对比测试

    今天分享 Java 对象序列化的不同方法,并对不同序列化方式的性能进行基准测试。 关于持久队列来讲,必须将 Java 堆内存的对象转换成文件中的二进制数据,对象序列化的性能将显著影响整体的性能表现。 相当多的高性能框架都会在序列化和反序列化上下功夫优化性能。本文使用了开源框架 Chronicle Queue 提供的能力进行序列化和反序列化对比测试。 bidPrice1, bidPrice2, bidPrice3; double askPrice0, askPrice1, askPrice2, askPrice3; } 默认序列化 Java 的 Serializable 标记接口提供了一种将 Java 对象序列化为二进制格式的默认方法,通常通过ObjectOutputStream 和ObjectInputStream 类。 Java 标准中未指定字段的布局方式,该标准允许单独的 JVM 实现优化。 许多方案会按字段大小降序对原始类字段进行排序,并依次排列它们。这样做的好处是可以在甚至原始类型边界上执行读取和写入操作。

    1.2K10编辑于 2022-12-09
  • 来自专栏Python与算法之美

    10,模型的优化

    搜索超参数空间以优化超参数需要明确以下方面: 估计器 超参数空间 交叉验证方案 打分函数 搜寻或采样方法(网格搜索法或随机搜索法) 优化模型的常见方法包括 网格搜索法,随机搜索法,模型特定交叉验证, 信息准则优化。 使用网格搜索法或随机搜索法可以对Pipeline进行参数优化,也可以指定多个评估指标。 ? ? 三, 模型特定交叉验证 一些特定的模型,sklearn构建了一些内部含有交叉验证优化机制的估计器。 它们主要是在linear_model模块。 linear_model.LassoLarsIC 采用了信息准则进行优化

    77321发布于 2020-07-17
  • 来自专栏Java知识点

    10章_索引优化与查询优化

    拓展:Alibaba《Java 开发手册》 索引文件具有 B-Tree 的最左前缀匹配特性,如果左边的值未确定,那么无法使用此索引。 LIKE 'ab%'; 未使用到索引 EXPLAIN SELECT SQL_NO_CACHE * FROM student WHERE name LIKE '%ab%'; 拓展:Alibaba《Java 关联查询优化 # 3.1 数据准备 # 分类 CREATE TABLE IF NOT EXISTS `type` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT ` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `card` INT(10) UNSIGNED NOT NULL, PRIMARY KEY (`bookid`) # 9.2 前缀索引对覆盖索引的影响 结论: 使用前缀索引就用不上覆盖索引对查询性能的优化了,这也是你在选择是否使用前缀索引时需要考虑的一个因素。 # 10.

    82730编辑于 2023-08-02
  • 来自专栏EffectiveCoding

    Java Concurrent ReentrantLock(Java 10

    使用 1、在使用上与synchronized差异的是 实现lock接口的reentrant需要手动的去lock和release,因为synchronized是JVM也就是Java语法层面实现的,而Lock condition = 1; synchronized (lock) { lock.notify(); } } } 然后是使用Lock import java.util.concurrent.locks.Condition ; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; class Test2 public class ReentrantLock implements Lock, java.io.Serializable { private static final long serialVersionUID

    48920发布于 2019-07-31
  • 来自专栏叽叽西

    10 Java 异常

    异常的层次 Java 的异常类是处理运行时的特殊类,每一种异常对应一种特定的运行错误.所有Java异常类都是系统类库中 Exception 类的子类。 非受检异常 在 Java 环境中有些失败是无法预料的,这些失败可能是由运行时条件或滥用库代码导致的。 释放资源 有时在 try-catch 语句中会占用一些非 Java 资源,如:打开文件、网络连接、打开数据库连接和使用数据结果集等,这些资源并非 Java 资源,不能通过 JVM 的垃圾收集器回收,需要程序员释放 在Java 7之后提供自动资源管理(Automatic Resource Management)技术,可以替代 finally 代码块,优化代码结构,提高程序可读性。 在 Java 9 之前,资源必须声明和初始化在 try 语句块内,Java 9去除了这个限制,资源可以在try语句外被声明和初始化,但必须是 final 的或者是事实上 final 的(即虽然没有声明为

    1.2K30编辑于 2022-05-17
  • 来自专栏码农小胖哥的码农生涯

    Java 8 + 10 = Java 18

    明天Java 18将正式发布, 虽然它不是长期支持 (LTS) 版本,但它却实现了九个 JEP(在Java 18[1]列出)。有哪些特性值得关注呢? JEP 413 支持在Java API文档中使用代码片段。以前在Java代码的注释中如果要写一些样例非常麻烦,甚至还要进行字符转义。 Panama 正在简化将 Java 程序连接到非 Java 组件的过程。这一特殊功能在其第二次孵化迭代中引入了一个 API,Java 程序通过该 API 调用Native类库并处理Native数据。 已经相差了10个版本了。下一个是LTS是 2023 年 9 月的 Java 21。 /en/java/javase/17/docs/api/java.base/java/net/InetAddress.html [3] JEP 419: https://openjdk.java.net

    48730编辑于 2022-04-06
  • 来自专栏怀英的自我修炼

    Java漫谈10

    原来的计划是这次谈谈Java中String的另一个特征——final,不过因为还在整理思路,就放在下一次聊,这次我想聊一聊Java被斯坦福除名之后,我知道这个消息的感受。 之所以聊这个话题,是因为上个月的时候,一个哥么给我发了一篇文章,大意是说斯坦福大学用JavaScript取代Java做计算机入门,并据此认为Java已经开始走下坡路了。 这三篇都是谷歌搜索关键词“斯坦福 java 除名”排名前三的。 除了知乎的在讨论之外,其他两篇看下来就觉得是标题党,搜狐的大概意思是,确实有这么回事,不过只是因为教授觉得java对于初学者来说比javascript难学,IT86的博文是从分布广度,使用年限来说明Java 或许那个时候我会选一门与Java语法相近的语言去学习,搞不好也可能就回家靠炒蛋炒饭谋生了,不过这种事情说不准。

    799120发布于 2018-03-12
  • 来自专栏EffectiveCoding

    Java Concurrent ReentrantReadWriteLock(Java 10

    public class ReentrantReadWriteLock implements ReadWriteLock, java.io.Serializable { private

    62330发布于 2019-07-31
  • 来自专栏cjz的专栏

    Windows10 关闭传递优化

    传递优化是什么? 你一定有一个疑问,那就是没有网络的时候,也会提示更新系统,因为传递优化就是在局域网里,其它的wind版本比你的高,就回自动去拉去下载,最后让你更新 关闭传递优化步骤 按 wini+i调出设置 进入更新与安全 或者直接搜索: 传递优化

    1.3K30编辑于 2022-12-21
  • 来自专栏测试开发干货

    【简历优化平台开发教程-10

    目前,我们已经完成 4条优化意向的设计和前端部分,本节课将进行如下: 技术路线 的选择: 技术栈,目前我计划是分为python系和java系,这二者实际上,在工作中95%的工作都是相同的,尤其是简历上 后端算法中,会按照不同工龄等其他优化设置,提供默认的二者的关键字技术,来检查待优化简历中是否足够。 而第三个选项“无”,则代表了一众暂时还未涉及到代码的简历,比如纯手工测试,性能,安全测试,管理等。 所以选择了无,并不代表简历要求就降低了,相反,针对于其他非代码方面的要求和优化力度会加大! #12288; <label class="radio-inline"> <input type="radio" name="jslx" value="<em>java</em> "> java </label>   <label class="radio-inline"> <input

    28240编辑于 2023-08-14
  • 来自专栏call_me_R

    10个JS优化小技巧

    .markdown-body h4,.markdown-body h5,.markdown-body h6{line-height:1.5;margin-top:35px;margin-bottom:10px #f8f8f8}.markdown-body blockquote:after{display:block;content:""}.markdown-body blockquote>p{margin:10px let test: boolean; if (x > 100) { test = true; } else { test = false; } // 简洁 let test = x > 10 冗余 let test = ''; for(let i = 0; i < 5; i ++) { test += 'test '; } // 简洁 'test '.repeat(5); 10

    68630发布于 2021-02-05
  • 来自专栏小工匠聊架构

    Oracle优化10-SQL_TRACE

    ---- Oracle优化10-SQL_TRACE解读 Oracle优化11-10046事件 ---- 概述 当我们想了解一条SQL或者是PL/SQL包的运行情况时,特别是当他们的性能非常差时,比如有的时候看起来就好好像卡在什么地方一样 Misses in library cache during parse: 1–shared pool中没有命中,说明这是一次硬解析,软解析这里为0 Optimizer mode: ALL_ROWS–当前的优化器模式 , mis=1:cursor miss in cache 硬分析的次数, r=0:rows处理的行数, dep=0:depth递归SQL的深度, og=1:optimizer goal优化器模式

    1.2K30发布于 2021-08-16
  • 来自专栏ytkah

    discuz优化10个小技巧

    1、性能优化   首先想到的是内置的性能优化,在后台的 全局 - 性能优化   discuz服务器优化:   是否优化更新主题浏览量:是   查看数开启防刷新:是。 延迟更新附件的浏览量,可明显降低访问量很大的站点的服务器负担,建议开启本功能   最大在线人数:范围 10~65535,建议设置为平均在线人数的 10 倍左右   在线保持时间(分钟):根据访问情况设置合理的数值 discuz内存优化   启用内存优化功能将会大幅度提升程序性能和服务器的负载能力,内存优化功能需要服务器系统以及PHP扩展模块支持   目前支持的内存优化接口有 Memcache、eAccelerator 7、discuz开启Gzip   假设我们访问的一个页面有100kb,如果已经开启Gzip了,服务器会把这个页面压缩成zip文件,可能只有10kb或更小,就会节省带宽和下载时间。 分表功能可以将帖子分在不同的数据表中,适合帖子数很多并且运行效率受到影响的站点使用 9、discuz插件筛选   在没有必要的情况尽量少装插件,有些插件调用很多sql反而降低效率 10、discuz模板优化

    6.9K21发布于 2018-12-28
  • 来自专栏Vue中文社区

    10个JavaScript 优化小技巧

    let test: boolean; if (x > 100) { test = true; } else { test = false; } // 简洁 let test = x > 10 冗余 let test = ''; for(let i = 0; i < 5; i ++) { test += 'test '; } // 简洁 'test '.repeat(5); 10

    36010发布于 2021-02-26
  • 来自专栏glm的全栈学习之路

    2021-10-10-Acwing1087(单调队列优化dp)

    content/1089/ 思路见下图: 代码: #include<iostream> using namespace std; #define int long long const int N=1e5+10

    31210发布于 2021-10-13
  • 来自专栏java一日一条

    Java优化

    Java对象头 锁存在Java对象头里。如果对象是数组类型,则虚拟机用3个Word(字宽)存储对象头,如果对象是非数组类型,则用2字宽存储对象头。在32位虚拟机中,一字宽等于四字节,即32bit。 Java SE1.6为了减少获得锁和释放锁所带来的性能消耗,引入了“偏向锁”和“轻量级锁”,所以在Java SE1.6里锁一共有四种状态,无锁状态,偏向锁状态,轻量级锁状态和重量级锁状态,它会随着竞争情况逐渐升级 另外,JVM对那种会有多线程加锁,但不存在锁竞争的情况也做了优化,听起来比较拗口,但在现实应用中确实是可能出现这种情况,因为线程之前除了互斥之外也可能发生同步关系,被同步的两个线程(一前一后)对共享对象锁的竞争很可能是没有冲突的 所以自旋的次数一般控制在一个范围内,例如10,100等,在超出这个范围后,自旋锁会升级为阻塞锁。 对自旋锁周期的选择上,HotSpot认为最佳时间应是一个线程上下文切换的时间,但目前并没有做到。 经过调查,目前只是通过汇编暂停了几个CPU周期,除了自旋周期选择,HotSpot还进行许多其他的自旋优化策略,具体如下: 如果平均负载小于CPUs则一直自旋 如果有超过(CPUs/2)个线程正在自旋,则后来线程直接阻塞

    1.1K10发布于 2018-09-14
领券