说真话,这玩意真的简单好用。但你要控制好:

1、内存泄漏和异常处理好;

2、有没有发现,通过服务器对数据库进行读写时,在资源管理器中,如果是sql server,就会看到连接1433的连接一直挂在那里。好闹心。

说主题:因为采用get or post链接,将LifeCycle设置为'Invocation'。每次客户端获取数据时,就会产生读写数据库。在DSServerModuleDestroy的方法中加上

  try
FDManager.Active := False;
// FDConnection1.Connected := False; // 尝试关闭数据库连接 一定要关闭,否则连接一直存在
// FDManager.Active := False; // 尝试停止 FireDAC 管理器 一定要关闭,否则链接时会出错
except
on E: Exception do
begin
if Var_Log then
PostLog(llError, 'Error closing connections or manager: ' + E.Message);
end;
end;
if Var_Log then
begin
PostLog(llHint, 'FDConnection:close');
end;

如此简单,就会在资源管理器TCP中,再也看不到1433的链接了。

GOODLUCK!!!

补充:

在TServerContainer中,不要随随便便增加方法。
procedure TServerContainer.DSServerClass1DestroyInstance(
DSDestroyInstanceEventObject: TDSDestroyInstanceEventObject);
begin
if Var_Log then
begin
PostLog(llHint, 'DSDestroyInstanceEventObject.free');
end;
end;
就因为增加了追踪日记,导致流程跑偏了。
自以为聪明,在这里又追加执行DSDestroyInstanceEventObject的Destroy。晕透了。记得有人提出这个体会:不要随随便便增加代码,不要随随便便和陌生人说话

datasnap的restful服务器的更多相关文章

  1. WCF Restful 服务器配置文件

    <?xml version="1.0" encoding="utf-8"?> <configuration> <configSec ...

  2. UE4 WCF RestFul 服务器 读取JSON 数据并解析 简单实例

    Note:不知道为什么通过Txt读取的JsonString,如果TXT 不是ANSI编码的话,会报JsonArrayStringToUStruct  Unable to parse. bool UWg ...

  3. Jersey搭建Restful服务器 on Ubuntu

    自己试着在Ubuntu上搭建一个 1.首先安装eclipse和tomcat sudo apt-get install eclipse tomcat7 -y 2.把tomcat的group assign ...

  4. AngularJS Resource:与 RESTful API 交互

    REST(表征性状态传输,Representational State Transfer)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格.RESTful风格的设计不仅 ...

  5. DataSnap 2009 系列之三 (生命周期篇)

    DataSnap 2009 系列之三 (生命周期篇) DataSnap 2009的服务器对象的生命周期依赖于DSServerClass组件的设置 当DSServer启动时从DSServerClass组 ...

  6. 【转】基于CXF Java 搭建Web Service (Restful Web Service与基于SOAP的Web Service混合方案)

    转载:http://www.cnblogs.com/windwithlife/archive/2013/03/03/2942157.html 一,选择一个合适的,Web开发环境: 我选择的是Eclip ...

  7. C# 服务端篇之实现RestFul Service开发(简单实用)

    一.RestFul简介 REST(Representational State Transfer 通常被翻译为“表述性状态传输”或者“表述性状态转移”)是RoyFielding提出的一个描述互联系统架 ...

  8. 黄聪:AngularJS中的$resource使用与Restful资源交互(转)

    原文:http://blog.csdn.net/he90227/article/details/50525836 1.AngularJS中的 $resource 这个服务可以创建一个资源对象,我们可以 ...

  9. Restful Web Service初识

    一.Web Services Web Services 是一种基于组件的软件平台,是面向服务的Internet 应用.Web Services 框架的核心技术包括SOAP ,WSDL 和UDDI ,它 ...

  10. 3.2 配置构建Angular应用——简单的笔记存储应用

    本节我们会通过构建一个简单的笔记存储应用(可以载入并修改一组简单的笔记)来学习如何应用Angular的特性.这个应用用到的特性有: 在JSON文件中存储笔记 展示.创建.修改和删除笔记 在笔记中使用M ...

随机推荐

  1. 第四五章 (Nginx+Lua)Lua模块开发

    在实际开发中,不可能把所有代码写到一个大而全的lua文件中,需要进行分模块开发:而且模块化是高性能Lua应用的关键.使用require第一次导入模块后,所有Nginx 进程全局共享模块的数据和代码,每 ...

  2. RSA 小规模演算

    原理 秘钥生成 加解密 解密验证 小规模演算

  3. frida 解决一些报错问题

    遇到的一些问题 第一个问题 Unable to start: Error binding to address 127.0.0.1:27042: Address already in use 解决方法 ...

  4. 0415-File类和FileFilter接口

    package demoFile; import java.io.File; import java.io.FileFilter; import java.io.FilenameFilter; imp ...

  5. uni-app组件 信息列表组件

    之前我一直在,要想提高自己的代码质量, 就一定要封装自己的组件, 所以我就尽量使用自己的组件.这样可以提高自己的效率 写组件的好处:减少代码的冗余 封装组件的时候,为了不让子元素的padding, 影 ...

  6. 管理虚拟机(virsh)

    [root@kvm1 qemu]# virsh --help 开启和关闭 [root@kvm1 qemu]# virsh virsh # help list virsh # list virsh # ...

  7. 鸿蒙开发 - 数据持久化 Preferences (内存存储) (封装)

    这篇文章介绍鸿蒙中的 Preferences,它是一种轻量级存储方式,数据存储在内存中,用于存储少量的数据. 可以执行 flush() 方法将内存中的数据写入到磁盘文件,保证下次重启后数据可以继续使用 ...

  8. [BZOJ5093] 图的价值 题解

    考虑计算一个点的贡献,最后 \(\times n\) 即为所求. 显然一个点的贡献为 \(\sum\limits_{i=0}^{n-1}\binom{n-1}ii^k2^{\frac{(n-1)(n- ...

  9. autMan奥特曼机器人-代理池配置教程

    一.优势: 全可视化 稳如老牛(从2.8.6开始) 隧道代理和接口获取,使用灵活 代理池运行状态指令可查:代理池 二.启用代理池并设置服务端口 代理池的启用与关闭,均为重启autMan生效 设置隧道代 ...

  10. PHP实现随机小姐姐扭一扭、学英语短视频Api接口搭建详细教程

    图片API的文章:图片API制作,教大家制作一个自己的 图片Api ,再记录一下PHP制作视频api的方法.原理上与图片api的制作方法类似. 1.准备工作 准备一个域名,一个服务器(虚拟主机也可以) ...