UNIGUI for delphi,是一款WEB RIA开发框架。开发WEB程式如传统C/S般简单,众多DELPHIER趋之若鹜。

虽然上手非常容易,但要真正使用好,有些地方还是值得考究的。

网上有同仁说使用UNIGUI,如果客户端达到200的数量,会致数据库连接用磬,系统不可用。他以为是UNIGUI的并发不行。

UNIGUI冤哉!与UNIGUI何关!

究其原因,其使用ADO控件直连数据库,凡开发过两层c/s程序的人都知道,数据库的连接数是有限的。

一般地WEB程式的客户端数量比较大的,如果在UNIGUI中采用直连数据库的方式,数据库连接数就不足以应付诸多客户。

那么如何解决此问题呢?

使用数据库连接池。

我首先想到了在UNIGUI和数据库再加一个DATASNAP中间件,因为中间件是原来就写好了的,它包括有连接池和对象池。

无疑这种方法是可行的。后来再想,能不能不要中间件,而把连接池和对象池直接放UNIGUI里面,这样省却DATASNAP中间件。

如何做呢?

用UNIGUI工程向导生成一个新工程,有一个SERVERMODULE单元,此单元是针对所有客户SESSION,将全局的连接池对象或对象池对象

在它里面创建和销毁就可以了。

具体演示代码在此处省略。

合理地优化UNIGUI服务端程序,支持并发数量还是非常可观的,绝不只200而已。

http://www.cnblogs.com/hnxxcxg/p/3632675.html

最新文章

  1. java面试题——HashMap和Hashtable 的区别
  2. Java NIO (转)
  3. Drop it
  4. Transaction详细介绍
  5. 【jQuery基础学习】12 jQuery学习感想
  6. OpenGl的glMatrixMode()函数理解
  7. HTML5 File API
  8. C#中数据库连接的配置文件
  9. 《Linux内核设计与实现》的地址空间读书笔记的过程
  10. 容斥原理、欧拉函数、phi
  11. Asp.net容器化
  12. python 函数递归
  13. ipmitool 工具使用
  14. 二.django项目环境搭建
  15. Beta(5/7)
  16. laravel Cache store [] is not defined
  17. Linux性能分析的前60000毫秒【转】
  18. 【源码分析】FastJson全局配置日期格式导致@JSONField(format = "yyyy-MM-dd")注解失效
  19. mysql 5.7.3.0-m13安装教程
  20. python常用算法题

热门文章

  1. Ajax 用法, 实现方法,JS原生与JQ实现
  2. [Non-original]OS X How do I unset an IP address set with ifconfig?
  3. LinearLayout遇到的问题——利用LinearLayout做横向滑动冲突
  4. Shader的使用
  5. Android小记之--ClickableSpan
  6. SQL Server 创建全文索引
  7. MYSQL 加密的 3 类方法
  8. Nginx学习笔记二基本配置
  9. 一个简单的倒计时js插件
  10. 键盘有没有NKRO ?微软帮你测