IP phone日志4

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

今天想了想UA总体设计:

socket一个线程,.信令解析一个线程,...各一个线程.

我还需要建立一个监控线程,来监控那个线程是否有心跳.

还要建立一个主控模块.来管理各个模块,如有那个线程死了,它就K掉那个死线程.再启动一个同类型的线程.

那怎样再启动呢,每个模块线程先建立一个数据存储变量,与线程分开,只要把这个变量复制给新线程就复活了.当然不是完全复制,要不又会死掉。

那主控模块死了怎么办呢?这就麻烦了.........

呵,我先启动两个主控模块,一个备用不运行,当监控线程发现主控也死了,就启动备用的主控.

但主控模块每到一个消息就把它复制给备用线程.

这样的设计是不是很变态呀!

这种设计有一个名字叫什么动态容错模式, 这种方式一般是给那些要求稳定性极高的一种设计方法.

----------------- ---------------

| | | |

| server | -------->| backup srv |

----------------- ---------------

| | V V

-------------- ------------------

| | | |

| other | | other |

-------------- ------------------

另是不是考虑可移植性,把要用的linux API都重新封闭一遍。

还有内存要不要统一管理。设计一个内存回收站。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航