How ElasticSearch Tried to Scaling Lucene

拖拖拉拉,终于完成了。 介绍了elasticsearch核心的几个分布式设计概念,对于了解elasticsearch非常有用。 这部分内容是lukas-vlcek 根据shay 的slide Road to a Distributed Search Engine 整理的。 我翻译了下。 链接在此: http://www.elasticsearch.cn/guide/concepts/scaling-lucene/ Scaling Lucene Building Blocks Partitioning Replication Transaction Log

logstash,nginx日志,grok pattern调试

#Nginx日志格式定义

ElasticSearch插件更新

carrot2文本聚类插件 https://github.com/medcl/elasticsearch-carrot2 支持es版本到0.20.x ik分词插件 https://github.com/medcl/elasticsearch-analysis-ik 1.集成最新的ik中文分词 IK Analyzer 2012 FF 版本:http://linliangyi2007.iteye.com/blog/1703916 2.分词模式可配,支持细粒度和智能分词两种切分模式 配置如下(elasticsearch.yml):

nginx限速

nginx限制ip并发数和访问频率以及下载速度 限制并发 nginx版本1.1.8 之后 ngx_http_limit_zone_module  改名为: ngx_http_limit_conn_module http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn limit_zone指令改成limit_conn_zone了

往graphite灌数据

http://graphite.readthedocs.org/en/0.9.10/feeding-carbon.html 找了半天,总算找到文档地址了,汗。 Getting your data into Graphite is very flexible. There are three main methods for sending data to Graphite: Plaintext, Pickle, and AMQP. The plaintext protocol: 格式如下:

cargo默认监听端口2003,用nc测试一下

The pickle protocol: 这个协议,支持多个监控数据的提交,监听端口2004 格式

例子:

Graphite修改默认端口

graphite默认使用8080端口,被占了,如何修改呢? vi /opt/graphite/bin/run-graphite-devel-server.py

修改8080为你的端口就行了。 启动graphite-web

django修改方法 python manage.py runserver 80 python manage.py runserver 0.0.0.0:80

ESCC#1 ElasticSearch国内开发者线下交流活动

第一届elasticsearch国内开发者线下交流活动圆满结束了,尽管当天外面下着小雪,还是到场了30几位童鞋,甚至有不远从天津远道而来的,感谢大家的捧场,另外还要大力感谢人人网的饶兄,是他提供的场地。 这次线下交流吧,说是线下交流,其实主要是我给大家做培训,希望下次再搞线下交流,一定要多一点人分享,好东西,要分享。 下面是培训的内容,第一部分是基础的关于ES的介绍,后面的部分是ES分布式架构设计和调优的一些东西。 以前是参加过各种交流活动,但是组织这个线下交流活动还是头一次,哈哈,最后应该合影留念的,哎,搞忘记了。 示例程序及fiddler调试记录下载: misc Elastic Search Training#1 (Brief Tutorial)-ESCC#1 ElasticSearch Training#2 (Advanced Concepts)-ESCC#1

Multi Field Type 介绍及使用方法

洋洋洒洒写了几千字,结果发布提交丢了,很郁闷。 捡起来重新写吧,尼玛。 翻译了一下multi-field,在线在这里http://www.elasticsearch.cn/guide/reference/mapping/multi-field-type.html 以后翻译的文章都贴到博客里面吧,省的藏得太深,大家都找不到。 博客里面会补充详细的使用方法。 下面是multi-field的介绍:

freeswitch&ESL事件处理

FreeSwitch里面有一系列的事件,有通道级别的,如channel的创建、销毁、挂断、接听,又或者freeswitch系统级别的事件,如重新加载xml配置文件,freeswitch服务关闭等等,都有相应的事件发出,你使用mod_event模块,并订阅相应事件。 完整的事件列表:http://wiki.freeswitch.org/wiki/Event_List 有了这些事件之后,你就可以灵活控制freeswitch了,非常灵活,在通话的每个阶段,处理相应的业务逻辑,想实现什么功能都没有问题了,比如计费、入库、定时提醒、强插、转移,各种复杂的业务逻辑基本上都能实现,哈哈,嗷嗷强悍。