- 博客(15)
- 收藏
- 关注
转载 分布式锁 ----zookeeper实践 (排它锁)
排它锁概念: Exclusive Locks,被称为X锁,写锁,独占锁.如果事物T1对数据对象O1加上了排它锁,那么在整个加锁期间,只允许事务T1对O1进行读写操作,其他事务必须等到T1释放锁后才能进行操作.在单机环境中,JDK提供了synchronized关键字和ReentrantLock重用锁来提供排它锁的功能.zookeeper实现排它锁原理: 在需...
2016-05-10 09:18:00 115
转载 ElasticSearch java客户端更新时出现的错误:NoNodeAvailableException[None of the configured nodes are available...
下午尝试 用ElasticSearch的java客户端去做数据检索工作,测试了一下批量更新,代码如下:public static void bulkUpdateGoods(List<Goods> goods) throws IOException, InterruptedException, ExecutionException { Client...
2016-04-30 17:42:00 182
转载 Java并发编程示例代码-----ReentrantLock
public class ReenterLock implements Runnable{ public static ReentrantLock lock=new ReentrantLock(); public static int i=0; @Override public void run() { for(int j=0...
2016-04-25 00:38:00 102
转载 Java串口通信--------基于RXTX (附带资源地址)
最近帮老师做了一个小项目,一个牧场公司想用传感器收集一些环境信息,记录到数据库里去,然后加以分析查看。这里面和传感器通信用到了串口通信,我也是接触了一下,把用到的东西分享出来。准备工作: RXTX:封装了Java对串口操作的类库,具体的话大家自己百度一下吧。资源地址:http://pan.baidu.com/s/1nuLZex7密码m358 VSPD(Virtu...
2016-04-24 21:44:00 186
转载 Concurrent初探 --- Atomic 无锁
一.CAS算法 Compare And Swap,CAS算法的过程是这样:它包含3个参数CAS(V,E,N)。V表示要更新的变量,E表示预期值,N表示新值。仅当V值等于E值时,才会将V的值设为N,如果V值和E值不同,则说明已经有其他线程做了更新,则当前线程什么都不做。最后,CAS返回当前V的真实值。CAS操作是抱着乐观的态度进行的,它总是认为自己可以成功完成操作。当多个线程同时使用...
2016-04-24 11:03:00 103
转载 Java基本的线程操作(附代码)
啦啦啦啦,从头整理一遍java并发的内容.开始是基本的线程操作线程状态切换:新建线程: @Test public void newTread(){ Thread t1 = new Thread(new Runnable() { @Override ...
2016-04-24 10:31:00 93
转载 Thift初探 (一)
Mavenpox.xml:<dependency> <groupId>org.apache.thrift</groupId> <artifactId>libthrift</artifactId> <version>0.9.3</version></depe...
2016-04-17 16:40:00 152
转载 分布式的一致性(分布式事物)-------2PC详述
英文名:Two Phase Commit(2PC)算法目的:实现分布式事物算法概述: 有两类节点: -----协调者 -----事务参与者 流程阶段: -----请求阶段 -----提交阶段 算法成立的前提条件: 1.存在一个协调者,其他节点为参与者,节点间使用网络通信 2.所有节点都采用预写...
2016-04-15 10:48:00 137
转载 好用的zookeeper客服端----Curator初探
maven配置: <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>2.6.0</ver...
2016-04-14 19:36:00 127
转载 GFS中元数据的管理
GFS 元数据(metadata)中包含三部分:GFS元数据的管理方式:1.文件的命名空间和块的命名空间: 采用持久化的方式. 对于文件和块的命名空间以及从文件到块的映射:通过向操作日志登记修改而保持不变,操作日志存储在master的本地磁盘并在几个远程机器上留有副本,使用日志使得我们可以简单地,可靠地更新master状态.即使在master崩溃的情况下也不...
2016-04-13 19:52:00 602
转载 八十年代的经典 NFS和AFS
NFS:(C/S模式)大体架构: 1985年Sun公司基于UDP开发了网络共享文件系统(Network FileSystem) NFS由一系列NFS命令和进程组成的客户机/服务器模式,在第三版中加入了基于TCP传输。 AFS:大体架构:处理流程:节点身份: ptserver:负责用户和鉴权 ...
2016-04-12 21:44:00 296
转载 二叉树非递归遍历
非递归方式实现先序遍历具体过程:1.首先申请一个新的栈,记为stack。2.然后将头节点head压入stack中。3.每次从stack中弹出栈顶节点,记为cur,然后打印cur节点的值,如果cur右孩子不为空的话,将cur的右孩子先压入stack中。最后,如果cur的左孩子不为空的话,将cur的左孩子压入stack中。4.不断重复步骤三,直到stack为空,全部过程结...
2016-04-10 21:17:00 78
转载 Java高并发下的 “单例模式”
前言:单例模式大家应该很熟悉了,我在这里就自己总结一下自己这段时间学到的单例相关的知识。单例模式的目的:保证一个类只有单一的实例,也就是说你无法通过new来创建这个类的一个新实例。单例模式的意义:保证一个类只有单一的实例,也就是说你无法通过new来创建这个类的一个新实例。我们可以控制类对象的产生的数目。单例模式使用场合:使用单例的情况有3种: 1、类a从类b继承,这时a需...
2016-04-07 19:21:00 182
转载 Java并发概念-2
一,死锁: 所谓死锁: 是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 死锁的产生条件: 1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程...
2016-04-06 23:39:00 80
转载 Java并发概念-1
一,同步 和 异步: 同步:调用方需要等待被调用方回应之后,才能进行下一步动作。 异步:调用方不需要等待被调用方回应,直接继续自己的动作。在未来某个时间点可能会有被调用方的回应。 二,并发 和 并行 并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。 三,临界区 每个进程中访问临界资源的那段代码称为临界...
2016-04-06 22:06:00 102
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人