自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 将 Oracle Berkeley DB 用作 NoSQL 数据存储

“NoSQL”是在开发人员、架构师甚至技术经理中新流行的一个词汇。尽管这个术语最近很流行,但令人惊讶的是,它并没有一个普遍认可的定义。通常来说,任何非 RDBMS 且遵循无模式结构的数据库一般都不能完全支持 ACID 事务,并且因高可用性的承诺以及在横向伸缩环境中支持大型数据集而普遍被归类为“NoSQL 数据存储”。鉴于这些共同特征(与传统的 RDBMS 的特征形成鲜明对比),有人提议非关...

2012-08-22 18:04:13 135

原创 豆瓣架构

如果能达到这样的访问量,确实说明豆瓣高并发的能力是相当强,我想请您从技术这个角度介绍一下豆瓣网的架 构。 这个话题比较大一点,我刚才在演讲的时候,已经表述这方面的问题了。可以这么说,最简单的方法来说,豆瓣网可分割成两大块:一块是前端的Web,也就是用 户在浏览器访问的时候会触发一系列的操作,从数据库拿出数据,渲染成HTML页面反馈给用户,这是前端;另外一块是后端,在豆瓣有一个很强的数据挖掘...

2012-08-18 11:54:22 417

原创 大型网站架构不得不考虑的问题

这里的大型网站架构只包括高互动性高交互性的数据型大型网站,基于大家众所周知的原因,我们就不谈新闻类和一些依靠HTML静态化就可以实现的架构了,我们以高负载高数据交换高数据流动性的网站为例,比如海内,开心网等类似的web2.0系列架构。我们这里不讨论是PHP还是JSP或者.NET环境,我们从架构的方面去看问题,实现语言方面并不是问题,语言的优势在于实现而不是好坏,不论你选择任何语言,架构都是必...

2012-08-18 11:28:18 116

原创 linux下删除某个目录下大量文件办法

在lamp架构里,因为设置session 超时时间为一天,所以遇到php产生的session大量存在/data/tmp目录下,数量大概有200万,并且不能及时回收。使用 rm -fr /data/tmp/sess_* 不能删除,rm命令会提示参数太多。 后,使用rsync同步删除命令实现,完美实现了批量删除大量垃圾文件操作。具体步骤如下: 大量文件存在的目录:/data/...

2012-08-18 11:20:39 370

原创 svn转移

两台机器都是window平台 具体操作步骤: 1、将原版本库导出 svnadmin dump g:\svn >response_dump (单版本库,不过里面采用了主干分支结构,g:\svn是版本库主目录 导出要一段时间,视版本多少而定,我的版本号到900多,用了至少10分钟吧,导出文件近500M ) 2、在新服务器上创建安装svn服务,创建版本空库...

2012-08-18 11:16:11 82

原创 failover与ActiveMQ的jms.prefetchPolicy.queuePrefetch以及wireFormat.maxInactivityDura

