自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (4)
  • 收藏
  • 关注

原创 基于zookeeper3.4.6的源码研究(三)

下面我来说说选leader算法。首先创建一张给自己的选票,填上自己的myid,zxid和epoch(这些值在前面都已经捡算出来的)如果electionType=0,UDP算法的选举,这个暂时不管。我们主要讨论下3:FastLeaderElection1.首先要开启选举监听端口2.启动后初始状态为lookingprivate ServerState state = Ser

2015-02-03 15:16:57 667

原创 该离开了吗?

好久没有写文章了,记得以前手放在键盘上,随便就能刷刷的勾勒出一篇文章,不管文采如何,倒是读起来也是朗朗上口。现在坐在电脑桌前,看看白白的屏幕,听着静静的音乐,手指始终难以按下一个字母。人真的要老了,年龄也马上就要触到30的味道了。最近公司和部门人事变动的太多,作为其中的一员的我,依然没有找到自己的位置。麻木的看着一个个同事离我而去。我问我自己,我该走吗?如果我走了,要去哪儿?我的心中根

2015-08-06 21:00:25 597 1

转载 LinkedBlockingQueue的双锁

概述LinkedBlockingQueue是java concurrent包提供的另一个多线程安全的阻塞队列,与ArrayBlockingQueu相比,此队列的使用链表实现(不熟悉链表的同学,请查阅大学的数据结构课本),可以提供高效的并发读写性能。数据结构链表节点既然是链表,那么肯定少不了节点,节点自然包括节点内容和next指针。jdk开发人员,设计的节点是

2015-02-27 16:23:35 8085 2

原创 kafka学习笔记

kafka是用scala编写,用zookeeper做协调。scala的代码没学习过,这边主要看别人写的文档和自己的工作实践来的。笔记可能会写多篇,因为这东西要经常看啊,不看过了多久就忘了。东西看完了就要问问自己3W1HWhat:kafka是一个分布式(多broker,zookeeper)的,分区的(partition),消息复制的(replicate)的消息中间件(log service)

2015-02-05 16:40:42 3550

原创 基于zookeeper3.4.6的源码研究(二)

