自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于lucene的内嵌式kv存储

应用背景诸多业务场景下,都有使用kv型式存储数据供快速查询的需求。正常的做法有使用HashMap存入内存,或者存入外部的nosql KV数据库/缓存。使用HashMap做KV存储,速度快,但是如果数据量达到百万及至千万级时,HashMap必将占用大量的java堆内存,给应用带来极大的内存回收压力。外部kv存储,以堆外(offHeap)存储的方式让我们的应用免于内存回收之忧,但其查...

2016-10-24 21:53:39 607

真实流量压测工具 tcpcopy应用浅析

极为合理的测试需求“双一十”将近,作为一个电商应用的开发人员,也是时候操心一下自己管理服务的性能问题了。平时跑得好好的服务应用,能否承受的住双十一,尤其是午夜时刻的流量冲击?到底是要加机器还是要做服务降级?机器加多少?服务降级降多少.....为回答这一系列的问题,你首先要知道服务的极限是多少。按我们这种非专业测试人士的设想,测试方法应满足如下需求:给出简单可量化的测试结果,最好直接是...

2015-10-17 21:38:02 503

lucene事务(译与解)

本文分两部份,第一部份为译:是对是对于lucene事务的一篇佳作《Transactional Lucene》的翻译。第二部份为解:是本人对一文中提到一些概念在源码层次的一些理解分析,参考lucene源码版本为4.10.4。《Transactional Lucene》中还提到了多commit在实际生产中的一些妙用,值得参考。一、译很多用户并不了解Lucene API的事务语义及其在搜索应...

2015-10-07 23:30:12 276

原创 开源服务内部监控系统(二) ganglia简介

在上文 开源服务内部监控系统(一),简单介绍了一下开源监控系统Graphite。本篇将简单介绍一下颇有名气的Ganglia与个人的使用体验。从功能上讲,Ganglia远比Graphite强大。除了监控服务内部状态之外,Ganglia本身就能做到对服务器节点状态(包括CPU使用,load,memory占用,network占用)的整体监控。Ganglia的架构Ganglia是一个可扩展的,...

2015-08-28 23:32:09 410

原创 开源服务内部监控系统(一) graphite简介

开源监控系统,大名鼎鼎的有nagois,catis。公司就有运维采用nagios作服务器与服务状态监控,同时结合插件提供邮件短信报警功能;catis通过snmp协议对服务器进行监控,利用RRDTool绘制漂亮的报表供你做性能分析。这些是运维人员的利器,然而服务开发人员却很少去使用这样的工具,因为它们难以做到对我们开发的服务内部运行状态的监控。假如,你想监控自己开发服务的响应时间,五分钟一个点去...

2015-08-22 22:02:35 643

原创 从批处理到流式计算的罪与罚 ——storm实践总结

近期是对storm做了不少的研究与分享,包括我的前一篇文章的《数据处理神器storm的理解与思考 ——让你的数据化作行云流水》,无论是看官方的文档,还是看其他第三方文献介绍推荐,总会让你觉得各种高端先进,毕竟它代表了一种比较新潮的设计思想,刚开始接触了解的人更会跃跃欲试。然而storm是否真如看上去那么美?还是说,storm只是另一个喜好新鲜事物的开发者把玩的玩物?这些都需要亲自尝试过才会得知...

2015-04-27 23:40:05 284

原创 数据处理神器storm的理解与思考 ——让你的数据化作行云流水

大数据之殇要问storm是什么?简单答复就是:storm对于实时计算的相当于hadoop对于批处理。两者代表的对大数据处理的两种不同方式与态度,即hadoop代表的批处理方式,与storm为代表的流式计算。先不扯流式计算是个什么鬼。如果说到大数据分析,大家首先直观就会想到hadoop的批处理方式。不管hadoop的图标上面的大象画得有多萌,出现在大家脑中的画面里的,肯定都会有一个庞然大物,...

2015-04-05 22:28:49 205

闲扯kafka mq