项目使用到activeMQ,在使用过程中遇到一个问题,我使用多个线程去读取队列,每个线程使用一个queue的连接对象,这些连接对象都读取ActiveMQ中的同一个消息队列。但发现只有第一个队列可以循环读取,别的队列都读取到null,但使用activeMQ的控制台查看,队列里还有20多个消息呢,后来google才知道,原来为了性能优化,ActiveMQ为每个open的链接预抓取一个数量的消息(...

2012-07-13 13:51:51 622

原创 jquery右下角弹窗效果

1. 2. 3. 4. 5. 6. 7.jquery右下角弹窗效果 8. 9.$(function () { 10. $.messager.show(0,'一个Jquery Messager消息弹出插件!'); 11. $("#showMessager300x200").click(function(){...

2012-07-11 21:50:10 91

原创 Linux unzip文件太大无法解压

unzip命令出错 End-of-central-directory signature not found   Linux 下,使用unzip解压时,报错:unzip trunk.zipArchive: trunk.zip End-of-central-directory signature not found. Either this file is not...

2012-07-09 17:37:14 3559

原创 ReentrantReadWriteLock可重入读写锁分析

ReentrantReadWriteLock 可重入的读写锁 什么叫可重入:就是同一个线程可以重复加锁,可以对同一个锁加多次,每次释放的时候回释放一次,直到该线程加锁次数为0,这个线程才释放锁。 什么叫读写锁: 也就是读锁可以共享,多个线程可以同时拥有读锁,但是写锁却只能只有一个线程拥有,而且获取写锁的时候,其他线程都已经释放了读锁,而且在该线程获取写锁之后,其他线程...

2012-07-08 22:18:45 91

原创 Lucene3.6的分页查询

分页查询只需要传入每页显示多少条记录,当前是第几页就可以了。   当然是对搜索返回的结果进行分页,并不是对搜索结果的总数量进行分页,因为我们搜索的时候都是返回前n条记录。   例如indexSearcher.search(query, 100);//只返回前100条记录 /** * 对搜索返回的前n条结果进行分页显示 * @p...

2012-07-08 22:15:11 93

原创 使用commons-compress操作zip文件(压缩和解压缩)

  Apache Commons Compress是一个压缩、解压缩文件的类库。   可以操作ar, cpio, Unix dump, tar, zip, gzip, XZ, Pack200 and bzip2格式的文件,功能比较强大。   在这里写两个用Commons Compress把文件压缩成zip和从zip解压缩的方法。   直接贴上工具类代码:...

2012-07-08 22:09:53 845

原创 BoneCP的使用

  BoneCP是一个Java数据库连接池库,官方介绍它的速度非常快,测试值高出C3P0、DBCP很多,性能也非常出色,值得一用。   使用BoneCP有一些要求:   1)Google Guava library   2)The SLF4J logging library   3)JDK1.5 or higher -------------------...

2012-07-08 22:02:01 115

原创 一个例子学懂搜索引擎(lucene)

一个例子学懂搜索引擎(lucene) 来源:javaeye 作者: jaker  其实,lucene是一个很容易上手的搜索引擎框架,传统的搜索引擎,涉及到爬虫,也就是爬取网页,然后对网页进行加工,也就是索引,最后用于搜索,lucene这个框架可以很方便的帮你做到后面两个步骤,也就是索引和搜索!本文尝试通过一个例子,使大家掌握lucene的使用核心方法,包括分词、索引、搜索不同的...

2012-07-07 17:47:09 107

原创 Lucene搜索结果排序问题

Lucene搜索结果排序问题(按时间倒序排的替代解决方法) 对于数据量大(索引文件大于50M)的索引,尽量不要用索引中的字段排序,要用索引ID排序(INDEXORDER);两者效率相差近10倍,以下从内存占用与CPU处理时间来比较:内存占用比较:图一:使用整型的唯一标识字段排序图二:使用索引ID(INDEXORDER)排序拿占用内存最多的对象来比较:我们可以...

2012-07-07 17:34:49 111

原创 TokyoCabinet和TokyoTyrant

TokyoCabinet应用服务器配置管理数据结构多线程 . 转载于:http://hi.baidu.com/ah%5F%5Ffu/blog/item/1f59571157625277cb80c44c.html 由于自己的单词水平退化到初中时代,因此先在单词上扫盲:· Tokyo,是东京,就是日本首都东京....(光这行就能雷走很多读者) ·Cabinet, 储物柜·Tyr...

2012-07-01 18:24:46 110

原创 hive的安装与使用

HadoopSQLApache. hive的安装非常简单。官方下载地址是:http://hive.apache.org。hive目前最新版本是0.7.0,支持Hadoop 0.20.1 及 0.20.2,由于我这里hadoop的版本是0.19.2,所以我就只能用之前的版本了。我使用的版本是0.5.0,可以支持hadoop 0.17到0.20。貌似现在官...

2012-07-01 00:15:45 108

原创 分布式key-value存储方案介绍:Cassandra,LightCloud,TokyoCabinet

Cassandra是一个非常可靠的大规模分布式存储系统。高度可伸缩的、一致的、分布式的结构化key-value存储方案,Facebook目前在使用此系统。 开发语言: Java 授权协议: Apache License 2.0 项目主页: http://incubator.apache.org/cassandra/ 文档地址: http://wiki.apache.org/...

2012-06-26 20:51:16 194

原创 .ttserver安装 + ttserver起停脚本(双主备) + java代码

1,下载tokyocabinet-1.4.46.tar.gz 下载tokyotyrant-1.1.41.tar.gz 要在本地连接可以选择下载tokyocabinet-java-1.22.tar.gz 详细安装文档http://www.162cm.com/p/tokyotyrant.html 2,解压缩后进入目录:先安装tokyocabinet-1.4...

2012-06-26 20:35:17 154

原创 Tokyocabinet数据库

Tokyo Cabinet是日本人平林幹雄开发的一款DBM数据库,该数据库读写非常快。但是单单的TC数据库,用处不大,宿主程序需要进行很多开发。TC的作者开发了Tokyo Tyrant(TT)这个网络服务程序,除了自己的二进制协议,还提供了现在被广泛应用的HTTP协议,memcached协议来访问TC数据库,这样一来,一下子就扩展了TC的使用范围,让TC从一个单纯的开发库变成了易用,高效的数据库系...

2012-06-26 19:59:50 248

原创 ulimit -SHn 65535 含义

ulimit -SHn 65535 含义linux下用ulimit设置连接数最大值,默认是1024.在高负载下要设置为更高,但最高只能为65535.ulimit只能做临时修改,重启后失效。可以加入ulimit -SHn 65535到 /etc/rc.local 每次启动启用。终极解除 Linux 系统的最大进程数和最大文件打开数限制:vim /etc/s...

2012-06-26 19:31:38 190

原创 查看linux下安装了哪些软件

1、查看是否安装了gcc 命令 #rpm -ql gcc #rpm -qa |grep gcc 参数:q-询问 a-查询全部 l-显示列表2、权限 安装和删除只有root和有安装权限的用户才可以进行。查询是每个用户都可以进行操作的。 ****************...

2012-06-26 19:30:04 3836

原创 吞噬大数据存储领域新机制——NoSQL模式解析

在过去几年,一种新兴的大型数据存储机制正吞噬大数据存储市场。这种存储解决方案与传统的RDBMS有显著的区别,它们被称之为NoSQL。 在NoSQL世界中有以下关键的成员,包括 ●Google BigTable、HBase、Hypertable ●Amazon Dynamo、Voldemort、Cassendra、Riak ●Redis ●CouchDB、...

2012-06-18 23:40:13 65

原创 关于 TCP 并发连接的几个思考题与试验

第一道初级题目是: 有一台机器,它有一个 IP,上面运行了一个 TCP 服务程序,程序只侦听一个端口,问:从理论上讲(只考虑 TCP/IP 这一层面,不考虑IPv6)这个服务程序可以支持多少并发 TCP 连接?答 65536 上下的直接刷掉。 具体来说,这个问题等价于:有一个 TCP 服务程序的地址是 1.2.3.4:8765,问它从理论上能接受多少个并发连接? 第二道进阶...

2012-06-09 21:30:08 93

原创 分布式系统中要部署几台 NTP 服务器才够用?

分布式系统中要部署几台 NTP 服务器才够用? . 本作品采用“Creative Commons 署名-非商业性使用-禁止演绎 3.0 Unported 许可协议(cc by-nc-nd)”进行许可。 http://creativecommons.org/licenses/by-nc-nd/3.0/ 分布式系统中各节点的时钟同步是必备的,虽然做不到完全同步(...

2012-06-09 21:28:26 285

原创 参加IT168架构师大会总结-转自阿里兄弟

9月9号和10号在北京参加了IT168主办的架构师大会,也很荣幸做了淘宝Java中间件之路的分享,分享的PPT已经在大会的官网放出了。这次两天的会议,跟新老朋友有了不少线下的交流和沟通,感觉不错。也听了好几个Session,有些没有听的,也是当时跟几个朋友在场外交流所致。 下面总结一下自己听的几个Session 余沛-自动化运维关系管理 ...

2012-06-09 21:12:52 106

原创 关于ActiveMQ集群

1 前提1. 下载jdk6(update24),解压,安装,下面用 $java_dir$ 表示JDK主目录2. 下载ActiveMQ5.4.2,解压,下面用 $activemq_dir$ 表示activeMQ主目录3. 下载AapcehANT1.8,解压,下面用 $ant_dir$ 表示ANT主目...

2012-06-08 13:43:38 75

原创 Redis千万级的数据量的性能测试

从上篇的图中可以猜测到还会有Redis 2.2.1 的测试,相同的测试环境,1K的数据量,使用ServiceStack.Redis客户端进行如下测试: 1) Set操作 2) Get操作 3) Del操作 每一套测试分别使用三个配置进行测试: 1) 绿色线条的是开启Dump方式的持久化,5分钟持久化一次 2) 蓝色线条是开启AOF方式的持久化,每秒写...

