- 浏览: 289279 次
- 性别:
- 来自: 天津
最新评论
-
狼子六:
已经开始用了
Java 枚举7常见种用法 -
相约的旋律:
方法一下面的"public static fianl ...
Java 枚举7常见种用法 -
kiddy2012:
...
[转载]程序员装B指南 -
fancy105:
写得很好,简单明了双全面!
Java 枚举7常见种用法 -
he_wen:
请问一下 G1算法是否在线上使用了?
Garbage First(G1) 日志分析工具
文章列表
获取源码
从openjdk代码仓库获取(比较慢)
安装mercurial
Mercurial是一个版本管理工具。
sudo apt-get install mercurial
将以下内容添加到$HOME/.hgrc文件中,如果没有则自己创建一个:
[extensions]
forest=/home/lichengwu/hgforest-crew/forest.py
fetch=
下载jdk7源码
hg fclone http://hg.openjdk.java.net/jdk7/jdk7
直接下载源码包[推荐] ...
国内的源东西不是很全,推荐下面的源。
#####################FFICIAL UBUNTU REPOS ###################
#############################################################
###### Ubuntu Main Repos
deb http://cn.archive.ubuntu.com/ubuntu/ precise main restricted universe
deb-src http://cn.archive.ubuntu.com/ubuntu/ ...
用法:
# jinfo -h
Usage:
jinfo [option] <pid>
(to connect to running process)
jinfo [option] <executable <core>
(to connect to a core file)
jinfo [option] [server_id@]<remote server IP or hostname>
(to connect to remote debug server)
...
Create a /package directory:
mkdir -p /package
chmod 1755 /package
cd /package
Download daemontools-0.76.tar.gz into /package.Unpack the daemontools package:
gunzip daemontools-0.76.tar
tar -xpf daemontools-0.76.tar
rm -f daemontools-0.76.tar
...
需求:
有一些图片,doc文件,公司内网用户需要经常访问,每次每个人都从服务器上下载,非常耗时。
一些文件可以根据规则打成zip包下载。
需要在内网架设缓存服务,加快公司内网访问速度。
文件资源敏感,不能随便访问,每次访问都要有权限验证和日志记录(即使访问内网)。
架构:
采用varnish做缓存,varnish对用户透明。
采用nginx+Secure Link做保护内网url安全访问(验证,超时)。
具体流程:
说明:
对于单个文件(图片,doc),永久缓存。
对于打包下载文件,采用版本管理。版本=打包文件中添加时间最大的时间戳。 ...
有url
http://192.168.0.1:9988/app/file_view?id=df0de9d8-8a0b-11e1-9ddb-0026b93f2307
&token=TASIpYr6mj2-h78JEQ5ymg&expire=1334834398
CMS缺点:http://softbeta.iteye.com/blog/1315103
参数根据具体应用设置,不是有参数就好。
1.关于碎片问题:
CMS采用Mark-Sweep算法进行垃圾会后,不会对堆空间进行整理和压缩,每次回收后不可避免会有一些碎片产生。-XX:+UseCMSCompactAtFullCollection
default true 对老年代进行压缩,可能影响性能,但是可以消除碎片。-XX:CMSFullGCsBeforeCompaction
=n CMS进行n次full gc后进行一次压缩。如果n=0,每次ful ...
英文不好,所以就不翻译了:
b Blocking compiler (always set for client)
* Generating a native wrapper
% On stack replacement (where the compiled code is running)
! Method has exception handlers
s Method declared as synchronized
n Method declared as native
made non entrant compilation wa ...
一些概念
Master 用来管理MooseFS。安装master的主机需要稳定,有一定的可用内存,一台服务器即可。
Metalogger master 一些元数据备份。必要时可以恢复数据,至少一台服务器。
Chunkservers 文件块的存储服务,推荐至少有两台服务。
Clients 通过mount访问Chunkservers文件。
详情参考:
为了使用起来方便,装了ubuntu中文版,自然在home文件里用户目录的“桌面”、“图片”、“视频”、“音乐”……都是中文的。
很多时候都喜欢在桌面上放一些要操作的文件,linux里命令行操作又多,难免会用命令行操作桌面上的东西,那么就要 “cd 桌面”,打“桌面”的时候要输入法切换,麻烦……所以就想办法把用户目录下的路径改成英文,而其他的中文不变,方法如下:
打开终端,在终端中输入命令:
export LANG=en_US
xdg-user-dirs-gtk-update
跳出对话框询问是否将目录转化为英文路径,同意并关闭.在终端中输 ...
1.策略模式(Strategy)
定义算法,将他们分别封装起来,让他们可以相互替换,让算法变化对客户端透明。
2.观察者模式(Observer)
解耦一系列对象的通知状态。定义对象之间的一对多依赖,当一端对象发生变换, ...
目前发现一种方法可以解决,做个标记。
利用字体:
RrdGraphDef graphDef = new RrdGraphDef();
graphDef.setSmallFont(new Font(Font.MONOSPACED, Font.PLAIN, 10));
graphDef.setLargeFont(new Font(Font.MONOSPACED, Font.BOLD, 12));
....
碎碎念,介绍Java内存管理基础知识
1.自动内存管理
内存管理就是查找出不再使用的对象,释放这些对象占用的内存空间,为其他对象的分配提供足够的内存空间。在一些编程语言(C,C++)中,内存管理是程序员的职责。内 ...
源码结构图,方便理解:
├─agent Serviceability Agent的客户端实现
├─make 用来build出HotSpot的各种配置文件
├─src HotSpot VM的源代码
│ ├─cpu CPU相关代码(汇编器、模板解释器、ad文件、部分runtime函数在这里实现)
│ ├─os ...
原创地址:http://blog.lichengwu.cn/java/2012/01/18/get-jvm-pid-on-multi-platform/
对于不同平台,获取java进程id有不同的方法,这个做一个总结,写一个工具类。
这个工具主要进行两种尝试来获得pid:
从 java.lang.management.RuntimeMXBean获得
从操作系统获得
windows系统
非windows系统
工具代码:
/**
* Process ID in Java
*
* @author lichengwu
* @created 201 ...