网站建设中关于eclipse启动参数的优化

在网站建设中,经常用到eclipse,每次启动都是很费时间的,那么如何对它进行优化呢?

版本:Eclipse3.6

参数配置文件:eclipse.ini

结果:修改后启动速度直观上有比较明显的加快

注意:重点是后面红字部分的设置

首先建立评估体系,比如,我们需要建立一个网站http://www.hualai.net.cn,首先将workspace里所有的项目close掉,关闭eclipse。优化的用例就是启动eclipse,open一个项目,eclipse会自动build这个项目,保证没有感觉到明显的卡,也就是没有full GC。 

开始: 

eclipse.ini里加入打印gc情况的参数: 

 

-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-verbose:gc
-Xloggc:gc.log 

这样eclipse在运行过程中会记录gc日志,显示详细的gc情况,并打印在gc.log中,通过分析这个日志寻找eclipse的性能瓶颈和优化方式。 

我最初的参数只是在原版基础上调了堆大小 

 

-Xms512m
-Xmx512m 

将堆初始化和最大值设为一样,消除堆大小根据当前堆使用情况而变化带来的影响。 

启动eclipse,发现gc.log里打出了很多full gc的日志 

4.226: [Full GC 4.226: [Tenured: 18470K->19304K(30544K), 0.1159544 secs] 25154K->19304K(44368K), [Perm : 24574K->24554K(24576K)], 0.1160431 secs] [Times: user=0.13 sys=0.00, real=0.13 secs] 

在启动的6秒多时间里共出现了8次full gc,所以启动慢,觉得启动时候挺卡的。从日志里可以看出来 FullGC主要是在回收tenured区和Perm区,其中Perm一直都是快满的状态,Perm : 24574K->24554K(24576K),Perm大小在不断调整,所以需要固定Perm区的大小,保证够用,eclipse.ini里加入 

-XX:PermSize=64m
-XX:MaxPermSize=64m 

再启动:发现没有full gc了只有数量比较多的minor gc,挑启动开始到启动完成的第一条和最后一条日志 