2012-06-05 22:50:44 144

原创 闲聊Redis

Redis 是一个有趣的项目,与其把它说成键值存储、键值缓存还不如把它说成是一个远程的数据结构。 Redis的项目名是Remote Dictionary Server的缩写,我觉得还不如叫Remote Data Structure Server – Redss 很多人把它和memcached比较,把它和tt比较,我觉得Redis在提供了诸多功能的同时又保证了代码的简洁和实现的简洁,...

2012-06-05 22:50:20 55

原创 Mongodb和KT的双机房灾备配置方案尝试

假设有2个机房(测试服务器2/3以及123/124)互为灾备(灾备机房在主机房对外服务时处于待命),应用都只连接自己机房的存储服务(mongodb1.6.5和kt 0.9.28),两个机房之间的存储服务需要相互同步,尝试方案如下: 编号 机器IP和端口 服务 备注1 192.168.2.2:10000 主机房Mongodb masterA 和8双向同步2 192.168.2.2:2...

2012-06-04 22:31:03 175

原创 mongodb分片集群(sharding with replica set)配置

一共有4台机器,各自挂接一个存储,希望实现: 1.尽量节约存储 2.高可用性 3.存储大量数据 配置方案: 1.每一台机器做一个分片的主数据库 2.每一台机器做一个分片的后备数据库 3.每一台机器做一个分片的仲裁服务 4.两个两个一组交叉作对方的后备 5.有三台机器开配置服务 6.有一台机器开路由服务(生产环境可以在每一台Windows App服务器...

2012-06-04 22:28:52 54

原创 一个局部变量导致的血案

今天接到一个临时任务,排查一个网站的诡异问题,是这样的,这个网站访问量很大,上了一个模块,在页面服务端发出一个http请求,读取另一个java网站提供的数据,上线之后发现一旦存在并发,或是比较多的访问,http请求就会失败,甚至在服务器上不能打开任何页面,但是服务器可以被ping通,也可以ping通其它网址(我没有看到真实的情况,只是听说有这样一个情况)。 对于...

2012-06-04 22:22:08 53

原创 Memcache and Mongodb

先说说自己对Memcache和Mongodb的一些看法,主要是抛砖引玉了,希望看到大家的意见和补充。 Memcache Memcache的优势我觉得总结下来主要体现在: 1) 分布式。可以由10台拥有4G内存的机器,构成一个40G的内存池,如果觉得还不够大可以增加机器,这样一个大的内存池,完全可以把大部分热点业务数据保存进去,由内...

