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

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.xdnf.cn/news/10454.html

相关文章:

  • c++ QicsTable使用实例
  • linux信号详解
  • 人工智能100问☞第38问:什么是多模态模型?
  • 【课堂笔记】生成对抗网络 Generative Adversarial Network(GAN)
  • 任务23:创建天气信息大屏Django项目
  • 【BootLoader】之stm32F407实现bootloader相关问题
  • Python+MongoDb使用手册(精简)
  • python打卡day42
  • 学习日记-day20-6.1
  • 【AI论文】推理语言模型的强化学习熵机制
  • Cocos 打包 APK 兼容环境表(Android API Level 10~15)
  • 从线性代数到线性回归——机器学习视角
  • 获取 HTTP 请求从发送到接收响应所花费的总时间
  • 什么是缺页中断(缺页中断详解)
  • 基于微信小程序的垃圾分类系统
  • 西瓜书第十章——聚类
  • 思科设备网络实验
  • 鸿蒙OSUniApp集成WebAssembly实现高性能计算:从入门到实践#三方框架 #Uniapp
  • 开发指南120-表格(el-table)斑马纹
  • 无法运用pytorch环境、改环境路径、隔离环境
  • Python编程基础(二)| 列表简介
  • 【Redis】笔记|第4节|Redis数据安全性分析
  • 数据类型与推断:TypeScript 的基础
  • wordpress免费主题网站
  • ASP.NET Core SignalR 身份认证集成指南(Identity + JWT)
  • Spring Boot,注解,@ConfigurationProperties
  • 手拆STL
  • 【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 时间事件处理部分)
  • Selenium的底层原理
  • 鸿蒙OSUniApp声纹识别与语音验证:打造安全可靠的跨平台语音应用#三方框架 #Uniapp