当前位置: 首页 > news >正文

Adobe LiveCycle ES、LiveCycle DS 与 BlazeDS 关系解析与比较

Adobe LiveCycle 系列产品是企业级解决方案的重要组成部分,但在命名和功能上常常造成混淆。

产品定义

Adobe LiveCycle ES (Enterprise Suite)

LiveCycle ES是一个基于SOA的平台,部署在J2EE应用服务器上。它提供开发、部署、配置和执行服务的功能。基础平台包含多种内置服务,如发送/接收电子邮件、FTP文件传输、调用Web服务、操作服务器端文件、执行SQL等。用户还可以开发并部署新的Java POJO服务。

LiveCycle ES的核心特点包括:

  • 支持通过多种端点调用服务(Java API、Web服务、监视文件夹、电子邮件和Flash Remoting)
  • 支持通过工作流编排服务创建"超级服务"
  • 提供多种文档和流程相关的解决方案组件

Adobe LiveCycle DS (Data Services)

LiveCycle DS实际上是LiveCycle ES的一个解决方案组件,但也可以作为独立产品使用。它专门为Flex和AIR应用程序提供数据支持功能,包括:

  • 数据同步
  • 数据分页
  • 数据推送
  • 数据冲突管理
  • 发布-订阅消息传递

LiveCycle DS有两种版本:

  1. 完整版:按CPU许可
  2. Express版:免费但限制为单应用单CPU

BlazeDS

BlazeDS是一个免费的开源产品,提供LiveCycle DS功能的子集。它适合许多开发场景,但对于需要冲突管理等高级功能的大规模应用,可能需要考虑LiveCycle DS。

关系分析

包含关系

LiveCycle ES作为一个企业级套件,包含多个解决方案组件,其中就包括LiveCycle DS。因此,可以认为:

LiveCycle ES ⊇ LiveCycle DS

功能对比

特性LiveCycle ESLiveCycle DSBlazeDS
基础数据服务包含(通过DS)
高级数据管理包含(通过DS)有限
文档处理服务
工作流编排
实时消息协议(RTMP)包含(通过DS)
开源
成本免费

LiveCycle产品关系图

LiveCycle DS Community Edition

这是BlazeDS的付费支持版本,为需要商业支持的开源用户提供选择。

与ColdFusion的集成

ColdFusion 8 企业版不包含完整的 LiveCycle DS 许可证,但可以集成LiveCycle DS Express或使用BlazeDS。需要注意的是,免费版的LiveCycle DS Single-CPU License有一些限制:

  • 不包含与LiveCycle文档和流程服务的轻松集成
  • 使用RIA-to-PDF功能生成的文档会有水印

实时消息传递差异

LiveCycle DS 支持真正的推送功能,通过Adobe的实时消息协议(RTMP)在服务器和客户端之间建立恒定连接。而BlazeDS由于RTMP不是开源的,无法提供这一功能,通常使用AMF轮询作为替代方案。

适用场景建议

  1. 需要完整文档工作流和数据处理:选择LiveCycle ES
  2. 仅需要高级数据服务:选择LiveCycle DS
  3. 预算有限且需求简单:选择BlazeDS
  4. 使用BlazeDS但需要商业支持:选择LiveCycle DS Community Edition

最后

LiveCycle系列产品提供了从完整企业套件到轻量级数据服务的多种选择。理解它们之间的关系和差异有助于开发者根据项目需求做出合理的技术选型。对于大多数开发者而言,BlazeDS已经能满足基本需求,而对于需要高级功能或企业级支持的项目,则可以考虑LiveCycle DS或完整的LiveCycle ES解决方案。

参考资料

  1. Adobe LiveCycle ES官方文档
  2. Adobe LiveCycle DS产品页面
  3. BlazeDS开源项目文档
  4. Adobe技术专家博客文章
  5. 相关产品比较白皮书
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/225971.html

相关文章:

  • java ExecutorService线程池使用(ExecutorService/Completable异步+ExecutorService线程池)
  • MATLAB实战:人脸检测与识别实现方案
  • vue3动态路由的实现以及目录权限的设置
  • 湖北理元理律师事务所:个人债务管理的温度与精度
  • C++输入与输出技术详解
  • LeetCode 热题 100 208. 实现 Trie (前缀树)
  • 机器学习算法-逻辑回归
  • 【计算机系统结构】习题2
  • Python进阶与常用库:探索高效编程的奥秘
  • 基于TMC5160堵转检测技术的夹紧力控制系统设计与实现
  • Linux Windows之wsl安装使用简介
  • 蓝光过滤APP:护眼小助手,守护您的视力健康
  • 【Linux网络编程】网络层IP协议
  • OD 算法题 B卷【文件目录大小】
  • 【架构艺术】平衡技术架构设计和预期的产品形态
  • 托福阅读感悟40-3
  • 智能体觉醒:AI开始自己“动手”了-自主进化开启任务革命时代
  • 输入ifconfig,发现ens33不见了,无法连接至虚拟机
  • 华为IP(7)
  • 为什么有的编程语言允许字符串和整数相加?字符串和整数比较?字符串拼接?格式串详解?字面量?
  • 51单片机基础部分——LED
  • vscode + cmake + ninja+ gcc 搭建MCU开发环境
  • MobaXterm国内下载与安装使用教程
  • <5>, Qt系统相关
  • QT中更新或添加组件时出现“”qt操作至少需要一个处于启用状态的有效资料档案库“解决方法”
  • 性能优化 - 案例篇:缓存_Guava#LoadingCache设计
  • C# winform教程(二)
  • 小明的Java面试奇遇之商城系统的技术挑战与实战
  • 生产系统中TongWeb故障应急处理办法
  • 飞牛fnNAS装机之迷你小主机的利旧