自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Paxos算法与Zookeeper分析

1 Paxos算法 1.1 基本定义算法中的参与者主要分为三个角色,同时每个参与者又可兼领多个角色:⑴proposer 提出提案,提案信息包括提案编号和提议的value;⑵acceptor 收到提案后可以接受(accept)提案;⑶learner 只能"学习"被批准的提案;算法保重一致性的基本语义:⑴决议(value)只有在被proposers提出后才能被批准(...

2014-10-30 15:02:26 109

原创 ZooKeeper快速搭建

转http://nileader.blog.51cto.com/1381108/795230 本文是ZooKeeper的快速搭建,旨在帮助大家以最快的速度完成一个ZK集群的搭建,以便开展其它工作。本方不包含多余说明及任何调优方面的高级配置。如果要进行更深一层次的配置,请移步《ZooKeeper管理员指南——部署与运维》。 单机模式(7步)Step1:配置JAVA环境。检验方法:执行j...

2014-10-30 11:15:28 105

原创 Netty 4.x学习笔记 – 线程模型

转自http://hongweiyi.com/2014/01/netty-4-x-thread-model/Netty 4.x学习笔记 – 线程模型1、前言前面两篇学习笔记已经说完了ByteBuf和Channel和Pipeline,这篇开始讲讲前面欠的债——线程模型(EventLoop和EventExecutor)。  2、Netty线程模型将具体代码实现前,先来谈谈...

2014-10-20 17:38:07 275

原创 Undefined symbols for architecture i386:和"_OBJC_CLASS_$_xx", referenced from:问题解

转自http://blog.csdn.net/azhou_hui/article/details/18312047多个人共同操作同一个项目或拷贝项目时,经常会出现类似这样的问题:Undefined symbols for architecture i386:"_OBJC_CLASS_$_xx文件名", referenced from: 下面是可能导致这类问题出现...

2014-10-19 15:55:13 111

原创 Netty代码分析

转自http://jm-blog.aliapp.com/?p=423Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序[官方定义],整体来看其包含了 以下内容:1.提供了丰富的协议编解码支持,2.实现自有的buffer系统,减少复制所带来的消耗,3.整套channel的实现,4.基于事件的过程 流转以及完整的网络事件响应与扩展,...

2014-10-17 09:45:10 85

原创 在UltraEdit中使用正则表达式

在UltraEdit中使用正则表达式正则表达式 (UltraEdit Syntax):% 匹配行首 - 表明要搜索的字符串一定在行首. $ 匹配行尾 - 表明要搜索的字符串一定在行尾 ? 匹配除换行符外的任一单个字符. * 匹配任意个数的字符出现任意次数(不包括换行符) + 匹配前导字符或者表达式出现一次或者更多次(不包括换行符) ++ 匹配前导字符或者表达式不出现或者出现一次以上(不包括换...

2014-10-11 14:42:38 673

原创 java 8stream

上篇文章Java8初体验(一)lambda表达式语法比 较详细的介绍了lambda表达式的方方面面,细心的读者会发现那篇文章的例子中有很多Stream的例子。这些Stream的例子可能让你产生疑惑,本 文将会详细讲解Stream的使用方法(不会涉及Stream的原理,因为这个系列的文章还是一个快速学习如何使用的)。1. Stream初体验我们先来看看Java里面是怎么定义Stream的...

2014-10-10 16:54:47 92

原创 并发实战题

实现一个流控程序。控制客户端每秒调用某个远程服务不超过N次,客户端是会多线程并发调用,需要一个轻量简洁的实现,大家看看下面的一个实现,然后可以自己写一个实现。package test.token;import java.util.Date;import java.util.concurrent.ExecutorService;import java.util.concu...

2014-10-10 13:50:52 119

原创 CopyOnWriteArrayList

除了加锁外,其实还有一种方式可以防止并发修改异常,这就是将读写分离技术(不是数据库上的)。 先回顾一下一个常识: 1、JAVA中“=”操作只是将引用和某个对象关联,假如同时有一个线程将引用指向另外一个对象,一个线程获取这个引用指向的对象,那么他们之间不会发生ConcurrentModificationException,他们是在虚拟机层面阻塞的,而且速度非常快,几乎不需要CPU时...

2014-10-10 11:01:09 71

原创 正确使用volatile变量

Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。锁提供了两种主要特性:...

2014-10-09 23:14:26 136

原创 java动态加载

第一部分:Java虚拟机启动时,关于类加载方面的一些动作当使用java ProgramName.class运行程序时,Java找到JRE,接着找到jvm.dll,把该动态库载入内存,这就是JVM。然后加载其它动态库, 并激活JVM。JVM激活之后会进行一些初始化工作,之后生成BootstrapLoader,该Class Loader是由C++写的。BootstrapLoader加载...

2014-10-09 22:07:12 107

原创 servlet3新特性

Servlet 3.0 新特性概述Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布。该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化 Web 应用的开发和部署。其中有几项特性的引入让开发者感到非常兴奋,同时也获得了 Java 社区的一片赞誉之声:异 步处理支持:有了该特性,Servlet 线程不再...

2014-10-09 11:58:27 76

原创 分布式事务处理

分布式事务处理(  Distributed Transaction Processing  ,  DTP  )涉及多个分布在不同地方的数据库,但对数据库的操作必须全部被提交或者回滚。只要任一数据库操作时失败,所有参与事务的数据库都需要回滚。Open  组织定义的分布式事务处理模型X/Open DTP  模型(1994)包括应用程序(  AP  )、事务管理器(  TM  )、资源管理器(  RM ...

2014-10-09 09:41:53 65

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除