delphi中间件(delphi编写c/s一定需要实用中间件吗)

本文目录
- delphi编写c/s一定需要实用中间件吗
- delphi 哪个中间件好用
- Delphi中间件QuickBurroIII发布在即,该怎么解决
- 程序连接不到数据库delphi
- 有个朋友开发的程序,说是 Oracle + Delphi + Tnxdo中间件 3层结构, 这个Tnxdo中间件是什么
- delphi 分布式架构怎么学
- 后台是ORACLE,DELPHI做前台程序,中间层是WEBLOGIC问,DELPHI中怎样做到连接WEBLOGIC去访问oracle数据
- DELPHI基础教程:Delphi客户服务器应用开发(一)[2]
delphi编写c/s一定需要实用中间件吗
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
delphi 哪个中间件好用
mysql-proxy是官方提供的mysql中间件产品可以实现负载平衡,读写分离,failover等,但其不支持大数据量的分库分表且性能较差。下面介绍几款能代替其的mysql开源中间件产品,Atlas,cobar,tddl,让我们看看它们各自有些什么优点和新特性吧
Delphi中间件QuickBurroIII发布在即,该怎么解决
QuickBurro(快驴)中间件是一套由中国程序员(JopherSoftwareStudio,樵夫软件工作室)研发设计的软件包,目前主要适用于Borland/CodeGearDelphi软件开发环境,用来进行广域网分布式应用项目的开发
系统由网络节点系统(可执行程序)和应用开发组件(VCLComponents)两部分组成,短小精悍、便于安装使用及二次打包发布
通过QuickBurro的节点系统核心服务程序,您可以快速地在广域网上架构“树状层次型应用网络”(因上下分级联机,我们专门称其为“级联网”);而通过其中第二部分的各种开发控件,应用程序员能轻松实现在不同广域网节点之间进行诸如数据库记录远程存取、多媒体数据交换、即时信息播发等实用的信息交换功能
事实上,树形级联状的分布式应用模型是一种极为典型、与客户业务最为接近的网络架构,如大型物流公司、大型分销系统、大型集团公司、政府组织机构等等,——因而,QuickBurro中间件系统具有良好的开发应用价值
程序连接不到数据库delphi
你把程序拷贝到比如D盘根目录下再执行看看,程序放在桌面运行很容易出问题,特别是数据库程序。如果还不行你再检查Appinfo.ini里的配置,修改一下数据库参数就可以了。
有个朋友开发的程序,说是 Oracle + Delphi + Tnxdo中间件 3层结构, 这个Tnxdo中间件是什么
中间件就是在异构系统之间起数据传输,整合的一个作用的一个软件
还有你的tnxdo似乎写错了
bea有一个中间件产品叫tuxedo,是不是指这个,bea已经被oracle收购了
delphi 分布式架构怎么学
由于分布式系统所涉及到的领域众多,知识庞杂,很多新人在最初往往找不到头绪,不知道从何处下手来一步步学习分布式架构。
本文试图通过一个最简单的、常用的分布式系统,来阐述分布式系统中的一些基本问题。
负载均衡
分布式缓存
分布式文件系统/CDN
分布式RPC
分布式数据库/Nosql
分布式消息中间件
分布式session问题
-总结
下图为一个中大型网站/App的基本架构:
在这个架构中,涉及到以上所列的基本问题:
负载均衡
负载均衡是分布式系统中的一个最最基本的问题。在上图中:
网关需要把请求分发给不同的Tomcat;
Tomcat需要把收到的请求,分发给不同的Service;
这都需要负载均衡。一句话:凡是请求从一个入口进来,需要分发给后端不同的机器时,就需要负载均衡。
局域网负载均衡
在上图中,负载均衡发生在局域网内部。在这里,常用的网关软件有Nginx/HAProxy/F5/LVS/各种云上的SLB等。
广域网负载均衡
在上图之外,还有广域网负载均衡。这通常发生在域名服务器上,而不是局域网内部。
同1个域名,映射到不同的局域网集群。
负载均衡算法
常用的负载均衡算法:随机,轮询(Round Robin),最小资源数,hash。
分布式缓存
在上图中,当DB负载过高,我需要为Service机器加缓存时,就遇到一个基本问题:
如果使用local的内存做缓存,则其他Service机器就没办法共用此缓存。
因次,我需要一个可以让所有Service机器共享的缓存,这就是分布式缓存。
常用的分布式缓存组件:Memcached/Redis/Tair等
分布式文件系统
在上图中,当我要存储客户端上传的图片文件时,就会遇到另一个基本问题:我不能把图片存在每个Tomcat的本地文件系统里面,这样的话,其他机器就没办法访问了。我需要一个让所有机器可以共享的文件系统,这就是分布式文件系统。
常用的分布式文件系统:MogileFS/TFS/HDFS/Amazon S3/OpenStack Swift等
当使用了分布式文件系统,对外提供图片url访问服务时,就会遇到另一个基本问题:如果每次文件的访问,都要到分布式文件系统里面去取,效率和负载就可能成为问题。
为此,就需要引入CDN。
常用的CDN厂商,比如ChinCache。当然,现在的各种云存储,比如七牛云,阿里云,腾讯云,已经自带了CDN。
分布式RPC
分布式系统的一个基本问题就是:机器与机器之间如何通信? 我们都知道底层原理是TCP/IP,Socket。
但一般很少有人会去裸写Socket,实现机器之间的通信。这里,最常用的组件就是RPC。
***隐藏网址***
在RPC内部,一般都自己实现了负载均衡。还有更复杂的,如多版本,服务降级等。
补充一句:虽然底层原理都是Socket,但使用不同框架/组件时,通常都有其自己的跨机器通信方式,比如Mysql JDBC,RPC, 消息中间件等。
分布式数据库
在上图中,DB是单一节点。当访问量达到一定程度,就会涉及到Mysql的分库分表问题。
分库/分表之后,就会涉及到join的问题,分布式事务的问题。
关于分库分表,业界也早有成熟方案。对上层屏蔽分库分表,sql的执行,像是在单库一样。
还有像MongoDB这种Nosql数据库,天生是分布式的。但同样会面对Mysql分库分表所要面对的问题。
还有像阿里的OceanBase,有Mysql的强一致性保证,又是分布式的,还可以支持分布式事务。
分布式消息中间件
在上图中,没有提及到消息中间件。相对其他基本问题,这个需要一个更适合的业务场景来谈,在以后的章节中,会再详述。
常用的消息中间件,比如老一辈的ActiveMQ/RabbitMQ, 新一点的,阿里的RocketMQ,LinkedIn的Kafka等。
消息中间件的一个典型场景就是:通过最终一致性,解决上面的分布式事务问题。
分布式session问题
在传统的单机版应用中,我们经常使用session。而当单机扩展到多机,单机的session就没办法被其他机器所访问。
此时就需要使用分布式session,把session存放在一个所有Tomcat都可以访问的地方。
关于分布式session,业界早有成熟方案,在此不再详述。
总结
本文罗列了分布式系统的各种基本问题和业界常用的技术,希望建立起分布式系统的一个宏观图谱。
后台是ORACLE,DELPHI做前台程序,中间层是WEBLOGIC问,DELPHI中怎样做到连接WEBLOGIC去访问oracle数据
delphi客户端 + java(加载在weblogic中作为中间层服务,采用servlet) + oracle数据库服务器中,
delphi 与java 通过XML交互通讯,发送对应的JOB就可以了。
DELPHI基础教程:Delphi客户服务器应用开发(一)[2]
关系数据库体系结构与客户/服务器模式
关系数据库概述
关系数据库被定义为一种特殊的数据库 其中各个文件(称作关系)以平面文件(FlatFiles)或表的形式保持数据 表必须只含有一种记录类型 每个记录具有固定数目的字段 所有字段皆显示命名 表内的字段内容是各不相同的 不允许重复组(repeating groups) 不含有复制记录和预定的记录序列
在构造关系数据库时 必须特别注意关系的内容以及记录的各属性(字段)之间的内在联系
关系数据库上的基本操作有选择 投影 连接和除法 选择建立一个含有与原始关系相同列数的新表 但是行只包括那些满足某些特写标准的原始关系行 投影操作指定将被选择的列 因而形成的表只含有原始表列的一个子集 如果在投影操作删除的列中有两个行不同 那么将只有一个记录被转入新的关系 连接操作从两个或多个表中组合信息 两个表中的公用字段用作组合记录的基础字段 在公用字段中具有相等值的记录被连接在结果关系内
关系数据库实现的任务
实现关系数据库所涉及的任务分为三组
● 为DBMS定义数据库结构的任务
● 将数据库分配给物理存储介质的任务
● 建立数据库数据的任务
执行这些任务的方法取决于所采用的DBMS产品
各种不同的DBMS产品提供定义数据库结构的实用程序 这些实用程序使用一种专用的数据定义语言(DDL) 某些DBMS产品含有一些规定 一旦数据库已被定义到DBMS 即将该数据库分配到物理介质 根据应用程序处理的特点 数据可以定位在指定表上或定位在同一磁盘上 它有些DBMS产品偏重于数据库数据的建立
如上所述 数据库定义 存储分配以及数据建立过程都将取决于应用需求和所选择的特定DBMS产品的特征
关系数据操作
为了开发数据库应用 需要使用一种语言来表达处理逻辑 关系数据操作语言共有四类
● 关系代数 它是一种语言 提供一组远算符处理关系数据库中的关系
● 关系演算 它是一种语言 在该语言中用户指定一组来自关系数据库内数据操作的结果
● 面向变换的语言 它们构成一类非过程语言 这类语言将表示为关系的输入数据变换成表示为单个关系的结果 SQL就是一种面向变换的语言
● 面向图形的系统 它们为用户提供一个关系结构的图形 如Borland的Paradox 和IBM公司的QBE(Query By Example)
用户可以采用多种方法与关系数据库进行联系
● 某些DBMS产品 包括有生成表格的工具并提供表格和报告的处理
● 通过查询语言提供一个接口 它们执行查询和更新功能 最重要的查询语言是SQL
● 与关系数据库联系的第三种方法是通过应用程序
扩展关系系统
众多的销售商都在积极扩展关系模型 这些扩展包括在关系表中存储复杂数据类型 存储过程 触发器以及二进制大对象(BLOB) 目前正在SQL 标准中考虑的SQL扩展将包括对对象的进一步支持 还有可能包括对用户定义数据类型及嵌套表的支持 向关系模型提供对象扩展的产品包括Sybase Informix Oracle和Borland
SQL:集成客户/服务器体系结构的基本链路
SQL为前面讨论的集成客户/服务器体系结构提供一条基本链路 目前美国国家标准局(ANSI)已认可SQL作为操作数据库的正式工业标准 它是许多数据库管理系统(DBMS)产品都采用的数据存取语言
SQL允许用户在关系表数据上进行查询 建立新表 存取现有的远程表 操作数据 建立应用程序存取SQL数据 运行SQL语句 处理错误以及访问多个服务器 SQL数据库服务器是多用户关系数据库管理系统(DBMS)
SQL可以作为一个查询语言用于交互式使用或嵌入在应用程序中 在执行查询时 SQL接受一个或多个关系作为输入并产生一个关系作为输出 结果是一个表或平面文件 例如 一批不含有重复组的同一类型记录 在查询多个表时 SQL将这些表连接起来 SQL内还含有一些规定 用来向表中插入新数据 从表中删除数据或修改表中的数据
各种数据库服务器功能介绍
服务器数据管理包括若干软件 它们使用户可以访问网络中的任何节点以及确保多用户环境下的保密性 可恢复性和完整性 如前面所提到的 客户/服务器计算中的基本存取链路是SQL 它是一种高级非过程数据库语言 现在已开发出很多支持SQL 的后端服务器及DBMS 下面将描述这些产品
DB
DB 是一种由IBM公司开发的RDBMS 它使用SQL执行所有的数据库操作 数据定义 数据存取 数据操作以及授权功能 SQL语句由用户在一个客户机节点从键盘输入或嵌套在应用程序中
DB 的结构包括表 视图 表空间 索引 索引空间 数据库和存储组 这种RDBMS提供有允许用户动态建立和修改这些结构的工具 DB 还包括一些并行处理软件 以控制和限制干预 后备和恢复功能以及安全性保证等
并行处理通过锁来完成 当应用程序读数据库数据时 DB 在该数据上获取一个共享锁 允许其他应用程序读这个相同的数据 如果一个应用程序需要修改数据 那么DB 将一个互斥型锁放在该数据上 以阻止其它应用程序访问这个数据 DB 还提供一些关于锁的级别或锁的大小的任选项
DB 周期性地存储并检查所有数据库变化 所有驻留在系统缓冲区中的变化被写到数据库 并将一个变化的记录载入日志 以最近一次写到日志的变化起所建立的全部映像可用于完成系统故障的恢复 DB 包括一些用来从备份拷贝重新建立数据库的实用程序 这种实用程序含有一个选择项 允许用户只拷贝表空间中那些自最后一个备份后新被修改的页面
DB 还含有一些用来保护数据库的安全性规定
Borland对象成分体系结构(BOCA)
BOCA建立了一个既考虑开发工具又考虑数据库管理工具的客户/服务器体系结构 它将一级面向对象的工具 中间件和数据库服务器技术集中在一起提供客户/服务器的解决方案 该体系结构的组成部分有
先进的面向对象工具
Borland建立有广泛基础和紧密集成的面向对象的工具 这些工具充分利用了当前客户/ 服务器变革的优点 使用面向对象的方法学 建立了如下产品 Borland C++ Borland Delphi Paradox QuattroPro Visual dBase以及ObjectVision等
IDAPI
IDAPI(集成数据库应用程序设计接口)是Borland公司的SQL连通性解决方法 IDAPI使得开发人员能够以更高的效率建立数据库应用 允许用户在多种硬件和操作系统平台以及网络环境下访问 以多种数据库格式存储的数据
InterBase
InterBase是一种分布式SQL数据库服务器 它支持每个数据库系统查询数据并将信息返回到其它任何一个InterBase服务器 InterBase 的可变体系结构代表了关系系统技术的第三次浪潮 可变引擎使得InterBase可以以最少的锁支持高效事务处理和决策支持事务处理
Borland公司的面向对象技术使得开发人员可以通过构造模块化的应用成分来建立复杂客户/服务器系统 这些模块化应用成分可以很容易地开发 测试 维护和增强 并可方便地装配到复杂的应用程序包中 此外Borland公司的可视化技术极大地提高了软件生产率
Informix SQL服务器系列
Informix公司推出了多种产品来满足特定的客户/服务器需求 它们包括Informix On Line Informix TP/XA Informix Star Informix On Line/Optical和Informix On Line工作站版
Informix On Line是一个联机事务处理(OLTP)数据库服务器 具有可用性 数据完整性以及多媒体数据管理能力 它建立有效的数据存储方法进行快速数据存取 缓冲数据于内存最低限度地使用磁盘存取 利用多处理器特征 允许不同处理器同时存取 以及自动确定是有效的搜索策略等 从而获得极高的性能
Informix TP/XA将On Line连接到事务处理管理程序 支持那些涉及多个数据库以及多个DBMS(由不同的销售商提供)的事务处理 在众多RDBMS中 Informix 第一个向依从于X/Open XA的事务处理管理程序提供了这种基于标准的接口
Informix STAR是一种用于On Line的分布式客户/服务器数据库产品 它提供最佳的性能 并且具有最小的网络通信量 站点透明性以及在不同站点操作数据库的高度可靠性
Informix On Line/Optical是一种针对On Line用户的附加产品 这些用户想在他们的数据库系统上使用具有大容量存储能力的光学设备 On_Line/Optical允许用户在 写一次读多次 (WORM)的光学子系统上存储BLOB 用户必须拥有On Line/Optical On Line和一个光学子系统 那当然 如果没有这个On Line/Optical产品用户仍可以使用On LIne在磁存储设备上操作BLOB
Informix On Line工作站版是On Line管理员手册的图形化版本 该工作站版具有与硬件版本相同的技术内容 但它是构造在一个窗口化 点一揿式(Point and Click)图形接口 采用关键字交叉查阅 这使得用户可以在某一窗口中存取所需信息的同时 在另一窗口中配置监视或调节On Line
lishixinzhi/Article/program/Delphi/201311/25138
更多文章:
tcp ip四层网络模型(TCP IP参考模型共分为四层:( )、网络层、传输层、应用层)
2026年10月10日 15:20
sql server数据库管理系统是基于(MS-SQL 是甚麼)
2026年10月10日 14:40
oracle11g安装和配置(oracle数据库安装在什么地方)
2026年10月10日 09:10
php安装图文(php页面加入图文编辑框,这是什么技术,请大师指点)
2026年10月10日 08:50
sqlyog执行sql脚本(如何执行一个mysql的sql脚本文件)
2026年10月10日 06:10




