- 博客(15)
- 资源 (4)
- 收藏
- 关注
原创 zookeeper应用场景
zookeeper采用了fast paxos算法,该算法比paxosa算法好的地方是解决了几个proposer交替发出提案,导致没有一个提案被批准的活锁问题。为什么需要zookeeper?我想有以下几个应用场景:1. 配置管理如果我们有很多服务程序需要有一些配置信息,可以保存在zookeeper的对应的znode中。zookeeper保证多个服务器同时对znode里面信息的修改是一致的。当然也可以
2015-02-28 13:32:00 3931
原创 Paxos算法介绍
Paxos算法是为了实现分布式环境中为保证数据的一致性而设计的,在一个分布式系统中,通过投票的方式来确定一个值(决议)。只不过这个步骤分为两步:准备阶段(prepare)和批准阶段(accept)。同时又分为若干角色,以下都可以兼任。proposer 信使acceptor 决策者learner 学习者(学习最终决策)准备阶段:一个proposer向多个acceptor发出提案,每个提案有一个数字编
2015-02-28 00:42:10 1996
原创 Ubuntu 14.04 conkeror启动问题
最近Ubuntu 14.04 几次系统升级后,conkeror启动出错:Error initializing.Error: Error opening input stream (invalid filename?): chrome://conkeror/content/io解决方法是修改/opt/conkeror/debian/conkeror/usr/share/conkeror/compo
2015-02-27 12:57:48 2040
原创 emacs 24.4.1 org-mode 日程管理
几个基本快捷键转换关键字用来将一个文本转换成TODO, DONE 或者转换回来应该用Shift + 左/右键scheduled & dead line timeC-c C-s & C-c C-d这时会打开日历,用Shift + 左/右键移动日期Agenda 命令M-x org-agenda时间线展示日程L 命令这个特别有用, 能一下在按照日期把所有做的事情排列,由于颜色的区分,一下子就能看到哪天
2015-02-23 22:39:16 3779 2
转载 编译安装emacs 24.4
http://ubuntuhandbook.org/index.php/2014/10/emacs-24-4-released-install-in-ubuntu-14-04/
2015-02-23 14:47:32 2132
原创 git diff odt文件
odt文件其实由若干文本文件组成,git 经过一些配置是可以支持diff的。step 1:在git项目中i添加.gitattributes文件, 内容如下:*.odt diff=odtstep 2:在.git/config文件中添加下面一段:[diff "odt"] binary = true textconv = /usr/local/bin/odt-to-txt
2015-02-23 14:02:03 2254
原创 list作为map使用
用lookup查找key> (set 'l '(("a" "b") ("c" "d")))(("a" "b") ("c" "d"))> (lookup "a" l)删除key/value用pop-assoc> (pop-assoc "a" l)("a" "b")> l(("c" "d"))
2015-02-11 18:28:51 1958
原创 org mode 使用latex
org mode写技术文章,经常需要编写数学公式和希腊字母。下面介绍e如何使用.希腊字母可以使用转义符获得的h结果是:Angles are written as Greek letters α, β and γ.
2015-02-08 15:29:16 7817
原创 org mode 排版技巧
标题* 开头,1个是一级标题,2个是二级标题启用缩进模式输入命令,这样,所有的标题层次结构都用缩进拉开横向距离。org-indent-mode枚举- 开头 或者 + 开头如何调整缩进,在新加一行的时候,用tab可能不是你想要的缩进,可以通过Alt + 左/右键来调整缩进如何变换- 或者 + 或者其他,可以通过shift + 左/右建
2015-02-07 00:09:32 10794
原创 MongoDB vs TokuMX 性能测试
参考文章:http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/重点是关注三个方面:1. 如何测试2. 如何用工具获取测试数据3. 如何进行replacation集群的高性能配置
2015-02-05 00:12:00 2585
原创 MongoDB何时不该使用
这篇文章很认真的举了在使用MongoDB遇到的困难,和最终抛弃MongoDB的原因。花了不少时间看完,不过还没有仔细看评论,等哪天不忙了,可以再分析一下里面的信息。这里简单列举一下作者的观点:1. MongoDB的document适合存储自包含数据,不适用于document之间有Join的场景,在这种场景中,RDBMS + Cache最有效,既没有冗余数据,又能够通过后台应用自动更新缓存的方式提高
2015-02-04 23:42:36 2630
原创 MongoDB upsert操作并发的原子性
在用C++对MongoDB执行update操作的时候,如果设置了upsert参数为true,则会自动插入不存在的数据。在高并发环境下,会导致数据重复。解决方法是为查询条件添加unique index, 参考官方文档:http://docs.mongodb.org/manual/core/write-operations-atomicity/http://docs.mongodb.org/manua
2015-02-03 18:28:53 10156
原创 newlisp kmeans算法
kmeans是经典的聚类算法,newlisp提供了函数,同样分为train和query两个阶段。kmeans的算法目的是将训练数据划分成k个类,按照一定的算法动态的选择k个中心点。下面是个例子,我添加了中文注释:(set 'data '((6.57 4.96 11.91 0.9) (2.29 4.18 1.06 0.8) (8.63 2.51 8.11 0.7) (1.85 1.89 0.
2015-02-03 17:25:39 1713
原创 指数平滑算法
对时间序列的预测,用的最多的是指数平滑算法,算法不复杂。首先理解一个基本公式: 指数平滑法的基本公式是: 式中,St--时间t的平滑值;yt--时间t的实际值;St − 1--时间t-1的平滑值;a--平滑常数,其取值范围为[0,1];说明:1. 此公式用t-1时刻的平滑值和t时刻的hi实际值来计算t时刻的平滑值2. a是系数,越接近1的话,远期数据对于计算结果影响越小,越接近0,则影响越大用ne
2015-02-02 17:51:42 6814
原创 newLISP bayes算法使用
理解条件概率在理解条件概率的前提下,参考i之前的n文章理解条件概率两阶段算法-训练和查询现在来看看大名鼎鼎的bayes算法。bayes分成训练和查询两个阶段。训练指的是对样本数据集的训练,从而找出规律。newlispe提供了bayes-train函数训练先来看看函数原型:syntax: (bayes-train list-M1 [list-M2 ... ] sym-context-D)list-M
2015-02-01 12:16:27 1766
JSF2自定义组件编程系列 第五部分 源代码
2011-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人