本文主要讲解关于kafka mq的设计思想及个人理解。关于kafka的详细信息,大家可以参考官网的文献http://kafka.apache.org/documentation.html这是一篇相当不错的文章,值得仔细研读。 第一个问题:消息队列(Message Queue)是干嘛用的?首先,要对消息队列有一个基本的理解。不少人虽然在用消息队列,却并没有搞清楚消息队列是干嘛的。...

2015-02-25 21:41:57 242

原创 IK分词器原理与原码分析

本文链接: http://quentinXXZ.iteye.com/blog/2180215引言     做搜索技术的不可能不接触分词器。个人认为为什么搜索引擎无法被数据库所替代的原因主要有两点,一个是在数据量比较大的时候,搜索引擎的查询速度快,第二点在于,搜索引擎能做到比数据库更理解用户。第一点好理解,每当数据库的单个表大了,就是一件头疼的事,还有在较大数据量级的情况下,你让数据库去...

2015-01-26 21:38:36 597

Java实现LRU缓存

原文链接:http://quentinXXZ.iteye.com/blog/21763451、CacheCache对于代码系统的加速与优化具有极大的作用,对于码农来说是一个很熟悉的概念。可以说,你在内存中new 了一个一段空间(比方说数组,list)存放一些冗余的结果数据,并利用这些数据完成了以空间换时间的优化目的,你就已经使用了cache。有服务级的缓存框架,如memcach...

2015-01-15 20:17:13 373

写于2015年1月1日

 2014年是结束学生生涯,步入职场的一年。让我自己都感到意外的,我的第一次跳槽居然也发生在这一年。生活本不是随波逐流,不论别人看来,我不放弃对自己命运的主动权,我为自己不足道的奋斗所换得的有限自由与任性感到骄傲。2014经历不少,但远远不够。可以确信无疑的一点是,过去的我浪费了太多的时间,即便忙碌,也是瞎拆腾。这是2015我要改变的一个状态。2014仍有遗憾,还算精彩,日子过得比...

2015-01-01 21:09:18 118

原创 如何利用java反射机制获得private class与其它package中default class的实例

本文链接:http://quentinXXZ.iteye.com/blog/2159052     昨天,一个搞android安全方向的朋友让我帮忙试一下java的反射,要求就是:利用java反射机制获得private class与其它package中default class的实例。这确实是一个比较奇葩的要求,估计也就是android这种平台加上是安全方向的,才常会有这样的需求。...

2014-11-21 20:42:21 613

原创 关于solr build search分离的讨论以及re-indexing的实现

本文链接: http://quentinXXZ.iteye.com/blog/2153210场景需求与分析我们的做法,一般将索引构建大致分为两类操作,一为全量索引构建,二为增量索引构建。使用solr建索引,一般会在初始状态的时候,进行一次全量构建,根据当前数据源的整体数据生成一套完整索引,可提供服务,但为了保证索引数据的完整且最新,还需要增量索引,使得数据源的改变(包括记录的增加,修...

2014-11-06 21:19:15 205

Solr源码掘金之 SolrCloud中的zookeeper使用分析

 本文链接: http://quentinXXZ.iteye.com/blog/2149891上一周,对公司搜索引擎工作流程的做改造工作。涉及到不同角色服务器之间的沟通工作。我们试图应用zookeeper到我们的场景,实现应用模块之间的解耦。本文深入到solr源码,从中掘金,看看solr是如何使用zookeeper的。在做本次改造的时候,公司同事对于zookeeper的使用,提供...

2014-10-30 19:52:11 143

如何对10亿数据量级的mongoDB作高效的全表扫描

 本文链接: http://quentinXXZ.iteye.com/blog/2149440一、正常情况下,不应该有这种需求首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。说一下,我的应用场景:用...

2014-10-29 18:39:31 2813

原创 MongoDB索引知识点的整理

 链接地址: http://quentinXXZ.iteye.com/blog/2125433内容主要来自《 MongoDB The Definitive Guide 2nd Edition》最基本的建索引命令如下:db.users.ensureIndex({"username" : 1})根据username建立索引。1表示升序存储。MonogDB每个一个colle...

2014-10-16 19:29:06 158