0.209: [GC 0.209: [DefNew: 4416K->511K(4928K), 0.0034707 secs] 4416K->614K(15872K), 0.0035239 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
….
6.383: [GC 6.383: [DefNew: 18880K->1985K(21184K), 0.0055311 secs] 46992K->30098K(68040K), 0.0055694 secs] 

这6秒中GC日志打了69次, 而内存回收率还是蛮高的 young区18880-1985=16895 jvm 46992-30098=16894 都快接近100%了,可以看出young区是由小到大在不断调整大小,所以不断GC,因此设一个初始值吧,据说设置heap的1/4比较好,那就是128M,所以eclipse.ini加入 

-Xmn128m 

再重启,发现GC日志就四条了,eclipse启动自然快了  

1.292: [GC 1.292: [DefNew: 104960K->10984K(118016K), 0.0334165 secs] 104960K->10984K(511232K), 0.0334603 secs] [Times: user=0.03 sys=0.00, real=0.03 secs]
2.182: [GC 2.182: [DefNew: 115944K->1852K(118016K), 0.0221714 secs] 115944K->11466K(511232K), 0.0222142 secs] [Times: user=0.00 sys=0.02, real=0.02 secs]
3.987: [GC 3.987: [DefNew: 106779K->12531K(118016K), 0.0378228 secs] 116393K->22145K(511232K), 0.0378692 secs] [Times: user=0.03 sys=0.00, real=0.03 secs]
5.377: [GC 5.377: [DefNew: 117491K->9403K(118016K), 0.0513728 secs] 127105K->31364K(511232K), 0.0514133 secs] 

但是,启动后open我的多个项目,这些项目互相依赖,eclipse自动build,感觉有点小卡,发现日志里多了4次full GC,所以就卡了… 

67.320: [Full GC (System) 67.320: [Tenured: 88847K->68809K(393216K), 0.2121213 secs] 117385K->68809K(511232K), [Perm : 41915K->41915K(65536K)], 0.2121747 secs] [Times: user=0.20 sys=0.00, real=0.20 secs]
103.759: [Full GC (System) 103.759: [Tenured: 81882K->66784K(393216K), 0.3287387 secs] 185350K->66784K(511232K), [Perm : 53464K->53414K(65536K)], 0.3287897 secs] [Times: user=0.33 sys=0.00, real=0.33 secs] 

这个时候Tenured区和Perm都还没到很接近最大值,但是为什么还有full GC呢,开始以为是JVM悲观认为Tenured区剩余空间不足以应对下一次minor GC 所以进行了full GC调整Tenured空间,索性直接增加了堆最大值到-Xmx728m(工作电脑的内存是3.5G),但重启后full gc还是有4次,而且有几次minor GC用的时间超过了0.1秒,这是因为增加了堆大小,导致GC用时也增加了,不能接受。所以还是改回-Xmx512m。 

再仔细观察日志,发现Full GC (System) 字样,这个意思是eclipse里调用了System.gc()手动触发了系统GC,好吧,哥已经给你分配足够空间了,你就省省吧,在eclipse.ini里加入: 

-XX:+DisableExplicitGC 

这样就差不多了,整个过程没有出现full gc,再编码2个小时,中间只出现了一次full gc,在open build某50W行+的代码的时候,eclipse还是卡了… 

最后又稍微调了一下各代的大小,得到目前的参数:  

-Xms512m
-Xmx512m
-XX:PermSize=96m
-XX:MaxPermSize=96m
-Xmn168m
-XX:+DisableExplicitGC 

另外没有去调GC策略,主要是觉得eclipse是客户端程序,默认的client单线程的GC策略应该是比较适合的,以后有时间再试试看吧。

 

Eclipse性能优化精讲:从基础到提升 Eclipse作为一款功能强大的集成开发环境(IDE),对于软件开发者而言,其性能的优劣直接影响着工作效率。性能优化是任何长期运行项目所必须面对的问题。在进入具体的优化技巧之前,我们需要理解性能优化的必要性和基本理念。 阅读详情

相关推荐

算法策略 | MACD跨周期短线交易策略开发(股指+商品双版)

量化策略开发,高质量社群,交易思路分享等相关内容

松鼠宽客的博客 2538

实战:Eclipse运行速度调优

很多Java开发人员都有一种错觉,认为系统调优的工作都是针对服务端应用的,规模越大的系统,就需要越专业的调优运维团队参与。这个观点不能说不对,只是有点狭隘了。上一节中笔者所列举的案例确实大多是服务端运维、调优的例子,但不只服务端需要调优,其他应用类型也是需要的,作为一个普通的Java开发人员,学习到的各种虚拟机的原理和最佳实践方法距离我们并不遥远,开发者身边就有很多场景可以使用上这些知识。下面就通过一个普通程序员日常工作中可以随时接触到的开发工具开始这次实战[1]。 1、调优前的程序运行状态 笔者使用Ecl

通往神秘的道路的专栏 2560

LTE/NR中的相应cause场景【原创】

目录1.背景2.LTE EMM cause2.0 写在最前2.1 特殊处理的cause第一梯队第二梯队2.2 非特殊处理的cause3.NR cause 实网分析终端被拒等问题,经常遇到各类cause,其会对应不同的终端限制行为。查找已有资料后理解没有很深,自行总结本文用于梳理现象,如有错误敬请指正,转载请注明出处。 本文用于记录协议Ts 24.301及Ts 24.501中的cause及其对应行为。 已总结的cause值: 24.301中的cause分

2301_79567300的博客 3488

eclipse运行速度优化(解决狂读盘、发布慢、CPU100%等问题)

我的ECLIPSE运行时速度奇慢,具体表现为: 1、只要ECLIPSE启动后,硬盘灯就狂闪,不停的读盘; 2、发布TOMCAT经常在0%; 3、偶尔CPU占满; 网上讲优化的文章无数,但是总是有用的却很少,大部分是转载甚至是抄袭的。在借鉴各个文章的做法并不断尝试后,我的问题终于解决了。 1、启动参数的优化; 我的启动参数为:-Xms976m-Xmx976m-XX:PermSize=

低音钢琴的专栏 3万+

【张量分解(二)】CP分解

一、CP分解 1.1 定义 CP分解就是将一个张量分解成多个单秩张量的和。例如,给定一个三阶张量X∈RI×J×K\mathcal{X}\in\mathbb{R}^{I\times J\times K}X∈RI×J×K,则CP分解可以写为 X≈∑r=1Rar∘br∘cr\mathcal{X}\approx\sum_{r=1}^{R}\textbf{a}_r\circ\textbf{b}_r\circ...

bqw的博客 2万+

scannet数据集下载文件

scannet数据集下载文件 由于大家会申请scannet数据集,审批比较慢,我将下载的文件里面的内容贴出来,大家可以复制放进py文件中,运行就可以下载 ps:别再私信要数据集了,这个自己下载,如果光三维数据的话,还是很快的,当然如果路由器翻了墙的话,下载会更快。 #!/usr/bin/env python # Downloads ScanNet public data release # Run with ./download-scannet.py (or python download-scannet.

weixin_40766438的博客 9228

eclipse工具性能优化方法

文章中涉及到的知识点我都已经整理成了资料,录制了视频供大家下载学习,诚意满满,希望可以帮助在这个行业发展的朋友,在论坛博客等地方少花些时间找资料,把有限的时间,真正花在学习上,所以我把这些资料,分享出来。相信对于已经工作和遇到技术瓶颈的朋友们,在这份资料中一定都有你需要的内容。《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!个行业发展的朋友,在论坛博客等地方少花些时间找资料,把有限的时间,真正花在学习上,所以我把这些资料,分享出来。

2401_83817603的博客 752

反射机制——通过反射调用service中方法

需求:现在有一群service接口,有同一个方法名称,内部逻辑除了调用不同的调用自身的方法外其他基本都一致,那现在就需要一个独立的方法来勾勒出这个方法 1.SpringContextUtil package com.XXX.report.util; import org.apache.log4j.Logger; import org.springframework.beans.BeansE...

东天里的冬天 8520

给Eclipse提速的7个技巧

大约一个月前,我发表了一篇博客,其中介绍了对Eclipse的爱与恨。 有些人问我如何给Eclipse提速,这篇文章就来讨论这个问题。顺带提一下,这篇文章不是比较IDE,所以不要说你讨厌某个IDE而选择另外一个。这篇文章只是关注如何让Eclipse运行得更快。每个技巧都针对Windows、Linux和MacOS用户详细说明。在使用所有优化技巧之后,Eclipse应该能在10秒内启动,并且比以前运

迎着清晨的阳光,踏上梦想的旅程 1405

以太网物理层协议整理(2)-万兆以太网

在万兆以太网标准化过程中,IEEE和10GEA(万兆以太网联盟)是两个最重要的组织。 万兆以太网标准和规范都比较繁多,在标准方面,首先有2002年的IEEE 802.3ae,后来也不断有新的万兆以太网规范推出,如2006年的IEEE 802.3an标准(10GBase-T)就推出了基于双绞铜线的万兆以太网规范,同样的IEEE 802.3aq标准推出了基于光纤的10GBase-LRM;2007年的

NowOrNever 3万+

【定位模块项目实战】正态分布变换(NDT)定位及建图(依赖高精度点云地图和三维激光雷达的定位方案)

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、正态分布变换(NDT)定位解决的主要问题二、正态分布变换(NDT)定位的核心思想三、NDT算法流程1.多元正态分布概念2.网格化并计算正态分布参数3.变换参数和最大似然四、使用C++实现NDT配准参考资料 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对依赖高精度地图和激光雷达的定位技术–正态分布变换(NDT)定位做个简单的介绍,具体

qq_35635374的博客 4411

eclipse速度优化

跟杨春娟学SpringBoot笔记:eclipse速度优化 完成:第一遍 1.eclipse如何关闭Maven自动依赖更新来实现速度优化? Eclipse自带的Maven经常会自动下载依赖jar包,十分影响开发速度 所以可以关掉自动更新 方法是: window——》perferences——》Maven 选中Do not automatically update dependencies from remote repositories打上勾 其他的都不要打 2.常见问题the user operation

ADbyCool的博客 643

手把手教你从入门到精通C# Modbus通信

本文是《Modbus通信从入门到精通》的导读,本专栏将会详细介绍ModusRTU 、ModbusASCII、ModbusTCP这三种协议的C#实现,由一个高级工程师多年实战经验总结而成,绝对干货!

qq_34059233的博客 1万+

STM32H747实战MobileNetV1量化部署:从模型优化到嵌入式AI高效推理

模型量化是嵌入式AI部署中的一项核心技术,它通过将高精度浮点模型转换为低精度整数表示,从根本上解决了资源受限设备上的内存、带宽和算力瓶颈。其原理在于利用整数运算的高效性和数据压缩特性,在可接受的精度损失范围内,大幅降低模型体积和计算复杂度。这项技术的核心价值在于使复杂的神经网络模型得以在微控制器等边缘设备上实时运行,为物联网、智能穿戴和工业视觉等场景提供了低功耗、低延迟的AI解决方案。本文以轻量级神经网络MobileNetV1和STM32H747微控制器为例,深入剖析训练后量化(PTQ)的完整流程,涵盖模型

weixin_34221112的博客 424

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

MagicX AI智能输入补全:语义理解与集成部署实践指南

智能输入补全技术基于自然语言处理和深度学习模型,通过理解上下文语义实现精准预测。其核心原理是利用Transformer等先进架构分析输入模式,相比传统关键词匹配具有更高的准确性和适应性。在工程实践中,这种技术能显著提升开发效率和用户体验,特别适用于代码编写、文档创作等高频输入场景。通过SDK集成和API调用,开发者可以快速部署智能补全功能,MagicX作为典型代表,展示了如何通过语义理解实现转化率的大幅提升。本文以MagicX为例,详细解析智能补全的集成部署、性能优化和实际应用方案。

leonard61306500的专栏 377

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Eclipse设置、调优、使用

[b][color=red][size=medium]eclipse调优[/size][/color][/b] 一般在不对eclipse进行相关设置的时候,使用eclipse总是会觉得启动好慢,用起来好卡,其实只要对eclipse的相关参数进行一些配置,就会有很大的改善。 [b]加快启动速度[/b] 1.在eclipse启动的时候,它总是会搜索让其运行的jre,往往就是这个搜索过程让ecli...

iteye_20037的博客 2342

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

7个小技巧,解决eclipse卡顿问题

eclipse作为开发工具,每天都要使用,你肯定遇到过eclipse卡到想哭的时刻,严重影响开发效率啊!如果内存条不要钱,那就加内存吧!一个不够加两个!当然这都是玩笑话,如果不花钱也能解决问题,希望下面几个小tips会有帮助! 1、去掉自动构建项目,改为手动 在eclipse的菜单栏,选择Project,看到下方的Build Automatically,默认是勾选的,取消勾选就行。然后每次启动...

weixin_34233421的博客 2020

优化JVM参数提高eclipse运行速度

<br />性能优化从身边做起。<br /><br />首先建立评估体系,将workspace里所有的项目close掉,关闭eclipse。优化的用例就是启动eclipse,open一个项目,eclipse会自动build这个项目,保证没有感觉到明显的卡,也就是没有full GC。 <br /><br />开始: <br /><br />eclipse.ini里加入打印gc情况的参数: <br />-XX:+PrintGCTimeStamps-XX:+PrintGCDetails-verbose:gc-Xl

303

eclipse运行慢如何优化? - Eclipse

1. 调整运行内存 右键桌面eclipse图标 -> 打开文件所在位置, 编辑eclipse.ini文件. 2. 关闭代码校验 打开eclipse软件, 菜单栏window -> Preferences 在搜索框输入validation, 如下图进行操作 经过上面的配置, 运行大项目以及平时写代码都会流畅许多~ ...

Clearlight's Blog 722

Eclipse运行性能调优

最近,Eclipse(Eclipse-JEE3.5)运行十分缓慢(可能插件安装过多),因此,得到了个机会调优一下,以便提高工作效率 下图是未经任何调整eclipse的gc情况(使用jvisualvm命令,安装visual gc插件) 从图中可以看出,仅启动过程就有38次y

星星的技术专栏 1万+

解决Eclipse中代码莫名不能执行或出错,及提高Eclipse运行速度的总结

文章目录0. 背景1. 更新Maven的设置2. 取消Validation3. 取消自动编译4. 卸载不需要的插件5. 取消启动时激活所有插件6. 取消自动更新7. 取消单词拼写的检查8. 修改占用内存 0. 背景使用Java进行开发的小伙伴们,很多都需要使用Eclipse,相信很多人遇到过这种情况:你刚加入一个新项目,...

weixin_35719180的博客 2097
上一篇: 设计Web应用程序时要注意可伸缩性
下一篇: 计算机端口详细介绍(整理版)
SleepInDelphi
博客等级 码龄19年 32粉丝 388原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值