自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (77)
  • 收藏
  • 关注

原创 MapReduce java 应用

v/:* {behavior:url(#default#VML);}o/:* {behavior:url(#default#VML);}w/:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);} Normal 0 7.8 磅 0 2

2011-06-30 14:01:00 828

转载 Mongodb源码分析--Mongos之balancer(均衡)

  在之前的一篇文章中,介绍了mongos的启动流程,在那篇文章的结尾,介绍了mongos使用balancer来进行均衡,今天就继续讲其实现方式。    首先我们看一下Balancer及相关实现策略的类图:            可以看到Balancer类里包含一个BalancerPolicy,其指向一个均衡策略,该策略会实现查找并收集要迁移的chunk。    

2011-06-26 14:16:00 633

转载 Mongodb源码分析--Replication之主从模式--Slave

  在上文中介绍了主从(master-slave)模式下的一些基本概念及master的执行流程。今天接着介绍一下从(slave)结点是如何发起请求,并通过请求获取的oplog信息来构造本地数据的。    不过开始今天的正文前,需要介绍一下mongodb在slave结点上进行数据同步时的一个大致流程:        1.当一个从结点启动时,它会对主结点进行一次彻底同步。从结点

2011-06-26 14:14:00 893

转载 Mongodb源码分析--Replication之主从模式--Master

mongodb中提供了复制(Replication)机制,通过该机制可以帮助我们很容易实现读写分离方案,并支持灾难恢复(服务器断电)等意外情况下的数据安全。      在老版本(1.6)中,Mongo提供了两种方式的复制:master-slave及replica pair模式(注:mongodb最新支持的replset复制集方式可看成是pair的升级版,它解决pair只能在两个结点间

2011-06-26 14:11:00 837

转载 Mongodb源码分析--链接池(ConnPool)

在之前的一篇文章中,介绍了mongos的balaner的执行流程,其中在源码中的Balancer::run()方法里简单说明了为了连接到configserver,balancer通过构造ScopedDbConnection实现来链接并执行相应操作,因为当时篇幅所限,只是该链接使用池化的方式一带而过,今天就专门介绍一下mongodb中使用池化方式来管理链接对象以提升链接效率的原理。

2011-06-26 14:04:00 994

转载 Mongodb源码分析--Mongos之分布式锁

  在之前的一篇文章中,介绍了balancer会声明使用分布式锁来协调分布式环境下的信息沟通并确保事务一致性,有关分布式锁的一些原理性信息可以参见这几篇文章:     http://wenku.baidu.com/view/19ce3085b9d528ea81c77982.html     http://wenku.baidu.com/view/d94ac11ffc4ffe4733

2011-06-26 14:00:00 1027

转载 Mongodb源码分析--Mongos之balancer(均衡)

  在之前的一篇文章中,介绍了mongos的启动流程,在那篇文章的结尾,介绍了mongos使用balancer来进行均衡,今天就继续讲其实现方式。    首先我们看一下Balancer及相关实现策略的类图:            可以看到Balancer类里包含一个BalancerPolicy,其指向一个均衡策略,该策略会实现查找并收集要迁移的chunk。    

2011-06-26 13:57:00 797

转载 Mongodb源码分析--Mongos

MongoDB提供了auto-sharding 功能。因为其是auto-sharding,即mongodb通过mongos(一个自动分片模块,用于构建一个大规模的可扩展的数据库集群,这个集群可以并入动态增加的机器)自动建立一个水平扩展的数据库集群系统,将数据库分表存储在sharding的各个节点上。    一个mongodb集群包括一些shards(包括一些mongod进程),m

2011-06-26 13:55:00 655

转载 Mongodb源码分析--查询结果集封装

    在这个系列的开头几篇文章中,曾经介绍了Mongodb的查询流程,因为篇幅所限,并未介绍对cursor进行遍历查询时,如何将查询记录装填进结果集中。        今天就针对诸如select top n 这类返回一定数量记录的查询操作,来分析mongodb是如何将查询结果装填到结果集中的。这里要说明的是之前文章中的大部分程序流程,在select top 这类操作也都是要执

2011-06-26 13:52:00 616

转载 Mongodb源码分析--Command体系架构

Command在Mongodb中是一类特殊操作,它提供了强大的管理及各项操作(比如建库,索引,删除集合等)。可以说通过Command可以完成几乎所有想做的事情。同时Mongodb开发者在Command上又做了非常清晰体系架构和设计,便于管理和高效执行各种类型的Command。     今天就专门用一篇篇幅来着重介绍一下其Command的体系架构,并用例子来介绍mongod是如何将Comma

2011-06-26 13:50:00 727

转载 Mongodb源码分析--内存文件映射(MMAP)

在Mongodb中,其使用了操作系统底层提供的内存映射机制,即MMAP。MMAP可以把磁盘文件的一部分或全部内容直接映射到内存,这样文件中的信息位置就会在内存中有对应的地址空间,这时对文件的读写可以直接用指针来做,而不需要read/write函数了。同时操作系统会将数据刷新保存到磁盘上。如下图:            鉴于linux,window系统为mmap所提

2011-06-26 13:47:00 787

转载 Mongodb源码分析--游标Cursor

     在Mongodb中,其提供了类似关系型数据中cursor对象来遍历数据集合,同时mongodb并要根据不同的场景生成不同的游标对象(cursor),比如顺序遍历游标(basicCursor),反向游标(reverseCursor), B树索引游标(btreeCursor)等。    下面是其游标体系架构类图(位于cursor.cpp, cursor.h, clie

2011-06-26 13:45:00 622

转载 Mongodb源码分析--更新记录

  在之前的一篇文章中,介绍了assembleResponse函数(位于instance.cpp第224行),它会根据op操作枚举类型来调用相应的crud操作,枚举类型定义如下:     enum Operations {        opReply = 1,     /* reply. responseTo is set. */   

2011-06-26 13:43:00 734

原创 Mongodb源码分析--删除记录

在之前的一篇文章中,介绍了assembleResponse函数(位于instance.cpp第224行),它会根据op操作枚举类型来调用相应的crud操作,枚举类型定义如下:    enum Operations {        opReply = 1,     /* reply. responseTo is set. */ 

2011-06-26 13:40:00 736

转载 Mongodb源码分析--消息(message)

在Mongodb中,客户端和服务端进行通信是基于mongodb wire protocol。说白了,该协议是一个简单的基于socket,请求/响应方式的协议,客户端使用常规的TCP/IP套接字(socket)进行通信。      客户端与服务端使用约定的消息(格式)进行通信,其消息头结构与C语言中的struct类似。具体的代码(位于message.cpp):    str

2011-06-26 13:38:00 776

转载 Mongodb源码分析--插入记录及索引B树构建

在之前的一篇文章中,介绍了assembleResponse函数(位于instance.cpp第224行),它会根据op操作枚举类型来调用相应的crud操作,枚举类型定义如下:     enum Operations {        opReply = 1,     /* reply. responseTo is set. */    

2011-06-26 13:35:00 123

原创 Mongodb源码分析--日志及持久化

在本系列的第一篇文章(主函数入口)中,介绍了mongodb会在系统启动同时,初始化了日志持久化服务,该功能貌似是1.7版本后引入到系统中的,主要用于解决因系统宕机时,内存中的数据未写入磁盘而造成的数据丢失。其机制主要是通过log方式定时将操作日志(如cud操作等)记录到db的journal文件夹下,这样当系统再次重启时从该文件夹下恢复丢失的(内存)数据。也就是在_initAndL

2011-06-26 13:33:00 592

转载 mongodb源码分析--查询

在之前的一篇文章中,介绍了mongodb的主程序入口main()的执行流程,其实main只是实始化一些参数信息并做了些后台线程任务的启动工作(包括数据准备和恢复),并最终启动一个线程进行循环侦听。今天将会介绍在mongodb中数据查询 (find)的流程,以了解mongodb是如果对message进行拆包分析,以及数据进行表扫描及索引使用的。         好了,开始今天的

2011-06-26 13:30:00 533

转载 Mongodb源码分析--主程序入口main()

作为这个系列的开篇,本人特此声明,因为本人技术功力有限,且对mongodb源码目前也在研究探索中,可能会对mongodb内部某些实现机制及原作者的意图领会不够精确,因此错误再所难免,希望大家批评指正。另外本文所使用的mongodb源码为1.8 rc1,同时如果有条件的话,大家可以安装vs2010,用C++来编译调试mongodb源码,以便通过运行过程中的数据和流程来验证自己的判断。 

2011-06-26 13:27:00 506

转载 Mongodb源码分析--主程序入口main()

作为这个系列的开篇,本人特此声明,因为本人技术功力有限,且对mongodb源码目前也在研究探索中,可能会对mongodb内部某些实现机制及原作者的意图领会不够精确,因此错误再所难免,希望大家批评指正。另外本文所使用的mongodb源码为1.8 rc1,同时如果有条件的话,大家可以安装vs2010,用C++来编译调试mongodb源码,以便通过运行过程中的数据和流程来验证自己的判断。 

2011-06-26 13:26:00 716

大型网站架构设计(taobao_youku_yahoo_google_ebay_facebook)

大型网站架构设计(taobao_youku_yahoo_google_ebay_facebook) 大型网站架构设计(taobao_youku_yahoo_google_ebay_facebook)

2011-06-14

rsync 配置与使用实现

rsync 配置与使用实现 rsync 配置与使用实现 rsync 配置与使用实现

2011-05-18

通过QQwry.dat来获的IP地址所在地

通过QQwry.dat来获的IP地址所在地 通过QQwry.dat来获的IP地址所在地

2011-05-08

JPA小小的demo 源码与jar 文件 JPA

JPA小小的demo 源码与jar 文件 JPA

2010-08-31

JPA 批注参考Java JPA

JPA 批注参考 JPA 批注参考 JPA 批注参考

2010-08-21

JPA 教程 Java 持久化教程(Hibernate JPA,OPenJPA,TopLink JPA)

JPA 教程 Java 持久化教程(Hibernate JPA,OPenJPA,TopLink JPA)

2010-08-21

JPA 教程 Java 持久化教程

JPA 教程 Java 持久化教程 JPA 教程 Java 持久化教程

2010-08-20

AutoCode代码生成器(SSH版) 【用于JAVA开发中的 Struts2.0 + Spring2.0 + Hibernate3.2 框架整合程序开发】

AutoCode代码生成器(SSH版) 【用于JAVA开发中的 Struts2.0 + Spring2.0 + Hibernate3.2 框架整合程序开发】 强大的支撑功能,堪称JAVA SSH编程的利器,你绝对值得拥有! 自动生成以下所有内容(即:完整的Java SSH支持的工程) Sturts2.0配置--> sturts.xml、struts.properties Spring2.0配置--> applicationContext.xml Hibernate3.2配置--> hibernate.cfg.xml JSP文件--> 具有Struts2.0支持的增、删、改、查页面及自定义查询、自动分页等

2010-08-18

flex-bootstrap.jar flex-bootstrap-jsp.jar flex-webtier-jsp.jar Flex_jsp文件

flex-bootstrap.jar flex-bootstrap-jsp.jar flex-webtier-jsp.jar Flex JSP

2010-08-15

FlexModule_j2ee Flex 与JSP 整合用的.jar 文件

FlexModule_j2ee Flex 与JSP 整合用的.jar 文件 Jsp 中引用Flex 标签

2010-08-15

Java分布式处理技术RMI,JNDI,

Java分布式处理技术RMI,JNDI,

2010-08-15

java 技术总结.--java 技术

java 技术总结java 技术总结java 技术总结

2010-07-10

Spring 中任务调度 TimeTask 与quartz简单用法

TimeTask 与quartz简单用法 Spring中任务调度cronExpression配置说明

2010-06-20

apache-cxf-web-service

apache-cxf-web-serviceapache-cxf-web-service

2010-06-02

Ajax+SSH+EJB总结(个人总结)

Ajax+SSH+EJB总结,个人总结,希望对大家有用。

2010-05-29

java 学习的顺序(初学者)

学习Java的学习顺序 java 程序员 我自己总结的,希望对你们有用。

2010-05-29

ZKDemoZKDemoZKDemo

ZKDemoZKDemoZKDemoZKDemoZKDemoZKDemo

2009-12-23

oracle 存储过程 例子java 调用过程

oracle存储过程实例oracle存储过程实例

2009-05-15

java中的报表(jfreeChart原创)

java中的报表(jfreeChart原创)

2009-05-01

Oracle经典资料(原创)

Oracle经典资料(原创) Oracle经典资料(原创)

2009-05-01

数据库分库分表

数据库分库分表 数据库分库分表 数据库分库分表

2014-03-28

redmine安装包

remine 安装包

2013-11-10

redmine 安装手册

安装手册

2013-11-07

敏捷开发--敏捷之道

maven 持续构建 gtld 架构

2013-09-17

maven使用手册

maven maven操作手册,nexus与maven整合文档

2013-09-16

shell java

java shell 使用shell脚本执行java 程序

2012-07-12

statsvn0.7 中文版(UTF-8)

statsvn0.7 中文版 SVN 代码统计

2012-02-23

Agile.ALM(敏捷)

Agile.ALM(敏捷) Agile.ALM(敏捷)

2011-12-21

rabbitMQ java Client

rabbitMQ java Client rabbitMQ java Client

2011-12-08

rabbitMQ安装与配置(分布式配置)

rabbitMQ安装与配置(分布式配置)

2011-12-08

Lucene 原理与代码分析完整版(全文检索)

Lucene 原理与代码分析完整版(全文检索) Lucene 原理与代码分析完整版(全文检索)

2011-10-06

Java 高性能缓存(Memcache) 缓存思路

Java 高性能缓存(Memcache) ,缓存思路

2011-09-23

Nginx-Http模块官方翻译

Nginx-Http模块官方翻译 Nginx-Http模块官方翻译

2011-09-02

自动化部署项目_Tomcat

自动化部署项目,自动化部署项目_Tomcat Shell

2011-08-25

hadoop权威指南part2

hadoop权威指南,hadoop map/reduce 分布式计算

2011-08-25

hadoop权威指南.part1

hadoop权威指南,hadoop map/reduce 分布式计算

2011-08-25

Hadoop云计算技术介绍

Hadoop云计算技术介绍,Hadoop Map/Reduce,分布式计算

2011-08-25

Web Service SOAP Client set SOAP Header

在Web-service 调用SOAP 新增加SOAP的配置信息。用于验证用户信息。

2011-08-18

阿里巴巴_大规模集群下的自动化部署

阿里巴巴_大规模集群下的自动化部署,自动化部署,自动化部署

2011-08-10

MongoDB 基础学习资源

MongoDB 基础学习资源,src ,手册,MongoDB NOSQL

2011-06-26

空空如也

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

TA关注的人

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