
常用算法
清风Baron
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
红黑树
前言 介绍另一种平衡二叉树:红黑树(Red Black Tree),红黑树由Rudolf Bayer于1972年发明,当时被称为平衡二叉B树(symmetric binary B-trees),1978年被Leonidas J. Guibas 和Robert Sedgewick改成一个比较摩登的名字:红黑树。 红黑树和之前所讲的AVL树类似,都是在进行插入和删转载 2016-03-15 21:21:23 · 401 阅读 · 0 评论 -
海量数据排序问题
今天突然涉及到一个海量数据排序的问题,所以学习了一下。下面分享一下。 前提条件:受内存限制,数据不能全部放入内存中排序。 什么叫海量数据? 海量数据就是就是大到我们的设备资源不能够一次性处理,需要分n次处理。 我们就以一亿个整数排序为例 排序 假设要排序的数据在一个文件中,文件很大,不能全部放入内存,要求由小到大排序。 1. 首先,将文件分为 n 块(编号为D1-原创 2016-03-17 22:27:22 · 884 阅读 · 0 评论 -
HAProxy负载均衡的event_accept函数源码分析
相信不少阅读过HAProxy代码的同学都感到头疼吧?说实话,HAProxy的代码风格属于比较烂的一种,一个函数大几百行,甚至几千行的情况比比皆是。可能是Willy Tarreau本人把精力集中在算法方面,对其它方面没那么重视的缘故吧。如果想把HAProxy的主要逻辑看明白,或者把文章写清楚,我建议要对它进行一些删减,最好能重构一下。下面,以event_accept()函数为例,尝试对其进行简单的分转载 2016-03-19 17:46:06 · 2452 阅读 · 0 评论 -
HAProxy的独门武器: 弹性二叉树ebtree
1. HAProxy和ebtree简介 HAProxy是法国人Willy Tarreau个人开发的一个开源软件,目标是应对客户端10000以上的同时连接,为后端应用服务器、数据库服务器提供高性能的负载均衡服务。 在底层数据结构方面,旧版本HAProxy曾经使用过红黑树,用于任务调度、负载均衡等方面。但是Willy Tarreau认为,在事件响应非常频繁的情况下,任务插入、删除的频率非常高,转载 2016-03-19 17:56:42 · 1734 阅读 · 0 评论 -
LVS集群的负载调度
LVS集群的负载调度 章文嵩 (wensong@linux-vs.org) 2002 年 5 月 本文主要讲述了LVS集群的IP负载均衡软件IPVS在内核中实现的各种连接调度算法。针对请求的服务时间变化很大,给出一个动态反馈负载均衡算法,它结合内核中的加权连接调度算法,根据动态反馈回来的负载信息来调整服务器的权值,来进一步避免服务器间的负载不平衡。 1.前言 在上一篇文章中,我们主转载 2016-03-19 23:02:08 · 276 阅读 · 0 评论