自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (2)
  • 收藏
  • 关注

转载 一个最最简单的apache moudle,给初学着看

  一个最最简单的apache moudle,给初学着看/*-------------------------------------------------------------------------------------------------file: mod_stock.cauthor: wyezl2006.2.10--------------------------

2009-03-17 15:36:00 559

转载 linux 2.6内核epoll用法举例说明

linux 2.6内核epoll用法举例说明   from :[url]http://dev.csdn.net/article/55/article/53/53343.shtm[/url]作者Blog:[url]http://blog.csdn.net/mote_li/[/url]选择自 mote_li 的 Blog epoll用到的所有函数都是在头文件sys/epoll.h中声明的,下面简要说明

2009-03-17 15:33:00 1066

转载 EPOLL为我们带来了什么。

 EPOLL为我们带来了什么。 from: [url]http://blog.csdn.net/tarkey/archive/2005/02/19/293840.aspx[/url]by: tarkey的专栏例子程序及epoll用法说明参见以下网页: [url]http://dev.csdn.net/article/55/article/53/53343.shtm[/url] [url

2009-03-17 15:32:00 2391

转载 一个简单的基于多线程的web server

 一个简单的基于多线程的web server下面是一个朋友chunjian的一个简单的基于多线程的httpd。/*-------------------------------------------------------------------------------------------------gcc -o httpd httpd.c -lpthread author:

2009-03-17 15:29:00 936

转载 一个简单的基于epoll的web server

 一个简单的基于epoll的web server,性能还不错我根据一个epoll的模型改了一个http server出来。只有129行,还可以精简不少,呵呵。小测了一下,一秒钟处理了一万了请求。当然这里只是把现成的东西输出。没考虑到发送数据处理。和请求的解析。注意了,epoll只基于linux 2.6内核的。其他平台不能用。/*----------------------------

2009-03-17 15:27:00 3927 1

转载 如何编写高性能的网络服务器

(转贴)如何编写高性能的网络服务器 from : [url]http://team.eyou.com/[/url]Scalable Network ProgrammingOr: The Quest For A Good Web Server (That Survives Slashdot)Scalable Network ProgrammingFelix von Leitner[email]fel

2009-03-17 15:14:00 3642

原创 Linux网络编程一步一步学-epoll同时处理海量连接的代码

Linux网络编程一步一步学-epoll同时处理海量连接的代码2009年02月27日 星期五 21:19#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #

2009-03-16 17:08:00 1168

原创 libevent结构分析

 查看文章  libevent结构分析2008年07月19日 星期六 11:40libevent 结构分析    libevent是一个针对*nix的高级IO的库(FreeBSD:kqueue, Linux:epoll, Solaris:/dev/poll)的封装(虽然对于windows它也能工作,不过它封

2009-03-16 17:03:00 2004

原创 BerkeleyDB同名key值(Duplicate Key)的使用

 查看文章  BerkeleyDB同名key值(Duplicate Key)的使用2008年07月16日 星期三 22:31以下言论为菜鸟乌焦巴弓之拙见,可信度最多达到百分之八十,如有被该文引入歧途者请冷静点,臭鸡蛋滴不要带。请高手帮忙点错,万分感谢!首先,我们要知道一个概念:duplicate key

2009-03-16 17:02:00 1785

转载 Berkeley DB使用简介

Berkeley DB使用简介 1来源: 作者: 时间:2007-12-02 Tag: 点击: 587 1        简介BDB的全称Berkeley DB,是一套开放源码的嵌入式数据库的程序库。它为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。Berkeley DB为数据的存取和管理提供了一组简洁的函数调用API接口。BDB为多种编程语言提供了API接口,其中包括C、

2009-03-16 16:41:00 3096

转载 DB Environment

 DB Environment -- Berkeley DB来源: 作者: 时间:2007-12-02 Tag: 点击: 195 Database environment introductionBerkeley DB 环境用来封装一个或多个数据库,日志文件和区域文件。区域文件是共享内存区,它里面包括数据库环境信息像内存池cache页等。只有数据库文件可以在不同的字节序机器间移动,日志文件只能

2009-03-16 16:35:00 741

转载 Berkeley DB 简单综合范例

 在参考前一篇代码基础上,有所添加。在Red Hat Linux 8.0平台,测试通过。在第一次运行的时候,要在应用程序所在的目录新建立一个文件夹“dbtestENV”,存放环境用;其次,要把注释掉的代码还原,因为得向空的数据库里添加数据。之后可以注释掉。程序大意:在一个环境(dbenv)中打开两个数据库(dbp1, dbp2),建立指向两个数据库的游标(cur1, cur2),dbp1是

2009-03-16 16:28:00 683

原创 csdn blog的架构该改了

 每天早上的高峰时段,根本无法访问,只能得到service unavailable的提示,好几次都是这样了,真的令人非常恼怒。怎么说csdn也是一个程序员中耳熟能详的网站,本来想开开心心的在上面写点文章啥的,现在有一点后悔。希望csdn把架构调整调整,做点扩容啥的。

2009-03-16 11:52:00 374

转载 简单介绍Brekeley DB

Berkeley DB for C 简单介绍Brekeley DB打开databases在开打数据库前必须通过db_create()方法来初始化一个db句柄, 然后你可以通过他的open方法来打开一个数据库 示例:#include   //必要的包含文件...DB *dbp; /* 数据库结构句柄 */u_int32_t flags; /* 数据库打开标志

2009-03-12 11:01:00 696

转载 怎样把ACE_Task当作更高级的线程来使用

怎样把ACE_Task当作更高级的线程来使用2009-01-02 18:02 #include "ace/OS.h" #include "ace/Task.h"  class TaskOne: public ACE_Task { public: //Implement the Service Initialization and Termination methods int

2009-03-11 17:43:00 1005

转载 ACE 任务间通信

ACE 任务间通信标签:  ACE  通信  任务  2009-01-02 18:09 如前面所提到的,ACE 中的每个任务都有一个底层消息队列(参见上面的图示)。这个消息队列被用作任务间通信的一种方法。当一个任务想要与另一任务“谈话”时,它创建一个消息,并将此消息放入它想要与之谈话的任务的消息队列。接收任务通常用 getq()从消息队列里获取消息。如果队列中没有数据可用,它就

2009-03-11 17:42:00 739

转载 6.1 反应器组件 ACE_Reactor

6.1 反应器组件 ACE_Reactor标签:  Reactor  ACE  反应器  组件  2008-12-07 13:46 6.1 反应器组件 ACE_Reactor反应器的基本原理是: 针对关心的某个事件写一个事件处理器(event_handler). 将该事件处理器登记到反应器中(同时指明关心的事件).  然后反应器会自动检测事件的发生. 并调用预先登记的事件处

2009-03-11 17:38:00 542

转载 4.2.2.1 锁(lock)类属

4.2.2.1 锁(lock)类属标签:  lock  2008-12-07 13:47 4.2.2.1 锁(lock)类属 Mutex / Thread_Mutex / Process_Mutex  互斥体. 获得它的线程才能进入临界区.  // 例子代码 : Thread_Mutex 类的用win32 api的简单实现:  class Thread_Mutex {  pub

2009-03-11 17:36:00 632

转载 2. Socket API概述 - C++NP(ACE)

2. Socket API概述 - C++NP(ACE)2008-12-07 13:50 2.1 操作系统IPC机制概述网络应用程序需要使用"进程间通信(IPC)"机制. OS提供的IPC机制分为以下两种:本地IPC: 如共享内存. 管道. "UNIX领域"socket. 门(door). 信号(signal)等.         只允许"位于同一计算机"上的实体之间通

2009-03-11 17:34:00 512

转载 使用信号量

使用信号量标签:  信号量  2009-01-08 23:37 信号量是非负的整型计数,用于协调对多个资源的访问。如果你获取了信号量,计数就会减少;释放信号量,计数就会增大。如果计数达到0--不在有资源 --试图获取该信号量的线程就会阻塞,直到信号量技术变得大于0为止--如果另一个线程释放该信号量,就会发生这样的事情。 喜好两计数绝不会为负。在使用信号量时,你把信号量技术初始化

2009-03-11 17:30:00 548

转载 ACE的互斥信号量

ACE的互斥信号量(2008-12-21 14:48:05)标签:it   1. ACE_Thread_MutexACE_Thread_Mutex mutex_;public testProtected(){      mutex_.acquire ();      //被保护的区域      mutex_.rel

2009-03-11 17:20:00 1268

转载 ACE的通知信号量,等待时间(2008-12-21 14:24:19)

ACE的通知信号量,等待时间(2008-12-21 14:24:19)标签:it  分类:ACE学习笔记1.通知信号量:ACE_Thread_Semaphore 第一步:初始化:m_callSem(0);第二部:同步等待:callSem.acquire();第三部:通知信号量加一:callSem.release();

2009-03-11 16:19:00 1348

转载 5.2 ACE_Task(任务)

. 任务和主动对象(Active Object): 并发编程模式 - ACE程序员教程2008-12-07 13:525.2 ACE_Task(任务)每个ACE_Task对象都包含一个或多个线程和一个底层的消息队列. 任务之间可以是通过这些消息队列进行通信. (用putq()来插入用getq()来提取.)它做好了框架. 我们只要在派生的实际任务类中提供那些用以回调的模板方法就可

2009-03-11 15:49:00 2483 1

转载 第 4章 线程管理:ACE 的同步和线程管理机制

第 4章 线程管理:ACE 的同步和线程管理机制标签:  ACE  线程  机制  管理  2008-12-10 09:16 出自:《ACE程序员指南》     ACE 拥有许多不同的用于创建和管理多线程程序的类。在这一章里,我们将查看 ACE 中的一些线程管理机制。在一开始,我们将查看那些简单的线程包装类,它们的管理功能很少。但是,随着内容的进展,我们将查看 ACE_Th

2009-03-11 15:46:00 1194

转载 Proactor机制下的异步SOCKET开发

Proactor机制下的异步SOCKET开发标签:  SOCKET  Proactor  异步  机制  开发  2008-12-08 18:10 Proactor机制和reactor机制的不同1、在reactor机制下,所有I/O请求是同步的,即接到信号请求后,立即执行信号处理,执行完后才开始继续监听信号请求,其接收信号请求的机制是被动的而在Proactor机制下,I/O请求

2009-03-11 15:12:00 466

转载 ACE基本的多线程编程(Basic Multithreaded Programming)

 ACE基本的多线程编程(Basic Multithreaded Programming)标签:  Programming  ACE  Basic  线程  2008-12-10 19:23 从ACE_Task_Base或ACE_Task派生你的线程对象,重载virtual int svc (void);虚函数,那就是线程的入口函数。#include #include

2009-03-11 14:55:00 781

转载 ACE框架在网络游戏服务器中的设计与应用

  ACE框架在网络游戏服务器中的设计与应用陶 道,万旺根(上海大学 通信与信息工程学院 上海 200072)随着计算机网络的发展,特别是因特网的出现,数字娱乐和网络游戏产业得到了蓬勃的发展,异军突起的网络游戏成为中国网络产业中的先锋。而由于信息技术的进步,计算机、手机以及不同的传媒终端等不断涌现,如何将这些众多不同的

2009-03-11 14:15:00 747

转载 Berkeley DB的介绍

Berkeley DB的介绍 Berkeley DB的访问方法有四种BTree、Hash、Queue、Recno他们在DB创建时选择,而且只能在创建时选择。一点选定某一个访问方法,在使用中不能改变。BTree 数据被存储在一个排序的平衡树结构中。key和value都可以是简单数据(如整型,字符串),也可以是复杂数据(如结构)。当有多个数据的key相同时,可以有复本。Hash 数据存储在一个扩展

2009-03-11 13:40:00 783

转载 ACE 安装指南及示例

2007-08-27ACE 安装指南及示例   The ADAPTIVE Communication Environment (ACE) 是一套免费的、开源的面向对象框架,它为大规模并发通信软件实现了许多核心的设计模式。ACE提供了一套丰富的、可重用的C++封装类和框架组件,并且可以跨平台实现大多数常见的通信软件的功能。本文将通过几个非常简单,并且可以说是粗糙的小例子,为大家讲

2009-03-11 13:35:00 1166

转载 ACE示例3 - ACE Proactor

2007-08-27ACE示例3 - ACE Proactor 这个示例将用ACE Proactor来实现echo server代码量差不多只有完成端口的1/3ACE Reactor的实现http://www.cppblog.com/sandy/archive/2006/02/17/3308.html完成端口的实现http://www.cppblog.com/sandy/arc

2009-03-11 13:33:00 372

转载 用完成端口写的echo server

2007-08-27用完成端口写的echo server 完成端口网上的例子很多,但觉得都挺复杂的写了一个简化版的,方便学习,也加了注释。有任何问题,欢迎跟我讨论。========代码来了=========#include winsock2.h>#include mswsock.h>#include windows.h>#include iostream>using nam

2009-03-11 13:32:00 351

转载 ACE 示例2 --- Echo Server

2007-08-27ACE 示例2 --- Echo Server  Echo server就是那种提供回显服务的程序,就是收到什么,然后就发送什么的程序。两种实现方法1.Per client Per Thread (每个连接每个线程来处理)这种方式比较简单,易于实现。缺点是如果有大量的连接,必然占用过量的系统资源。代码:#ifdef _DEBUG#pragma comment

2009-03-11 13:31:00 353

转载 ACE Reactor的Echo Server

 2009-02-03ACE Reactor的Echo Server相对完整的修改版本  1 /************************************************************************   2 * @file: echo.cpp                                              

2009-03-11 13:28:00 539

转载 Google背后的分布式计算架构策略

 dogstar 2008-05-29 Google背后的分布式计算架构策略 Google是与众不同的。它的独特不仅仅表现于革新的思维和充满创意的应用 (比如那个大堂里的地球模型),更在于其有别常规的IT策略……   加利福尼亚州山景城(Mountain View)Google公司(Google,下称Google)总部有一个43号大楼,该建筑的中央大屏幕上显示着一个与Google地球(Go

2009-03-11 13:24:00 1442

转载 ACE日志系统(2)

2007-11-20ACE日志系统(2)ACE可以将输出重新定向到stderr(缺省)、系统日志、输出流(Output Stream)、甚至是回调函数,在C/S结构中,ACE也可以实现客户端输出定向到服务器。本节将详细讨论这些内容。 三 ACE的重新定向设置或改变ACE日志输出目标(logging sink)可以通过ACE_Log_Msg的方法open来完成,另外可

2009-03-11 13:21:00 527

转载 ACE日志系统(1)

2007-11-20ACE日志系统(1)介绍了ACE中日志系统(Logging Facility)的基本使用一、简介以前曾介绍过一个开源日志系统log4cplus,ACE也有自己的Logging Facility,与log4cplus相似,ACE日志系统也具有线程安全、灵活、分级显示等特点,可以面向程序调试、运行、测试、和维护等全生命周期,可以选择将信息输出到屏幕、文件、系统日

2009-03-11 13:16:00 374

转载 创建一个可正常结束的Proactor服务器

创建一个可正常结束的Proactor服务器这是APG上关于Proactor使用的例子,去掉了trace信息,做了一点小修改:#include #include #include #define LISTEN_PORT 5222class HA_Proactive_Service : public ACE_Service_Handler{publi

2009-03-11 13:15:00 386

转载 ACE网络开发中,各种Reactor实现的总结

 2007-11-20ACE网络开发中,各种Reactor实现的总结大家好,第一次来这个属于ACEer的地方真的很高兴啊!下面就ACE中现有的三种Reactor做一些总结,都是我个人使用的经验,如有不妥还请指教。最近,偶在ACE_Reactor框架和ACE_Proactor框架的基础上写了一个网络应用框架,主要目的是将网络数据收发,网络错误处理,以及网络超时这些so

2009-03-11 13:14:00 513

转载 数据接收中粘包及半包的处理

数据接收中粘包及半包的处理2006-10-16 09:45from www.acejoy.com ACE网络编程开发论坛作者:Qinglan   在使用TCP协议的网络应用中,不可避免需要处理的一个问题就是半包和粘包的情况。    一种做法是在接收端设一个比较大的缓冲区,先将收到的数据包都放到缓冲区中,然后从该缓冲区中选取完整的数据包出来。该缓冲区的实现可以使用环形

2009-03-11 13:13:00 451

原创 The C10K problem

The C10K problem 编写连接数巨大的高负载服务器程序时,经典的多线程模式和select模式都不再适用。应当抛弃它们,采用epoll/kqueue/dev_poll来捕获I/O事件。最后简要介绍了AIO。 网络服务在处理数以万计的客户端连接时,往往出现效率低下甚至完全瘫痪,这被称为 C10K问题。随着互联网的迅速发展,越来越多的网络服务开始面临C10K问题,作为大型 网站的开发人员有必

2009-03-11 12:01:00 480

blender quick start

blender是一款3d建模工具,用于3d模型生成

2012-06-20

memcached详细介绍

memcached是一款强大的内存共享工具,在大型网站建设中起到重要的作用,常用于cacheserver的开发。

2009-04-01

空空如也

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

TA关注的人

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