原创 ActiveMq -Rejecting received message

     链接地址http://quentinXXZ.iteye.com/blog/2126684     ActiveMq在stop操作,停止接收时,出现如下提示:2014-09-23 20:26:23,233  WARN [ActiveMQ Session Task-1] (AbstractMessageListenerContainer.java:461) - Reje...

2014-10-09 15:35:33 552

原创 solrcloud 配置与搭建过程

本文的配置示例采用单台zookeeper与两台solr实例(即两个tomcat启动),collection分为两个shard(分片),每个shard两个replia(复本),本例使用版本为solr 4.4, zookeeper 3.4.6。实际生产不会采用单台zookeeper,读者可自行扩展。     本文链接地址:http://quentinXXZ.iteye.com/blog/2...

2014-09-20 10:46:03 152

原创 zookeeper学习笔记

 Unlike a typical file system, which is designed for storage, ZooKeeper data is kept in-memory, which means ZooKeeper can achieve high throughput and low latency numbers.与其他文件系统不同,zookeeper的数据存储于内...

2014-09-16 19:30:30 106

原创 solr 技术分享稿

          这是本周在公司进行技术分享的稿件。也算是本人对最近一段时间内部份工作学习内容的一次总结。    链接地址:http://quentinXXZ.iteye.com/blog/2116127 1、            Solr 简介1.1  solr与lucene²  Solr是一个基于Lucene java库的企业级搜索服务器,包含XML/HT...

2014-09-14 21:28:14 206

原创 [转] ActiveMq why and when

 以下内容是对 《ActiveMq In Action》的翻译 第二章的部份翻译,体现了ActiveMq的核心思想,转自1.2使用ActiveMQ:为什么,何时 时间回到2003年,一群开源开发者集合在一起形成了Apache Geronimo。之后,他们发现当前没有好用的使用BSD-style许可协议的消息代理器。Geronimo是由于java EE兼容性需要一个JMS实现。所以一...

2014-09-04 20:01:40 105

原创 ActiveMq NON_PERSISTENT与PERSISTENT以及 durable subscription(持久订阅)的理解

 http://quentinXXZ.iteye.com/blog/2113458 实验一:public class Producer { public static void main(String[] args) { String user = ActiveMQConnection.DEFAULT_USER; String password = ...

2014-09-04 19:29:35 105

原创 solr date 时区 8小时时差问题

文章地址:http://quentinxxz.iteye.com/blog/2102604初学solr在schema 里面配置并使用sorl的date或者tdate类型,具体类型与使用如下: <field name="tdate_field" type="tdate" indexed="true" stored="true" /> <fi...

2014-08-11 20:00:24 526

solr master-slave replication

文章地址:http://quentinxxz.iteye.com/blog/2102592    本文所述的索引replication方式是通过Http传输由,由solr1.4引入的。想了解更多Solr1.1引入的基于 ssh/rsync实现的replication功能,请查询CollectionDistribution。注意Solr4.0的SolrCloud的replication是通过推...

2014-08-11 19:03:40 167

原创 Jave 中Date Time Timestamp的关系

文章地址:http://quentinxxz.iteye.com/blog/2102010java.util.Date       The class Date represents a specific instant in time, with millisecond precision.       精度从javadoc 上来,Date是精确到微秒的。      ...

2014-08-09 11:43:48 274

原创 solr schema.xml 字段解析

文章地址:http://quentinxxz.iteye.com/blog/2100628fieldType  < fieldType name =" string " class =" solr.StrField " sortMissingLast =" true " omitNorms =" true " />sortMissingLast和sortM...

2014-08-05 19:38:38 225

原创 solr dataImportHandler mysql增量索引

文章地址:http://quentinxxz.iteye.com/blog/2100621 前一篇中全量索引的data-config.xml 的配置为<dataConfig> <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" ...

2014-08-05 19:20:03 95

原创 利用solr的 DataImportHandler从mysql数据库建立索引

文章地址:http://quentinxxz.iteye.com/blog/2100619 本文所有实验在solr4.4上进行 quickStart 参考 http://wiki.apache.org/solr/DIHQuickStart步骤1: 首先修改solrconfig.xml 加往上DataImportHandler的配置<requestHandle...

2014-08-05 19:17:17 161

空空如也

空空如也

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

TA关注的人

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