论文摘要
计算机网络在今天变得越来越普及,人们对其的依赖程度也不断增加,从而引起人们对网络软件开发的关注。其原因有二,首先,网络软件是网络中的基本元素,人们必须使用它才能利用网络所带来的便利;其次,网络软件的开发比一般软件开发更为复杂。在今天,网络软件所带来的开发成本不断上升,其中,服务器端的开发更是如此。这主要是由服务器端的固有特性所决定的:通常服务器需要向大量客户同时提供服务,且须保证服务质量。随着面向对象技术的出现,人们得到了一些解决上述问题的方法。但是,如何充分利用面向对象技术来解决这些问题,还是经过了一段时间的积累。直到设计模式在软件开发领域引起人们的重视,才使这些问题得到了某些实质性的解决。结合面向对象技术和设计模式,可以为软件开发带来好处。尤其是设计模式,它可以使人们复用已有的经验和技术,来解决那些重复出现的问题。网络软件都具有一些固有的特点和模式(如创建套接字、接受连接、事件处理以及创建线程等),它们在不同的项目中重复出现。本文将结合一个实际的项目来研究如何设计、开发一个安全控制服务器软件,并研究一些在软件开发过程得到普遍认可的设计模式,并把它们应用于安全控制服务器的实际开发过程中。安全控制服务器是整个局域网安全控制及管理系统的一部分,它在整个系统中是一个核心组件。安全控制服务器需要与客户端代理和管理工具进行大量的消息传递,以完成对局域网内主机以及用户的监控和管理。它的正常运行与否,将直接影响系统的运行、服务质量以及性能等。安全控制服务器实现了监控主机的自动调度,其中包括监控主机的正常调度和异常调度。自动调度的实现保证了系统的健壮性。此外,安全控制服务器在实现时使用半同步/半异步模式,实现了一个可扩展的、高效的线程池,以提高安全控制服务器的处理能力。在讨论安全控制服务器的设计及实现过程中,将首先介绍安全控制服务器的设计,接着讨论其实现,最后,将介绍安全控制服务器的测试。