- 浏览: 334881 次
- 性别:
- 来自: 北京
-
最新评论
-
grylls:
CloseableHttpClient只有一个,如果是多个ho ...
HttpClient 4.3 链接复用 和 和设置 timeout 的方法 -
mao_siyu:
谢谢了,精简明了,java这东西要想学精了 还是得从自身的思想 ...
java注解原理 -
liyonghui160com:
楼主58的
zookeeper学习之三(Curator客户端) -
a6985600:
看看看看看
jersey webservice -
liutingfeng2010:
哥们 DistributedAtomicIntegerExam ...
zookeeper学习之三(Curator客户端)
文章列表
安装tomcatwgethttp://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.64/bin/apache-tomcat-7.0.64.tar.gztar -zxvf apache-tomcat-7.0.64.tar.gz
server.xml配置
<?xml version='1.0' encoding='utf-8'?>
<Server port="9005" shutdown="SHUTDOWN">
<Listener className= ...
jdk 1.6update45 安装
- 博客分类:
- JVM
安装jdk下载jdk6u45 http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR放到 /usr/local下sh jdk-6u45-linux-x64.bin 解压配置环境变量在/etc/profile的最后边加上export JAVA_HOME=/usr/local/jdk1.6.0_45export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA ...
1.
安装PCRE库
cd /usr/local/
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
tar -zxvf pcre-8.36.tar.gz
cd pcre-8.36
./configure
make
make install
2.安装zlib库
cd /usr/local/
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./co ...
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.codehaus.jackson.JsonFactory;
import org.codehaus.jackson.JsonGenerator;
import org.codehaus.jackson.JsonParser;
import org.codehaus.jackson.map.Dese ...
import org.apache.http.HttpResponse;
import org.apache.http.conn.ConnectionKeepAliveStrategy;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.DefaultConnectionKeepAliveStrategy;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.im ...
Curator框架是最好用,最流行的zookeeper的客户端。
它有以下三个优点
1.提供了一套非常友好的操作API;
2. 提供一些高级特性(包括但不仅限于前篇文章中提到的)的封装
3.易测试
maven依赖如下
<dependency>
<group ...
zookeeper学习之二(高级特性)
- 博客分类:
- 工具使用
一、三个概念
1.CreateMode
在create的时候可以设置znode的类型
主要有四种:
PERSISTENT (持续的,相对于EPHEMERAL,不会随着client的断开而消失)
PERSISTENT_SEQUENTIAL(持久的且带顺序的)
EPHEMERAL (短暂的,生命周期依赖于client session ...
zookeeper学习之一(简介和安装)
- 博客分类:
- 工具使用
一、zookeeper介绍
直接翻译官网的What is zookeeper。
Zookeeper是一个关于 配置信息,命名,提供分布式同步和集群service的一站式服务。所有的这些服务或者(他们)别的表现形式经常在应用于分布式系统中。每一次去实现他们, ...
数据库隔离级别 悲观琐,乐观锁
- 博客分类:
- 数据库
关于隔离级别这篇说的最好了:http://singo107.iteye.com/blog/1175084
我补充的是更新丢失的问题。
当然 所有事务串行情况下不可能出现这个问题。
但就像文章说的 Serializable级别几乎在实际项目中是不会出现的。
先看更新丢失的场景吧:其实都不用绝对并发就会出现。
比如同一件商品被在2个请求中分别被购买1件, 请求A取出库存是100,大于等于1,那么可以购买。请求B比请求A慢2秒进来,取出库存也是100,OK,也可以购买。
这时候经过大量的业务处理,比如花费了3秒钟,A把商品库存修改为 100-1 =99;
2秒后紧接着B也会执行完业务逻辑,修改 ...
classloader浅谈
- 博客分类:
- JVM
1.classloader的作用,主要作用加载.class文件,次要作用:加载其他格式的文件。
2. classpath:
classpath 决定了一个class loader的职能范围。
Bootstrap ClassLoader、Extension ClassLoader、System ClassLoader的区别就是其classpath不同。
3.URLClassLoader
ur ...
mysql 行锁演示
- 博客分类:
- 数据库
接上一篇,演示环境一样。
我们看行锁的情况。
首先:发出sql :
set autocommit=0;
select * from role where id=1 for update;
由于innodb引擎支持行锁,因为id是主键(主键一定是索引),此时只会锁定 id=1的记录。
然后看mysql锁定记录,
发 ...
首先看表结构,版本 5.0.22, for Win32,引擎innodb
+----+----------+------+
| id | name | seat |
+----+----------+------+
| 1 | 管理员 | 98 |
| 2 | 维护人员 | 98 |
| 3 | 主任 | 97 |
| 4 | 班主任 | 96 |
+----+----------+------+
id是主键,没有其他索引。
先看表锁的情况
发sql:
set autocommit=0;
selec ...
// 判断数字
public static boolean isNumberic(String s) {
return Pattern.compile("([1-9]+|0)\\.*[0-9]+").matcher(s).matches();
}
// 判断邮箱
public static boolean isEmail(String s) {
return Pattern.compile("\\w+@{1}\\w+\\.{1}\\w+").matcher(s).matches();
}
// 包含某个字 ...
java concurrent
- 博客分类:
- JVM
concurrent 包里主要有 Executor,Executors,ExecutorService,Callable这几个包或者接口。
Executor 执行者。在concurrent 不直接调用thread的start执行任务,而是用Excutor的 excute实现 而
Executors和Executor 的关系就相当于 Collection和Collections的关系 ...
synchronized关键字
- 博客分类:
- JVM
synchronized 分为对象锁,和实例锁。
先看实例锁:
public class Test {
private void lock1() {
synchronized (this) {
try {
System.out.println("lock1方法开始执行");
Thread.sleep(5000);
} catch (Exception e) {
}
System.out.println("lock1方法执行完毕");
}
}
private vo ...