Datasnap学习
jiangbin0315
这个作者很懒,什么都没留下…
展开
-
为DataSnap系统服务程序添加描述
Delphi2010中DataSnap高级技术(1)—为DataSnap系统服务程序添加描述 收藏 这几天一直在研究Delphi 2010的DataSnap,感觉功能真是很强大,现在足有理由证明Delphi7该下岗了。 DataSnap有三种服务模式,其中Service Application方式建立的windows服务没有描述,描述部分是空的,感觉总是欠缺点什么。 现找到办法添加描述:转载 2012-09-03 15:20:03 · 549 阅读 · 0 评论 -
DataSnap服务器如何得到客户端的IP和端口
作为一个服务器软件,必须做到对客户端强有力的控制,想要控制,就必须得到客户端的网络基本信息,比如客户端IP和端口。有了客户端IP就能随心所欲操控客户端,比如终止某些客户端的连接、限制功能等等。 在delphi2010中的datasnap服务器如何获得客户端ip,的确花了我点时间,奇怪为什么这个功能不做的更人性化点呢,功能总是藏着掖着。还得让程序员像寻宝一样摸索,浪费时间。现在把我整理的结果奉献给转载 2012-09-03 15:24:19 · 787 阅读 · 0 评论 -
DataSnap-TCP keepAlive和KeepAliveInterval参数详解
Delphi2010中DataSnap,如果客户端异常掉线或拔掉网线,那么在服务端会留下一个TCP连接,这个连接会变成死连接(经过测试,如果windows的TCP保持连接禁用的话,三个小时该死连接还不消失)。如果大量客户端并发,出现的死TCP连接过多,服务器内存和端口将会增加,直到占满服务器的端口和耗尽内存为止。如果这样的话,服务器无法健壮稳定的运行。 大家可以另开线程来监控客户端连接,但是今天转载 2012-09-03 15:25:47 · 2003 阅读 · 0 评论 -
DataSnap—TDSServerClass中Lifecycle生命周期三种属性说明
Delphi2010中DataSnap高级技术(7)—TDSServerClass中Lifecycle生命周期三种属性说明 Lifecycle 三种属性: Session、Invocation、Server 这三种属性都用在什么情况,有什么要注意的事项,Delphi2010中罕有说明。 如果乱用这三种属性,你的服务程序有可能崩溃,数据混乱,内存占用大,效率低等问题! 下面我对这三种属性的使转载 2012-09-03 15:29:30 · 628 阅读 · 0 评论 -
DataSnap服务端和客户端发布分发方法
针对服务器和客户端软件,如何发布呢?经过研究发现,分发方法非常简单! 服务器发布方法: 1.在unit ServerMethodsUnit1单元中,添加uses MidasLib;(添加MidasLib的目的是省去发布Midas.dll) 2.我用的是火鸟数据库,只需拷贝dbxfb.dll和fbclient.dll 分发的服务器软件只需三个文件:你的服务器程序、dbxfb.dll 和 fb转载 2012-09-03 15:22:40 · 1141 阅读 · 1 评论 -
DataSnap-建立稳定服务程序之TCP心跳包的使用
为了能让我们的服务程序更加稳定,有些细节问题必须解决。就如上一讲中提到的客户端拔掉网线,造成服务器上TCP变成死连接,如果死连接数量过多,对服务器能长期稳定运行是一个巨大的威胁。 另外,经过测试,如果服务器上有TCP死连接,那么服务程序连接数据库,也会产生那个一个死连接。这样的话,给数据库服务器也造成威胁。所以,服务器程序编写的好坏,直接影响系统的稳定性! 如何解决TCP死连接的问题,有多种方转载 2012-09-03 15:26:25 · 2170 阅读 · 0 评论 -
taSnap—加强服务程序对访问者的控制能力
Delphi2009开始,以DataSnap的JSON开发三层受用户的关注,以下是开发过程中用到的一些内容 在客户端我们用 SQLConnection连接服务端,在登录时要验证用户及密码是否正确,本例我们用tcp/ip方式通讯, 当然如果用http协议则把第38行放开即可。所有的验证都在服务端执行。以下为当登录一客户端时,服务端上会显示它的相关信息,当客户端退出时会删除它的相关信息的图示:转载 2012-09-03 15:28:27 · 475 阅读 · 0 评论