上一页 1 ··· 134 135 136 137 138 139 140 141 142 ··· 197 下一页
摘要: DATASNAP是针对企业数据中间件市场而推出来的产品,如果在其它领域用它可能就不会合适。DATASNAP通信使用INDY10,INDY是阻塞型SOCKET。1.如果使用TCP/IP长连接,DATASNAP的负载能力大概是几百。因为众所周知的原因,阻塞型SOCKET,一个SOCKET连接需要中间件开启一个线程为其服务,几百个长连接需要WINDOWS开启几百个线程为之服务。这种情形中间件INDY的线程池其实没有起多大作用。2.为了避免阻塞型INDY的短点,可以使用TCP/IP短连接,DATASNAP的短连接是这样做的:客户端连接上中间件---》客户端向中间件申请数据服务---》中间件返回数据给客 阅读全文
posted @ 2013-07-30 15:13 delphi中间件 阅读(8527) 评论(0) 推荐(0) 编辑
摘要: 1.中间件需要连接SQL SERVER\ORACLE\MYSQL多种数据库,怎么办?【解决】:可以搞多种数据模块池对应多种数据库,一种数据模块池对应一种数据库2.中间件业务对象多,在一个单元里面定义所有的远程方法不合适,而且不同的开发小组分别负责不同的业务,远程方法全部定义在一个单元里面开发确实不方便,怎么办?【解决】:DATASNAP里面一个TDSServerClass对象对应一个业务对象,多个TDSServerClass对象对应多个业务对象。对业务进行分类,根据分类封装出多个业务对象。 阅读全文
posted @ 2013-07-30 14:42 delphi中间件 阅读(2312) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2013-07-20 16:30 delphi中间件 阅读(447) 评论(0) 推荐(0) 编辑
摘要: 对于通讯协议的封装来说,经常就是“拼字节”,“拼字节的位”。本篇通过汉字机内码的例子来说明DELPHI对字节是如何操作的。一个汉字占用2个字节的内存空间,也就是一个字,一个字=二个字节。“啊”字的汉字机内码则是B0A1H,那么DELPHI如何通过机内码来显示“啊”字呢?DELPHI的16进制数表示类... 阅读全文
posted @ 2013-07-18 09:27 delphi中间件 阅读(2260) 评论(0) 推荐(0) 编辑
摘要: 现在的DELPHI因为支持泛型的语法,所以也能支持模板编程了。// 标准模板unit UntPools;interfaceuses Classes, SysUtils, UntThreadTimer;type { 这是一个对像池, 可以池化所有 TObject 对像 } { 用法: 在一个全局的地方定义 var Pooler: TObjectPool; 用到的地方 obj := Pooler.LockObject as Txxx; try finally Pooler.UnlockObject; end; 初始化 initialization Pool... 阅读全文
posted @ 2013-07-15 17:43 delphi中间件 阅读(4539) 评论(2) 推荐(2) 编辑
摘要: 任意对象若想要序列化,他无限分解后,只会剩下:基础数据类型(int、string、DateTime等)和数组,而其余的,皆为浮云。强大的功能的背后总是性能的牺牲。为了支持一切对象,不得不再次牺牲序列化的大小,在每一个集合的元素前都写入其类型。在牺牲序列化后的大小,得到的是——任意对象的复制!在我们总在讨论为了跨平台而使用XML、JSON。。。。。。序列化的时候,请记住,其实我们有种最最原始的方式,那就是结构体和拼字节的序列化方式也是可以跨平台的。而且这种原始的武器真的很简单很强大。至于通讯,简单的SOCKET编程你会吗? 阅读全文
posted @ 2013-07-13 15:26 delphi中间件 阅读(1081) 评论(0) 推荐(0) 编辑
摘要: SOA 是一种程序设计思想,其实早在远古时代(计算机史)它就已经出现了。无非就是把系统分解,将数据和业务逻辑部分尽量独立出来,然后以服务形式提供给另外的系统共用。那时也有一些可以实现 SOA 的工具,比如 DCOM、CORBA 等,不过前者仅限于 Windows,后者又太复杂,而且也仅对 C/C++、Delphi、Java 这等语言有较好支持,而且也都是商业开发软件中才会包含,对于开源的脚本类语言来说支持很差甚至没有支持(因为太复杂了,不是什么人都可以实现的了的,能够把整个 CORBA 规范完整读下来,都需要很好的耐心,还不一定都能够完全理解)。之后互联网发展了,XML-RPC 出现了,XML 阅读全文
posted @ 2013-07-13 15:24 delphi中间件 阅读(1024) 评论(0) 推荐(0) 编辑
摘要: 群里有位同仁提出他有一个DATASNAP远程方法超过了32个参数,然后DELPHI编译通不过,提示方法参数不能超过32个,问怎么办?于是群内同仁纷纷出主意,我说用OLEVARINAT数组,有人说用RECORD,我又说别说用RECORD,连自定义的类也是可以的。于是我想到了实现,用SUPEROBJECT序列RECORD或者CLASS为JSON的字符串挺方便的,中间件收到客户端传来的JSON字符串再还原为RECORD或者CLASS。unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, C 阅读全文
posted @ 2013-07-09 11:27 delphi中间件 阅读(2167) 评论(0) 推荐(0) 编辑
摘要: pci转并口卡模拟出来的并口并不能完全等同于主板上真正的并口。真正的并口打印的时候可以“直接瓶口输出”打印,而不需要安装打印驱动程序。这个模拟出来的并口却不能使用“直接瓶口输出”(打印机不打印,程序卡死)。怎么办:1.在电脑的PCI插槽上插好PCI转并口卡2.安装PCI转并口卡的驱动程序3.连接好小票打印机的打印线,并打开打印机的电源开关4.安装小票打印机的驱动程序,设置打印机的端口号为LPT3(PCI转并口卡模拟出来的端口号)测试可以打印“打印测试页”。5.修改client.ini文件更改里面的配置项,设置porttype=usb 阅读全文
posted @ 2013-07-02 16:52 delphi中间件 阅读(1919) 评论(0) 推荐(0) 编辑
摘要: 搞了好久却原来其实太简单: cxRichEdit1.Clear; Clipboard.Clear; ActiveSheet.cells[2, iCol].CopyPicture(1, 2); cxRichEdit1.PasteFromClipboard; 阅读全文
posted @ 2013-05-09 12:27 delphi中间件 阅读(593) 评论(0) 推荐(0) 编辑
上一页 1 ··· 134 135 136 137 138 139 140 141 142 ··· 197 下一页