heiyeluren的blog(黑夜路人的开源世界)
个人技术微博: weibo.com/heiyeluren 【微信公众号:heiyeluren2012】 [原]【原创】一步一步理解Paxos算法 heiyeshuwu 发表于 2015-01-01 00:00:00 算法 一步一步理解Paxos算法作者:jw (360电商技术组)背景Paxos算法是Lamport于1990年提出的一种基于消息
个人技术微博: weibo.com/heiyeluren 【微信公众号:heiyeluren2012】
heiyeshuwu 发表于 2015-01-01 00:00:00
算法
一步一步理解Paxos算法作者:jw (360电商技术组)背景Paxos算法是Lamport于1990年提出的一种基于消息传递的一致性算法。由于算法难以理解 起初并没有引起人们的重视,使Lamport在八年后重新发表到TOCS上。即便如此paxos算法还是没有得到重视,2001年Lamport用可读性比较强的叙述 性语言给出算法描述。可见Lamport对paxos算法情有独钟。近几年paxos算法 …阅读全文
heiyeshuwu 发表于 2014-12-30 10:43:05
PHP
深入PHP内核关于作者:王帅,腾讯企业QQ SaaS团队Leader。深入PHP内核(一)——弱类型变量原理探究摘要:PHP作为一门简单而强大的语言,能够提 供很多Web适用的语言特性,而从本期《问底》开始,王帅将从实践出发,带你弄清PHP内核中一些常用的部分,比如这里的“弱类型变量原理”。PHP是一门简单而强大 的语言,提供了很多Web适用的语言特性,其中就包括了变量弱类型,在弱类型机制下,你能 …阅读全文
heiyeshuwu 发表于 2014-12-30 10:31:10
性能
【导读】徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设。最近,PH P7和HHVM的性能之争成为了一个讨论热点,它们都在提升PHP执行性能方面取得了突破性的进展。这篇文章,参考了两个社区的技术新进展,为大家科普和介绍它们的性 能之争。 PHP语言的排名变化根据“TIOBE编程语言排行榜”(榜 …阅读全文
heiyeshuwu 发表于 2014-12-26 12:17:20
开源爬虫Scrapy的学习及应用作者:swb (360电商技术组) 一、 背景目前我们正在使用的一套爬虫框架是使用java开发的一套复杂的分布式电商垂直爬虫 ,它主要优点是流程完善、可用性高、易部署。缺点是强定制化、维护成本略高、通用性不是很好。基于这套爬虫的缺点,小组内考虑是否可以开发一套通用性好,而且易扩展、 部署和维护成本低的爬虫来提供给其他人员或者部门来使用。就 …阅读全文
heiyeshuwu 发表于 2014-12-01 00:00:00
数据挖掘 算法
国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART.不仅仅是选中的十大算法,其实参加评选的18种算法,实际上随 …阅读全文
heiyeshuwu 发表于 2014-11-27 21:55:02
1. 背景介绍许多公司的平台每天会产生大量的日志(一般为流式数据,如,搜索引擎的pv,查询等),处理这些日志需要特定的日志系统,一般而言,这些系统需要具有以 下特征:(1) 构建应用系统和分析系统的桥梁,并将它们之间的关联解耦;(2) 支持近实时的在线分析系统和类似于Hadoop之类的离线分析系统;(3) 具有高可扩展性。即:当数据量增加时,可以通过增加节点进行水平扩展。本文从设计架构,负载均衡, …阅读全文
heiyeshuwu 发表于 2014-11-27 11:46:20
golang erlang
Go vs Erlang因为 云巴 系统对高并发、低延迟的需求,我们对各个语言、平台做了很多的调研比较工作。这自然就包括致力于开发高并发应用的 Go 和 Erlang。并发Go 对高并发的支持通过 goroutine 实现。goroutine 可以理解为轻量级的 线程(thread)。同一个 Go 应用创建的 goroutine 共享地址空间。Erlang 的高并发通过轻量级 …阅读全文
heiyeshuwu 发表于 2014-11-25 14:01:20
rpc 系统
Finagle是一个协议不可知的,异步的,用于 JVM 的 RPC 系统,它使得在 Java、Scala 或任何基于JVM 的语言重构建鲁棒的客户端和服务器非常容易。在 Twitter.com上面即使是渲染最简单的网页也需要十多个说着不同协议的网络服务的合作。比如,为了渲染首页, 应用程序需要向社交网络图(SocialGraph)服务、Memcached、数据库、以及许多其它网络服务发出请 …阅读全文
heiyeshuwu 发表于 2014-11-23 00:00:00
架构 数据库
文章来源:列式数据库之infobright[代码片段][代码 片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码片段][代码 片段][代码片段][代码片段][代码片段]Infobright构架分析 Infob …阅读全文
heiyeshuwu 发表于 2014-11-20 11:17:50
郑重声明:本篇博客是自己学习 Leveldb 实现原理时参考了郎格科技系列博客整理的,原文地址: ndex.asp?SortID=12,只是为了加深印象,本文的配图是自己重新绘制的,大部分内容与原文相似,大家可以浏览原始页面 :-),感兴趣的话可以一起讨论 Leveldb 的实现原理!LevelDb日知录之一:LevelDb 101 说 …阅读全文
heiyeshuwu 发表于 2014-11-20 11:16:29
处理 架构
随着互联网、移动互联网和物联网的发展,谁也无法否认,我们已经切实地迎来了一个海量数据的时代,数据调查公司IDC预计2011年的数据总量将达到1.8万亿GB, 对海量数据的分析已经成为一个非常重要且紧迫的需求。大数据分析的分类按照数据分析的实时性,分为实时数据分析和离线数据分析两种。实时分析实时数据分析一般用于金融 、移动网络、物联网和互联网B2C等产品,往往要求系统在数秒内返回上亿行数据的分析,从 …阅读全文
heiyeshuwu 发表于 2014-11-18 16:16:23
算法
大数据计算:如何仅用1.5KB内存为十亿对象计数 - Hyper LogLog 算法 Big Data Counting: How To Count A Billion Distinct Objects Using Only 1.5KThis is …阅读全文