中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Visual C++ > 进程和线程
请教:如何写支持大量并发访问的服务器软件
作者:GONGLV 时间:2001-10-08 10:09 出处:互联网 责编:chinaitpower
              摘要:请教:如何写支持大量并发访问的服务器软件

 

提出这个问题,源于我遇到的一些项目。

至少有四个原因说明讨论这个问题的必要性:

一、就应用型软件来讲,支持大量并发访问的服务器软件是一个重要方面。其它还包括数据库MIS软件、数据采集处理软件、基于WEB的程序等。每种软件有自己的规律,但就难度来讲,并发访问服务器软件的难度与价值都要大一些。例如目前的OICQ、联众游戏等,都存在这个问题。

二、从技术本身来讲,可以分为技巧型(如在非客户区画图)、大系统结构型(如大型MIS系统)、高性能型(如本话题)三种,目前网上的大多文章停留在技巧上,或者停留在某种功能如何实现等教学性质的讲座上,或者一些复用性并不强的源码上。我个人认为教学本身的有用,但价值不大,比如如何进行多线程编程、如果进行SOCKET通讯等,一些经典的图书、手册、MSDN等来得更好;而技巧型价值也不大,多是一些点缀,不是大系统中的关键;大多数源码的价值也不大,不如系统自带的例程好。   实际上,对大系统结构型和高性能型软件的讨论太少,此为其二。

 

三、在互联网大势已定的今天,基于HTTP协议软件或者网站的作用不需要多说,另一种基于专用客户端软件、后台有服务器软件提供并发服务(不论两层、三层还是多层)、通过互联网进行通讯的大规模分布式应用显然是我辈程序员的一个弱项。值得我们关注和努力。

四、我想好的程序员都研究过数据结构、钻研过操作系统源码、学习过编译原理,或者进行过底层的通讯研究。如果让我们写一个网络数据库系统(DBMS),如果让你规划,你可能能说出个大概,但高性能的支持大量用户并发访问的服务器软件还是一个很少有人有底气的问题。

就我目前知道的一些情况,有以下基本结论:

1、在NT或者LINUX/UNIX系统中,好的服务器软件可以支持1000——3000并发联接。

2、目前分布式操作系统还只是个概念,但不排除可以在应用程序上写出好的分布式应用程序来。

3、缺少历经实战检验的成形的写作方法。

等待您的高见。欢迎与我讨论(plissken@263.net)

 

 

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有