英雄无敌5修改器3.0:Delphi2010中DataSnap高级技术(7)—TDSServerClass中Lif...
来源:百度文库 编辑:九乡新闻网 时间:2024/05/01 16:06:38
Delphi2010中DataSnap高级技术(7)—TDSServerClass中Lifecycle生命周期三种属性说明
Lifecycle 三种属性: Session、Invocation、Server这三种属性都用在什么情况,有什么要注意的事项,Delphi2010中罕有说明。如果乱用这三种属性,你的服务程序有可能崩溃,数据混乱,内存占用大,效率低等问题!下面我对这三种属性的使用环境逐一介绍:1. Session说明:这是delphi2010中默认属性,也是delphi推荐设置。Session会为每个来自客户端的链接,建立一个线程来实例化。实例化是什么概念呢?就是这个线程把所有你将要用到的类、函数等等都建立好了,等待你客户端直接使用。这个线程和实例化并不释放,直到客户端中断连接。如果有300个客户端,那么你的服务器将会有300线程和实例,对服务器硬件和内存是个考验。适用环境:这个设置是线程安全的!•客户端数量少,每台服务器不超过连接数量: 200 x CPU个数 x (每个CPU核数x0.7) (这是经验值,稳定连接的数量,不是极限数量,别误解^_^),内存现在很便宜了,想加多大就多大!
•客户端频繁调用服务器数据,无论连接数量是多少,最好都用这种设置。如果客户端很多,建议采用负载平衡和多台服务器来解决。
2. Invocation说明:服务器只是建立连接,但是先不做实例化,只有当客户端请求功能的时候,服务器才开线程并实例化,当客户端用完后,服务器就释放线程和实例。 适用环境:这个设置是线程安全的!•如果客户端调用服务器数据频率低,这种方法很不错,会节约很多内存。
3. Server说明:服务器对所有客户端连接使用一个实例,不是线程安全的。所以要自己控制客户端并发调用的问题(可以使用互斥、原子量等方法),让客户端的调用排成一队使用服务器资源。 适用环境:这个设置不是线程安全的!!•配置较低的服务器
•服务器连接的另一端只能是单线程工作的模式
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/sunstone/archive/2010/02/02/5282666.aspx
Lifecycle 三种属性: Session、Invocation、Server这三种属性都用在什么情况,有什么要注意的事项,Delphi2010中罕有说明。如果乱用这三种属性,你的服务程序有可能崩溃,数据混乱,内存占用大,效率低等问题!下面我对这三种属性的使用环境逐一介绍:1. Session说明:这是delphi2010中默认属性,也是delphi推荐设置。Session会为每个来自客户端的链接,建立一个线程来实例化。实例化是什么概念呢?就是这个线程把所有你将要用到的类、函数等等都建立好了,等待你客户端直接使用。这个线程和实例化并不释放,直到客户端中断连接。如果有300个客户端,那么你的服务器将会有300线程和实例,对服务器硬件和内存是个考验。适用环境:这个设置是线程安全的!•客户端数量少,每台服务器不超过连接数量: 200 x CPU个数 x (每个CPU核数x0.7) (这是经验值,稳定连接的数量,不是极限数量,别误解^_^),内存现在很便宜了,想加多大就多大!
•客户端频繁调用服务器数据,无论连接数量是多少,最好都用这种设置。如果客户端很多,建议采用负载平衡和多台服务器来解决。
2. Invocation说明:服务器只是建立连接,但是先不做实例化,只有当客户端请求功能的时候,服务器才开线程并实例化,当客户端用完后,服务器就释放线程和实例。 适用环境:这个设置是线程安全的!•如果客户端调用服务器数据频率低,这种方法很不错,会节约很多内存。
3. Server说明:服务器对所有客户端连接使用一个实例,不是线程安全的。所以要自己控制客户端并发调用的问题(可以使用互斥、原子量等方法),让客户端的调用排成一队使用服务器资源。 适用环境:这个设置不是线程安全的!!•配置较低的服务器
•服务器连接的另一端只能是单线程工作的模式
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/sunstone/archive/2010/02/02/5282666.aspx
Delphi2010中DataSnap高级技术(7)—TDSServerClass中Lif...
Delphi2010中DataSnap高级技术(3)—DataSnap服务器如何得到客户端...
Delphi2010中DataSnap高级技术(2)—DataSnap服务端和客户端发布分...
Delphi2010中DataSnap高级技术(1)—为DataSnap系统服务程序添加描...
Delphi2010中DataSnap高级技术(3)—DataSnap服务器如何得到客户端...
Delphi2010中DataSnap高级技术(6)—加强服务程序对访问者的控制能力 - ...
Delphi2010中DataSnap高级技术(4)—TCP keepAlive和Keep...
Delphi2010中DataSnap高级技术(4)—TCP keepAlive和Keep...
Delphi2010中DataSnap高级技术(5)—建立稳定服务程序之TCP心跳包的使用...
Delphi2010中DataSnap高级技术(5)—建立稳定服务程序之TCP心跳包的使用...
英语初、中、高级口语
短线炒股技术中
朝鲜战争中志愿军牺牲的高级指挥员
钢琴教学初,中,高级别教材
短线炒股技术集锦 中
短线炒股技术集锦(中
短线炒股技术 (中)
炒股技术集锦(中)
短线炒股技术(中)
短线炒股技术集锦 中
毛泽东为组长 延安学习运动中"高级学习组"——新华网江西频道
关于钢琴教学初,中,高级别教材
如何在WebQuest中发展学生的高级思维能力
经济学书目介绍(分初、中、高级)