加载完配置后,启动文件清理程序(每隔purgeInterval运行一次),清理包括data和datalog目录,data目录中最少保留3份(snapRetainCount至少要配3)public int compare(File o1, File o2) { long z1 = Util.getZxidFromName(o1.getName(), prefix);

2015-02-03 11:29:15 702

原创 基于zookeeper3.4.6的源码研究

这两天稍微有点时间,把我们项目用的kafka的东西过了一遍。但是总感觉对其中的zookeeper理解不够。于是翻了不少资料对zookeeper的介绍,都不满意。尤其是选主算法那边,别人不可能面面俱到,这东西还是要自己多钻研下,于是翻翻它的源码,写下自己的理解。1.入口:org.apache.zookeeper.server.quorum.QuorumPeerMainpublic s

2015-02-02 21:00:40 1625

翻译 网络七层

第一层,物理层  OSI模型最低层的“劳苦大众”。它透明地传输比特流,就是传输的信号。该层上的设备包括集线器、发送器、接收器、电缆、连接器和中继器。 第二层,数据链路层 这一层是和包结构和字段打交道的和事佬。一方面接收来自网络层(第三层)的数据帧并为物理层封装这些帧;另一方面数据链路层把来自物理层的原始数据比特封装到网络层的帧中。起着重要的中介作用。 数据链路层由IEEE802

2013-05-21 14:36:53 510

原创 socket,tcp,http

要写网络程序就必须用Socket,这是程序员都知道的。而且,面试的时候,我们也会问对方会不会Socket编程?一般来说,很多人都会说,Socket编程基本就是listen,accept以及send,write等几个基本的操作。是的,就跟常见的文件操作一样,只要写过就一定知道。 对于网络编程,我们也言必称TCP/IP,似乎其它网络协议已经不存在了。对于TCP/IP,我们还知道TCP和

2013-05-21 14:29:13 1339 1

原创 八皇后算法

<br />在我的网摘里已经有一个通过string类型存储来实现的<br />现在这个是自己通过char型数组来做的,异曲同工,不过相对来说,这个更容易理解<br />//八皇后问题#include <stdio.h>#include <string>using namespace std;static char Queue[8][8];static int a[8];//列static int b[15];//主对角线static int c[15];//从对角线stati

2010-12-22 17:07:00 460

原创 sizeof(struct var) 的长度如何计算 【转】

=========================================================== 作者: goodfunman(http://goodfunman.itpub.net)发表于:2006.07.18 20:04分类: C/C++ 出处:http://goodfunman.itpub.net/post/15807/148405---------------------------------------------------------------

2010-12-21 11:08:00 561

原创 C/C++笔试面试题目汇总3——各种排序算法

<br /> 原文:blog.chinaunix.net/u/1222/showart_318070.html<br /><br />排序算法是一种基本并且常用的算法。由于实际工作中处理的数量巨大,所以排序算法对算法本身的速度要求很高。而一般我们所谓的算法的性能主要是指算法的复杂度,一般用O方法来表示。在后面我将给出详细的说明。对于排序的算法我想先做一点简单的介绍,也是给这篇文章理一个提纲。<br /><br />我将按照算法的复杂度,从简单到难来分析算法。<br />第一部分是简单排序算法,后面你将看到他

2010-06-28 15:03:00 1480

原创 委托和事件的区别(转)

<br />������� 委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。 <br />������� 将

2010-06-27 21:44:00 1140

原创 stack heap 堆栈

<br />一、预备知识―程序的内存分配 <br /><br />一个由c/C++编译的程序占用的内存分为以下几个部分 <br /><br />1、栈区(stack)―   由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 <br /><br />2、堆区(heap) ―   一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 <br /><br />3、全局区(静态区)(static)

2010-06-27 16:26:00 454

原创 QuickSort 快速排序

<br />/*<br /> * This program is free software; you can redistribute it and/or modify<br /> * it under the terms of the GNU General Public License as published by<br /> * the Free Software Foundation; either version 2 of the License, or<br /> * (at your op

2010-06-27 14:57:00 417

原创 stdafx.h

<br />名称的英文全称为:Standard Application Framework Extensions <br />  所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。 <br />  预编译头文件通过编译stdafx.cpp生成,以工程名命名,由于预编译的头文件的后缀是“pch”,所以编译结果文件是projectname.

2010-06-27 13:28:00 418

原创 c语言位运算

<br />一、位运算符C语言提供了六种位运算符:<br />& 按位与<br />| 按位或<br />^ 按位异或<br />~ 取反<br /><< 左移<br />>> 右移<br /><br />1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。<br />例如:9&5可写算式如下: 00001001 (9的二进制补码)&00000101 (5的二进制补码) 0000000

2010-06-27 13:02:00 416

原创 Java各种数据库连接驱动,url大全

   此文中的代码主要列出连接数据库的关键代码,其他访问数据库代码省略 1、Oracle8/8i/9i数据库(thin模式) Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID String

2009-09-15 23:49:00 506

转载 Java,JavaScript,JScript 区别

这三个语言分别是三个公司开发的,SUN的Java,Netscape的JavaScript,Microsoft的JScript JavaScript是由Netscape公司开发并随Navigator导航者一起发布的、介于Java与HTML之间、基于对象事件驱动的编程语言,不需要Java编译器,而是直接运行在Web浏览器中,它的前身是Live Script。 JScript是一种类似JavaScr

2009-09-14 22:30:00 448

转载 web开发的一些注意点

1.字符编码的转换:          String  Xm=new String(txm.getBytes(“ISO8859-1”),"gbb2312"); 2.提示框的弹出:            alert("添加导师信息成功");    3.hidden框必须放在tr,td中,才能被当作表单提交。采用.do的方式传递参数到另       外一个页面中时,必须使用hidden框来传递默认的参

2009-09-01 23:57:00 512

转载 Struts2与Struts1的对比

Action 类: • Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。 • Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现 常用的接口。Action接口不是必须的,任何有execute标识的POJ

2009-08-30 22:14:00 335

转载 IOC和AOP的一些基本概念

AOP 关注与主要的东西,也可以说让你只关注与业务,其他的东西就让AOP帮你完成。我们要吃武昌鱼:public class Dinner {    Customer yangyi;    public void eatfish() {    yangyi.cookFish();    yangyi.eatFish();    yangyi.washDish();    }}prog 1现在我觉

2009-08-30 22:07:00 671

转载 Java:String和StringBuffer的区别

东西是转的,供大家学习。有些东西要想彻底的记住就是彻底的了解它。public class Untitled1 {   public Untitled1() {   }   public static void main(String[] args) {     Untitled1 untitled11 = new Untitled1();     S

2009-08-24 22:12:00 947

apache kafka 介绍

Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.

2015-02-05

分布式发布订阅消息系统 Kafka 架构设计

参与翻译(4人):fbm, 飞翔的猴子, Khiyuan, nesteaa 感谢这些同志们的辛勤工作,翻译的真不错,目前见到的最好的Kafka中文文章

2015-02-05

第一个struts一定要从这里开始

超详细,只要你懂一点JAVA,你一定能学会struts, 其中还附带源文件(.war) 要加STRUTS IN ACTION 中文版 大家多看看啊

2009-09-01

java多线程Client/Server程序

java多线程Client/Server程序

2009-08-25

空空如也

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

TA关注的人

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