自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

计算机专业同学的充电站。

阿里巴巴Java技术专家一枚~

  • 博客(13)
  • 资源 (24)
  • 收藏
  • 关注

原创 Nginx学习之十四-GDB调试Nginx初试

本文的测试环境:Win7+虚拟机VMWareVMware-workstation-full-7.1.4-385536+Ubuntu12.04Nginx-1.4.0要想有效的研究Nginx源码,必须要动手调试,GDB就是有用的利器。下面简要介绍用GDB调试Nginx的一个小例子。本文完成了这样的工作:跟踪worker子进程,观察worker子进程阻塞在何处。然后利用w

2013-07-19 18:11:41 14306 1

原创 【C++】由指针常量和常量指针引发的问题

今天在写一个C++程序的时候,要用到STL的set容器,而且我想让它利用自定义的排序准则来实现自动排序。而且set中元素类型是指向自定义的结构体的指针。结果运行总是出错。下面先贴出起初的代码:#include #include using namespace std;typedef struct test_t{ int a; int b;}test;class

2013-07-18 21:30:20 3792 1

原创 Nginx学习之十三-负载均衡-IP哈希策略剖析

前面介绍过nginx负载均衡的加权轮询策略(http://blog.csdn.net/xiajun07061225/article/details/9318871),它是Nginx负载均衡的基础策略,所以一些初始化工作,比如配置值转储,其他策略可以直接复用他。在后面的初始化的代码中将可以看到。IP哈希初始化IP哈希的初始化函数ngx_http_upstream_init_i

2013-07-15 17:29:28 24143 3

原创 Nginx学习之十二-负载均衡-加权轮询策略剖析

本问介绍的是客户端请求在多个后端服务器之间的均衡,注意与客户端请求在多个nginx进程之间的均衡相区别(Nginx根据每个工作进程的当前压力调整它们获取监听套接口的几率,那些当前比较空闲的工作进程有更多机会获取到监听套接口,从而客户端的请求到达后也就相应地被它捕获并处理)。如果Nginx是以反向代理的形式配置运行,那么对请求的实际处理需要转发到后端服务器运行,如果后端服务器有多台,如何选择一台合适

2013-07-13 15:52:19 48084 6

原创 Nginx学习之十一-Nginx启动框架处理流程

Nginx启动过程流程图下面首先给出Nginx启动过程的流程图:ngx_cycle_t结构体Nginx的启动初始化在src/core/nginx.c的main函数中完成,当然main函数是整个Nginx的入口,除了完成启动初始化任务以外,也必定是所有功能模块的入口之处。Nginx的初始化工作主要围绕一个类型为ngx_cycle_t类型的全局变量(cycle)

2013-07-12 11:24:54 15731

转载 Nginx学习之十-超时管理(定时器事件)

Nginx事件管理主要是网络事件和定时器事件。下面介绍定时器事件管理,即超时管理。为什么要进行超时管理Nginx有必要对可能发生超时的事件进行统一管理,并在事件超时时作出相应的处理,比如回收资源,返回错误等。举例来说,当客户端对nginx发出请求连接后,nginx机会accept()并建立对应的连接对象、读取额护短请求的头部信息。而读取这个头部信息显然是要在一定的时间内

2013-07-09 19:03:37 14749 3

原创 Nginx学习之九-负载均衡(客户端请求与Nginx进程间负载均衡)

负载均衡问题的产生在nginx中,建立连接的时候,会设计负载均衡问题。在多个子进程争抢处理一个新连接事件时,一定只有一个worker子进程最终会成功建立连接,随后它会一直处理这个连接直到连接关闭。那么,就有可能出现这样的情况:有的子进程建立并处理了大部分连接,而有的子进程只处理了少量连接。这对多核CPU架构下的应用是很不利的。因为子进程之间应该是平等的,每个子进程应该尽量独占一个CPU

2013-07-08 15:19:09 7283 1

原创 Nginx学习之八-惊群问题

惊群问题(thundering herd)的产生在建立连接的时候,Nginx处于充分发挥多核CPU架构性能的考虑,使用了多个worker子进程监听相同端口的设计,这样多个子进程在accept建立新连接时会有争抢,这会带来著名的“惊群”问题,子进程数量越多越明显,这会造成系统性能的下降。一般情况下,有多少CPU核心就有配置多少个worker子进程。假设现在没有用户连入服务器,

2013-07-06 21:37:18 12811 3

原创 【Linux学习】epoll详解

什么是epollepoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel 2.5.44),它几乎具备了之前所说的一切优点,被公认为Linux2.6下性能最好的多路I/O就绪通知方法。 epoll的相关

2013-07-05 11:50:42 152987 26

原创 Nginx学习之七-模块ngx_epoll_module详解(epoll机制在nginx中的实现)

