高性能、高并发TCP服务器(多线程调用libevent)

本文讲述的TCP服务器是模仿memcache中的TCP网络处理框架,其中是基于libevent网络库的。

主线程只处理监听客户端的连接请求,并将请求平均分配给子线程。

子线程处理与客户端的连接以及相关业务。

每个子线程有一个“连接”队列。每个“连接”有一个“反馈”队列。

先上个流程图,要上班了,以后再解释。代码以后再上···

实现代码地址:http://download.csdn.net/detail/aillean/7521245

时间: 2024-09-28 22:13:18

高性能、高并发TCP服务器(多线程调用libevent)的相关文章

C语言使用多进程实现高并发tcp服务器

多进程并发服务器的流程 socket; 创建监听套接字 bind; 绑定地址结构 listen(); 设置监听上限 accept();进行循环监听 fork();接收到客户端请求创建新的进程 close(); 与客户端通讯的套接字关闭 实现C语言并发服务器 #include <stdio.h> #include <apra/inet.h> #include <errno.h> #include <sys/socket.h> #include <unis

高性能高并发服务器架构设计探究—以flamigo服务器代码为例

这篇文章我们将介绍服务器的开发,并从多个方面探究如何开发一款高性能高并发的服务器程序.所谓高性能就是服务器能流畅地处理各个客户端的连接并尽量低延迟地应答客户端的请求:所谓高并发,指的是服务器可以同时支持多的客户端连接,且这些客户端在连接期间内会不断与服务器有数据来往.这篇文章将从两个方面来介绍,一个是服务器的框架,即单个服务器程序的代码组织结构:另外一个是一组服务程序的如何组织与交互,即架构.注意:本文以下内容中的客户端是相对概念,指的是连接到当前讨论的服务程序的终端,所以这里的客户端既可能是我

高性能高并发系统的稳定性保障

小码哥 于 1 月前 发表在 七嘴八舌 作者:肖飞,于2011年8月份加入京东,曾亲身参与到京东的应用性能监控.统一日志.流式计算.内存缓存.四层防攻击等一些基础技术平台的研发和搭建工作,经历了京东的技术系统从简单粗放向复杂精细化的演变过程.目前主要工作为多中心交易项目中的数据复制中间件JingoBUS的研发.平时也会开发一些公共的平台和工具,关注分布式系统的实现.程序设计.性能优化.开发语言等. 本文是2015年肖飞在内部分享的<高性能高并发系统的稳定性保障>PPT内容. 性能.并发.稳定性

提升高并发量服务器性能解决思路

刚刚在网上淘了一个提升高并发量服务器性能解决思路,个人感觉非常不错,给大家分享出来,希望给您有所帮助. 提升高并发量服务器性能解决思路 一个小型的网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构.性能的要求都很简单.随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件.编程语言.数据库.WebServer.防火墙等各个领域都有

配置开发支持高并发TCP连接的Linux应用程序全攻略

http://blog.chinaunix.net/uid-20733992-id-3447120.html http://blog.chinaunix.net/space.php?uid=16480950&do=blog&id=103598 原文见:http://www.cppblog.com/flashboy/articles/47012.html1.修改用户进程可打开文件数限制 在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到

千万级PV规模高性能高并发网站架构

防伪码:好久不见,你会不会突然的出现. 客户端:缓存(expires).deflate压缩 缓存服务器:CDN/cache缓存静态内容如:html.jpg.gif.js等 静态web服务器:Apache/nginx静态服务器提供html页面内容 php/java服务器:PHP/JAVA动态内容 数据库缓存服务器:数据库缓存memcache/redis 数据库服务器:MYSQL数据库 数据存储:NFS/HADOOP等 高并发访问的核心原则其实就一句话"把所有的用户访问请求都尽量往前推".

Linux配置支持高并发TCP连接(socket最大连接数)

Linux配置支持高并发TCP连接(socket最大连接数)及优化内核参数 2011-08-09 15:20:58|  分类:LNMP&&LAMP|  标签:内核调优  文件系统调优  高并发调优  socket连接  ip_conntract  |字号大中小 订阅 1.修改用户进程可打开文件数限制在 Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个s

浅谈千万级PV/IP规模高性能高并发网站架构

高并发访问的核心原则其实就一句话“把所有的用户访问请求都尽量往前推”. 如果把来访用户比作来犯的"敌人",我们一定要把他们挡在800里地以外,即不能让他们的请求一下打到我们的指挥部(指挥部就是数据库及分布式存储). 如:能缓存在用户电脑本地的,就不要让他去访问CDN. 能缓存CDN服务器上的,就不要让CDN去访问源(静态服务器)了.能访问静态服务器的,就不要去 访问动态服务器.以此类推:能不访问数据库和存储就一定不要去访问数据库和存储. 说起来很轻松,实际做起来却不容易,但只要稍加努力

网站设计高性能高并发

高性能高并发 高并发访问的核心原则其实就一句话"把所有的用户访问请求都尽量往前推". 如果把来访用户比作来犯的"敌人",我们一定要把他们挡在800里地以外,即不能让他们的请求一下打到我们的指挥部(指挥部就是数据库及分布式存储). 如:能缓存在用户电脑本地的,就不要让他去访问CDN.能缓存CDN服务器上的,就不要让CDN去访问源(静态服务器)了.能访问静态服务器的,就不要去访问动态服务器.以此类推:能不访问数据库和存储就一定不要去访问数据库和存储. 说起来很轻松,实际