- 浏览: 422147 次
- 性别:
- 来自: 北京
最新评论
-
masuweng:
好好好,有时间了练习下
使用Java混淆工具yguard -
shengshihouzhe:
第一个eg实现的应该是循环栅栏,不是计数器
Java Phaser使用 -
yukaizhao:
推荐一个很全的guava教程 http://outofmemo ...
google guava cache 处理 -
yanqingluo:
谢谢分享,已关注.
BTrace入门及使用实例 -
luoxiaohui_java:
谢谢分享!
这么好的文章,怎么没人回复呢。
ibm was nd websphere 集群
文章列表
linux 命令行汇总
- 博客分类:
- Linux
sudo !!
2009-01-26 10:26:48
User: root
9
Linux终端中使用上一命令减少键盘输入
- 博客分类:
- Linux
减少键盘输入,可以大大提高程序员的工作效率,快捷键的使用就是一个很好的例子。程序员经常使用终端。那么在终端上有没有类似的“快捷键”可以提高我们的效率呢?程序员的工作往往是前后相关连的。所以,本文将演示如何使用上一条命令提高工作效率的。
1.使用上一条命令的所有参数
方法:!*
例子:如果我对hello.txt和bye.txt进行了编辑,然后希望使用git add添加这两个文件。就可以使用:git add !*
2.使用上一条命令的最后一个参数
方法:!$
ALT + .
ESC + .
其中后面两种方法,terminal中会 ...
按顺序依次为 秒(0~59) 分钟(0~59) 小时(0~23) 天(月)(0~31,但是你需要考虑你月的天数)月(0~11) 天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)
如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System)。
眼下最流行的"版本管理系统",非Git莫属。
相比同类软件,Git有很多优点。其中很显著的一点,就是版本的分支(branch)和合并(merge)十分方便。有些传统的版本管理软件,分支操作实际上会生成一份现有代码的物理拷贝,而Git只生成一个指向当前版本(又称"快照")的指针,因此非常快捷易用。
但是,太方便了也会产生副作用。如果你不加注意,很可能会留下一个枝节蔓生、四处开放的版本库,到处都是分支,完全看不出主干发展的脉络。
...
linux性能监控-iostat命令
- 博客分类:
- Linux
Linux系统中的 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。同vmstat一样,iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析。iostat属于sysstat软件包。可以用yum install sysstat 直接安装。
1.命令格式:
iostat[参数][时间][次数]
2.命令功能:
linux性能监控-sar
- 博客分类:
- Linux
sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、
相信各位VPSer在使用VPS时会经常在不同VPS间互相备份数据或者转移数据,大部分情况下VPS上都已经安装了Nginx或者类似的web server,直接将要传输的文件放到web server的目录,然后在目标机器上执行:wget http://www.vpser.net/testfile.zip 就行了。当VPS上没有安装web server和ftp server的时候或感觉上面的方法比较麻烦,那么用scp命令就会排上用场。
一、scp是什么?
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器, ...
1. 移动光标快捷键
ctrl+f 向前移动一个字符
ctrl+b 向后移动一个字符
alt+f 向前移动一个单词
alt+b 向后移动
多数据源问题很常见,例如读写分离数据库配置。
原来的项目出现了新需求,局方要求新增某服务器用以提供某代码,涉及到多数据源的问题。
解决方法如下:
1、首先配置多个datasource
1 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
2 <property name="driverClassName" value="net.sourceforge.jtds.jdbc.Dri ...
System.nanoTime
- 博客分类:
- JAVA
System.nanoTime只能用于计算时间差,不能用于计算时间的准确度(System.out.println(new Date(System.nanoTime()));这种是绝对错误的)。
Java代码
long java.lang.System.nanoTime()
Returns the current value of the most precise available system timer, in nanoseconds. This method can only be used to measure elapsed time and ...
精巧好用的DelayQueue
- 博客分类:
- JAVA
我们谈一下实际的场景吧。我们在开发中,有如下场景a) 关闭空闲连接。服务器中,有很多客户端的连接,空闲一段时间之后需要关闭之。b) 缓存。缓存中的对象,超过了空闲时间,需要从缓存中移出。c) 任务超时处理。在网络协议滑动窗口请求应答式交互时,处理超时未响应的请求。一种笨笨的办法就是,使用一个后台线程,遍历所有对象,挨个检查。这种笨笨的办法简单好用,但是对象数量过多时,可能存在性能问题,检查间隔时间不好设置,间隔时间过大,影响精确度,多小则存在效率问题。而且做不到按超时的时间顺序处理。 这场景,使用DelayQueue最适合了。
ReentrantLock可重入锁的使用场景
- 博客分类:
- JAVA
摘要
从使用场景的角度出发来介绍对ReentrantLock的使用,相对来说容易理解一些。
场景1:如果发现该操作已经在执行中则不再执行(有状态执行)
a、用在定时任务时,如果任务执行时间可能超过下次计划执行时间,确保该有状态任务只有一个正在执行,忽略重复触发。b、用在界面交互时点击执行较长时间请求操作时,防止多次点击导致后台重复执行(忽略重复触发)。
以上两种情况多用于进行非重要任务防止重复执行,(如:清除无用临时文件,检查某些资源的可用性,数据备份操作等)
线程池的作用就是用尽可能少的线程来执行尽可能多的Runnable,以实现对线程的充分利用。从ThreadPoolExecutor类的构造方法说起:
ThreadPoolExecutor
public ThreadPoolExecutor(int corePoolSize, // 核心线程数
int maximumPoolSiz ...
AOP(Aspect Orient Programming ) , 面向切面编程 。
1、AOP的基本概念:
AOP框架并不与特定的代码耦合,AOP框架能处理程序执行中特定的切入点(Pointcut),而不与具体某个类耦合。AOP框架具有如下特征:
1、各步骤之间的良好隔离性。
2、源代码无关性。
AOP的专业术语:
1、Aspect(切面) : 应用运行过程中的关注点,关注点可以横切多个对象,被称为横切关注点。
2、pointcut(切入点):可插入增强处理的连接点。
3、joinpoint(连接点):程序执行过程中明确的点,如方法的调用,或者异 ...