本文结合实际代码介绍事件驱动模块接口与epoll用法是如何结合起来发挥作用的。Nginx中ngx_epoll_module模块基于epoll实现了Nginx的事件驱动。模块定义(src/event/ngx_epoll_module.c):ngx_module_t ngx_epoll_module = { NGX_MODULE_V1, &ngx_epoll_modu

2013-07-05 11:30:50 16294 2

原创 笔试面试常考数据结构-单链表常用操作编程实现

单链表是笔试以及面试手写代码中常考的数据结构之一。下面实现了单链表的常见操作:创建单链表、删除节点、打印单链表(包括正向打印以及逆向打印)、反转单链表、找出单链表的倒数第K个节点、合并两个有序单链表等操作。代码(C++)://笔试面试单链表常用操作编程实现#include #include #include using namespace std;//单链表节点数据结

2013-07-04 20:50:06 9034 4

原创 Nginx学习之六-nginx核心进程模型

一、Nginx整体架构正常执行中的nginx会有多个进程,最基本的有master process(监控进程,也叫做主进程)和woker process(工作进程),还可能有cache相关进程。一个较为完整的整体框架结构如图所示:二、核心进程模型启动nginx的主进程将充当监控进程,而由主进程fork()出来的子进程则充当工作进程。nginx也可以

2013-07-04 11:22:23 16232 6

原创 Nginx学习之四-Nginx进程同步方式-自旋锁(spinlock)

自旋锁简介Nginx框架使用了三种消息传递方式:共享内存、套接字、信号。Nginx主要使用了三种同步方式:原子操作、信号量、文件锁。基于原子操作,nginx实现了一个自旋锁。自旋锁是一种非睡眠锁。如果某进程视图获得自旋锁,当发现锁已经被其他进程获得时,那么不会使得当前进程进入睡眠状态,而是始终保持进程在可执行状态,每当内核调度到这个进程执行时就持续检查是否可以获取到所锁。

2013-07-02 10:27:31 7896

OpenGL中VAO(vertex array object)介绍

详细介绍了OpenGL中的新特性VAO(Veretx Array Object)的使用入门。它只在OpenGL3.X以上的版本中才有。

2012-06-03

C++实现bmp旋转

不调用库函数,纯C++读取、旋转和保存bmp图像实现。可以处理任意大小、旋转任意角度、灰度图像,将其保存到磁盘上。

2011-09-30

纯C++实现bmp图片旋转

不调用库函数,纯C++实现灰度bmp任意尺寸图片的任意角度旋转~~~~采用最邻近插值法~~

2011-09-30

OpenCV实现在一张图片上用鼠标画矩形

OpenCV实现在一张图片上用鼠标画矩形。C++实现,VS2008+OpenCV。

2011-08-24

OpenCV的cvTrackBar实现开关功能功能

VS2008+OpenCV,C++实现的用trackbar实现开关功能。

2011-08-24

画图工具(VS2008实现)

这是我自己用VS2008写的画图工具。能够实现画直线、矩形、椭圆,并且能够选择线条颜色、线条类型(实线、虚线、点线等)、线条宽度。并且在选择线条类型的对话框里面能够显示出示例线条,能动态地随着选择的不同而改变。还有重绘功能,保存所绘制的图形。功能还可以,欢迎试用~~~~

2011-07-23

TCP/IP三卷【第三卷】

资源共享,予人玫瑰,手留余香! TCP/IP很全的资料,三卷都有,想学习网络的兄弟们拿去用啦!这是第三卷!

2010-08-15

TCP/IP三卷【第二卷】2

资源共享,予人玫瑰,手留余香! TCP/IP很全的资料,三卷都有,想学习网络的兄弟们拿去用啦!这是第二卷! 由于只能上传20M以内的资源,故分成2部分。

2010-08-15

TCP/IP三卷【第二卷】1

资源共享,予人玫瑰,手留余香! TCP/IP很全的资料,三卷都有,想学习网络的兄弟们拿去用啦!这是第二卷! 由于只能上传20M以内的资源,故分成2部分。

2010-08-15

TCP/IP三卷【第二卷】

资源共享,予人玫瑰,手留余香! TCP/IP很全的资料,三卷都有,想学习网络的兄弟们拿去用啦!这是第二卷!

2010-08-15

TCP/IP三卷【第一卷】

资源共享,予人玫瑰,手留余香! TCP/IP很全的资料,三卷都有,想学习网络的兄弟们拿去用啦!这是第一卷!

2010-08-15

TCP/IP三卷【第一部分:TCP/IP基础】

资源共享,予人玫瑰,手留余香! TCP/IP很全的资料,三卷都有,想学习网络的兄弟们拿去用啦!这是基础部分!

2010-08-15

华为内部编程规范和范例

华为内部的编程规范和范例,仅供内部使用。想成为程序员高手的下载啦!

2010-08-15

编译原理与实践【双语版】_ppt【张菁 著】

《编译原理与实践【双语版】》张菁 著 是这本书的课件,对想学好编译原理的人会有帮助的!

2010-07-09

VHDL程序【实验课自己编写的几个程序】

VHDL实验课自己编写的几个程序,对初学者可能会有帮助!

2010-07-09

Linux内核分析及高级编程_ppt【入门及提高】

这是我们上《Linux内核分析及高级编程》,老师的课件。对于初学者很有用的哦!入门极其提高,相信会对你有用!

2010-07-09

云计算入门指南_SUN公司

云计算作为计算机界的一种新趋势,深受关注。想了解云计算的同仁们,想必会对你们有用的!

2010-07-09

Windlx资料大全

系统结构实验要用的,Windlx模拟器,以及模拟器介绍资料、实验资料、实验模板等等。辛辛苦苦收集的.....相当全的啦!做系统结构不可少的哦!

2010-06-29

SQl server2000编程指南(编程技术员必备)

对SQL2000这款软件的运用做了详细描述,面面俱到。是工程技术员的必备工具书!

2009-10-04

汇编语言程序设计(入门经典)

详细描述了汇编语言的基础知识,是一本汇编语言入门的好书!

2009-10-04

C语言程序设计及应用实例

这本书介绍了C语言的基本用法还有很多例子,源代码。应用实例很有用的!推荐给想学好C语言的!

2009-10-02

计算机算法设计与分析ppt

这是《计算机算法设计与分析》王晓东的ppt,大家可以参考一下!对学习算法很有帮助的!

2009-10-01

面试题大全 自己收藏的

各种Java面试题 给大家免费下载吧!

2009-06-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除