2012-06-04 22:17:11 50

原创 Mongodb亿级数据量的性能测试

进行了一下Mongodb亿级数据量的性能测试,分别测试如下几个项目: (所有插入都是单线程进行,所有读取都是多线程进行) 1) 普通插入性能 (插入的数据每条大约在1KB左右) 2) 批量插入性能 (使用的是官方C#客户端的InsertBatch),这个测的是批量插入性能能有多少提高 3) 安全插入功能 (确保插入成功,使用的是SafeMode.Tr...

2012-06-04 22:11:48 61

原创 MINA,xSocket同样的性能缺陷及陷阱

MINA,xSocket同样的性能缺陷及陷阱,Grizzly better MINA,Grizzly[grizzly-nio-framework],xSocket都是基于 java nio的 server framework.这里的性能缺陷的焦点是指当一条channel上的SelectionKey.OP_READ ready时,1.是由select thread读完数据之后再分发给应用...

2012-05-31 09:57:08 190

原创 xSocket 教程

Connection-Oriented网络应用教程这是一个使用xSocket2.0编写connection-oriented网络应用的初学者教程。 如果您需要更多的帮助,不要犹豫,使用 xSocket的支持论坛 。[email protected]核心功能主要的抽象,以支持面向流的沟通是 连接 。 读取数据,并书面使用 IBlocki...

2012-05-31 09:53:19 1636

原创 activeMQ集群的使用与配置

Clustering(集群) ActiveMQ从多种不同的方面提供了集群的支持。 1、 Queue consumer clusters ActiveMQ支持订阅同一个queue的consumers上的集群。如果一个consumer失效,那么所有未被确认(unacknowledged)的消息都会被发送到这个queue上其它的consumers。如果某个consumer的处理...

2012-05-23 13:17:39 82

原创 Apache开源项目分类列表

分类 项目名 说明 开发语言服务器(共20) Apache HTTP Server 全球第一HTTP服务器 C/C++ Tomcat Java的Web服务器 Java James 邮件服务器 Java SpamAssassin 反垃圾邮件 C/C++ Perl Apache的Perl编程语言支持 C/C++ Tcl TCL脚本语言 C/C++ Directory ...

2012-05-23 13:17:27 105

原创 Hbase分析报告

本文基于环境hadoop-0.16.4 和 hbase-0.1.3 编写Hbase是一个分布式开源数据库,基于Hadoop分布式文件系统,模仿并提供了基于Google文件系统的Bigtable数据库的所有功能。Hbaes的目标是处理非常庞大的表,可以用普通的计算机处理超过10亿行数据,并且有数百万列元素组成的数据表。Hbase可以直接使用本地文件系统或者Hadoop作为数据...

2012-05-23 13:17:15 235

原创 序列化与反序列化

序列化与反序列化,有如下结论:1. 当父类继承Serializable接口,所有子类都可以被序列化2. 子类实现了Serializable接口,父类没有,父类中的属性不能序列化(不报错,数据会丢失),但是子类中属性人能正确序列化3. 如果序列化的属性是对象,这个对象也必须实现Serializable接口,否则会报错4. 在反序列化时,如果对象的属性有修改或删减,修改的部分属性会丢失...

2012-05-22 09:52:18 109

原创 zookeeper集群安装

建立安装目录mkdir -p /local/software/zookeeper/cd /local/software/zookeeper/1.2) 下载压缩包 curl -O http://apache.oss.eznetsols.org/hadoop/zookeeper/zookeeper-3.3.1/zookeeper-3.3.1.tar.gz 1.3) 解压缩文件 tar xzf zo...

2012-05-22 09:51:52 51

空空如也

空空如也

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

TA关注的人

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