`
文章列表
能整理出上面一些东西,因为站在巨人的肩上。鄙视那些吹牛逼的人,技术很多时候就是再走别人的路,所以别嘚瑟,没什么暖用,下面是一些参考资料,供大家学习,大家有更好的,可以继续完善:) · Java 理论与实践: 垃圾收集简史 · Java SE 6 HotSpot[tm] Virtual Machine Garbage Collection Tuning · Improving Java Application Performance and Scalability by Reducing Garbage Collection Times andSizing Memory Usin ...
垃圾回收的悖论 所谓“成也萧何败萧何”。Java的垃圾回收确实带来了很多好处,为开发带来了便利。但是在一些高性能、高并发的情况下,垃圾回收确成为了制约Java应用的瓶颈。目前JDK的垃圾回收算法,始终无法解决垃圾回 ...
JVM调优工具 Jconsole,jProfile,VisualVM Jconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里 JProfiler:商业软件,需要付费。功能强大。详细说明参考这里 VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。 如何调优 观察内存释放情况、集合类检查、对象树 上面这些调优工具都提供了强大的功能,但是总的来说一般分为以下几类功能 堆信息查看 可查看堆空间大小分配(年轻代、年老代、持久代分配) 提供即时的垃圾回收功能 垃圾监控(长时 ...
垃圾回收的瓶颈 传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限。但是他无法解决的一个问题,就是Full GC所带来的应用暂停。在一些对实时性要求很高的应 ...
经常看见运维很有比格的在啪啪啪的敲着命令行程序,让很多妹子发出一声尖叫声,于是我也接触一下vim,提高比格,一下是个人学习时所留笔记 一、概述 VI:指Visual Interface单词的简写,是一个可视化接口,类似windows中的记 ...
一、Shell概述: 1、Shell是什么: Shell 是一个命令行解析器,它为用户提供了一个linux内核发送请求以便运行程序的界面系统初级程序,用户可以用shell来启动,挂起,停止甚至编写一些程序。 Shell 还是一个功能强大的编程语言,易编写,易调试,灵活性较强。 Shell 是解释执行的脚本语言,在shell中可以直接调用linux系统命令。 2、Shell的分类: Bourne shell:从1979年起unix就开始使用bourne shell。Bourne shell的主文件名为sh Bourne shell语法类型:sh、ksh、Ba ...
Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据 一、客户端(jsp或者html): <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Typ ...
首先,说说什么事务(Transaction)。 事务,就是一组操作数据库的动作集合。事务是现代数据库理论中的核心概念之一。如果一组处理步骤或者全部发生或者一步也不执行,我们称该组处理步骤为一个事务。当所有的步骤像一个操作一样被完整地执行,我们称该事务被提交。由于其中的一部分或多步执行失败,导致没有步骤被提交,则事务必须回滚到最初的系统状态。 七个事务传播属性:  PROPAGATION_REQUIRED -- 支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。  PROPAGATION_SUPPORTS -- 支持当前事务,如果当前没有事务,就以非事务方 ...
一、命令提示符: root:当前登录用户 localhost:主机名 ~:当前所在目录 #:超级用户的提示符 $:普通用户的提示符 二、命令格式: 命令 [选项] [参数] 三、常用目录的作用: /根目录 /bin 命令保存目录 /boot 启动目录 /dev 设备文件保存目录 /etc 配置文件保存目录 /home 普通用户的家目录 /lib 系统库保存目录 /mnt 系统挂载目录 /media 挂载目录 /root 超级用户的家目录 /tmp 临时目录 /sbin 命令保存目录 /proc 直接写入内存的 ...
你可以在 JavaScript 中使用反斜杠来向文本字符串添加特殊字符。 插入特殊字符 反斜杠用来在文本字符串中插入省略号、换行符、引号和其他特殊字符。 请看下面的 JavaScript 代码: var txt="We are the so-called "Vikings" from the north." document.write(txt) 在 JavaScript 中,字符串使用单引号或者双引号来起始或者结束。这意味着上面的字符串将被截为:We are the so-called。 要解决这个问题,就必须把在 " ...
常见配置汇总 堆设置: -Xms:初始堆大小 -Xmx:最大堆大小 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n:年轻 ...
以下配置主要针对分代垃圾回收算法而言。 堆大小设置 年轻代的设置很关键 JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统 ...
ReentrantLock是一个可重入的互斥锁,重入锁是一种递归无阻塞的同步机制。ReentrantLock由最近成功获取锁,还没有释放的线程所拥有,当锁被另一个线程拥有时,调用lock的线程可以成功获取锁。如果锁已经被当前线程拥有,当前线程会立即返回。 重入锁的构造方法提供一个可选的公平参数: 公平情况下,操作会排一个队按顺序执行,来保证执行顺序。 不公平情况下,是无序状态允许插队,jvm会自动计算如何处理更快速来调度插队。( 1、防止重复执行(忽略重复触发)
分代垃圾回收流程示意 选择合适的垃圾收集算法 串行收集器 用单线程处理所有垃圾回收工作,因为无需多线程交互,所以
为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。 在Java程序运行的过程中,会产生大量的对象,其中 ...
Global site tag (gtag.js) - Google Analytics