logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Linux内核链表实现剖析

Linux内核使用环形双向链表,无所谓头结点和尾节点。内核链表详细信息见 include/ linux / list.h 。 1. 定义和初始化内核链表 struct list_head {      struct  list_head *prev, *next ;} ;list_head不包含数据,一般内嵌于其它数据结构中。定义list_headstru

#list#数据结构#linux
linux内核定时器

struct list_head {        struct list_head *next, *prev;} 定时器(内核定时器、动态定时器)由结构timer_list表示,定义在文件linux/timer.h中。struct timer_list {            struct list_head entry; /* 定时器链表的入口 */

#list
linux内核空间和用户空间详解

linux驱动程序一般工作在内核空间,但也可以工作在用户空间。下面我们将详细解析,什么是内核空间,什么是用户空间,以及如何判断他们。Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G。Linux内核将这4G字节的空间分为两部分。将最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF),供内核使用,称为“内核空间”。而将较低的3G

#linux
Nginx的负载均衡 - 一致性哈希 (Consistent Hash)

当后端是缓存服务器时,经常使用一致性哈希算法来进行负载均衡。使用一致性哈希的好处在于,增减集群的缓存服务器时,只有少量的缓存会失效,回源量较小。在nginx+ats / haproxy+squid等CDN架构中,nginx/haproxy所使用的负载均衡算法便是一致性哈希。我们举个例子来说明一致性哈希的好处。假设后端集群包含三台缓存服务器,A、B、C。

#负载均衡
Nginx的负载均衡 - 加权轮询 (Weighted Round Robin) 上篇

当在upstream配置块中没有指定使用的负载均衡算法时,默认使用的是加权轮询。按照上述配置,Nginx每收到7个客户端的请求,会把其中的5个转发给后端a,把其中的1个转发给后端b,把其中的1个转发给后端c。这就是所谓的加权轮询,看起来很简单,但是最早使用的加权轮询算法有个问题,就是7个请求对应的后端序列是这样的:{ c, b, a, a, a, a, a },会有5个连续的请求落在后端a上,分布

#负载均衡
负载均衡服务器简介

HAProxy HAProxy是一个特别适用于高可用环境的TCP/HTTP开源的反向代理和负载均衡软件。在7层负载均衡方面的功能很强大(支持cookie track,header rewrite等),支持双机热备,支持虚拟主机,支持健康检查(通过patch可以支持ECV),同时还提供直观的监控页面,可以清晰实时的监控服务集群的运行状况。同时支持Linux 2.6内核中Syste

#服务器#负载均衡#集群
Nginx的负载均衡 - 整体架构

Nginx版本:1.9.1我的博客:http://blog.csdn.net/zhangskd 什么是负载均衡 我们知道单台服务器的性能是有上限的,当流量很大时,就需要使用多台服务器来共同提供服务,这就是所谓的集群。负载均衡服务器,就是用来把经过它的流量,按照某种方法,分配到集群中的各台服务器上。这样一来不仅可以承担更大的流量、降低服务的延迟,还可以避免单点故障造成服务

#负载均衡
Nginx的负载均衡 - 最少连接 (least_conn)

我们知道轮询算法是把请求平均的转发给各个后端,使它们的负载大致相同。这有个前提,就是每个请求所占用的后端时间要差不多,如果有些请求占用的时间很长,会导致其所在的后端负载较高。在这种场景下,把请求转发给连数较少的后端,能够达到更好的负载均衡效果,这就是least_conn算法。

#负载均衡
Nginx的负载均衡 - 保持会话 (ip_hash)

Nginx版本:1.9.1我的博客:http://blog.csdn.net/zhangskd 算法介绍 ip_hash算法的原理很简单,根据请求所属的客户端IP计算得到一个数值,然后把请求发往该数值对应的后端。所以同一个客户端的请求,都会发往同一台后端,除非该后端不可用了。ip_hash能够达到保持会话的效果。ip_hash是基于round robin的,判断后端是否

#负载均衡
速度之王 — LZ4压缩算法(三)

LZ4是一个快速的无损压缩算法,单核的压缩速度超过400MB/s,单核的解压速度超过1GB/s。LZ4也适用于多核的情况,压缩速度能成倍的提高,解压速度几乎达到RAM的速度限制。文本主要分析LZ4的原理和实现。

    共 14 条
  • 1
  • 2
  • 请选择