服务器程序设计初探

来源:互联网 发布:李小龙数据 编辑:程序博客网 时间:2024/05/01 21:46

换工作了后,很久没有来写点什么,总感觉时间不够用。一则工作上的事情比较多;在生活上的时间也比较多。闲话不说,直接谈谈服务器程序的设计的几个部分

1。内存分配

内存分配对于任何程序都是很重要的,如何分配内存,如何减少频繁的内存分配,如何提高内存的使用效率,减少内存碎片都是需要值得好好研究的问题;对于内存要求比较高的系统,还要考虑内存不够的情况。一般的程序,都会将内存的操作封装成几个函数,一次请求生成比较大块的内存,然后每次需要使用内存的时候,直接在这个里面获取,然后释放的时候,直接将此处的内存置为0,并不是真正的释放。

2。socket管理

对于网络服务器而言,socket是整个系统的重中之重,如何更好的管理socket连接,合理分配计算机资源,利用select,epoll等实现高性能的并发处理。

3。日志系统

任何系统中,日志记录都是至关重要的,如何设计一个分类明确,记录性能高的系统将是很重要的

4。配置文件处理

如何定义配置文件的格式,如何获取配置文件里面的信息,以及如何存储这个文件里面的信息,配置文件修改了,如何不需要重新启动程序,将最新的配置导入到程序中。

5。多线程和多进程

多线程和多进程对于高性能的服务器很重要,然而使用这些技术,实现难度也很大,变量的共享,线程和进程调度,信号之间的同步。

总结以上一些部分, 希望能和大家一起讨论!