Show Menu
主题×

企业开发运营

DevOps涵盖以下过程、方法和通信:
  • 简化软件在各种环境中的部署。
  • 简化开发、测试和部署团队之间的协作。
DevOps旨在避免以下问题:
  • 手动错误。
  • 遗忘的元素;例如,文件、配置详细信息。
  • 差异;例如,在开发人员的本地环境与其他环境之间。

环境

Adobe Experience Manager(AEM)部署通常由多个环境组成,用于不同级别的不同用途:
生产环境必须至少有一个作者和一个发布环境。
建议所有其他环境也由作者和发布环境组成,以反映生产环境并支持早期测试。

开发

开发人员负责开发和自定义建议的项目(无论是网站、移动应用程序、DAM实施等),并具备所有所需的功能。 该指南:
  • 开发和定制必要的元素;例如,模板,组件,工作流,应用程序
  • 实现设计
  • 开发必要的服务和脚本以实现所需的功能
开发环境的配 置可能 取决于各种因素,但通常由以下几部分组成:
  • 具有版本控制的集成开发系统,以提供集成的代码库。 它用于合并和合并来自每个开发人员所使用的各个开发环境的代码。
  • 每个开发者的个人环境;通常驻留在本地机器上。 以适当的间隔将代码与版本控制系统同步
根据系统的规模,开发环境可以同时具有作者实例和发布实例。

质量保证

质量保证小组利用此环境对新系统进 行全 面测试;设计和功能。 它应具有创作和发布环境以及适当的内容,并提供所有必要的服务以启用整套测试。

暂存

暂存环境应是生产环境的镜像——配置、代码和内容:
  • 它用于测试用于实现实际部署的脚本。
  • 它可用于部署到生产环境之前的最终测试(设计、功能和界面)。
  • 虽然分阶段环境并不总是与生产环境相同,但应尽可能接近以启用性能和负载测试。

生产——作者和发布

生产环境由实际创作和发布实施所 需的环境组成
生产环境至少由一个作者实例和一个发布实例组成:
根据项目的规模,它通常由多个作者和/或发布实例组成。 在较低级别,该存储库也可群集化为多个实例。

创作

作者实例通常位于内部防火墙后。 这是您和您的同事执行创作任务的环境,例如:
  • 管理整个系统
  • 输入内容
  • 配置内容的布局和设计
  • 将内容激活到发布环境
已激活的内容将打包并放入创作环境的复制队列中。 然后,复制过程会将该内容传输到发布环境。
为了将发布环境中生成的数据反向复制回创作环境,创作环境中的复制侦听器将轮询发布环境并从发布环境的反向复制输出框中检索此类内容。

发布

发布环境通常位于非军事区(DMZ)中。 这是访问者访问您的内容(例如,通过网站或以移动应用程序的形式)并与其交互的环境;公开或在内部网中。 发布环境:
  • 保留从创作环境复制的内容
  • 向访客提供该内容
  • 存储访客生成的用户数据,如评论或其他表单提交
  • 可以配置为将此类用户数据添加到发件箱,以便反向复制回创作环境
发布环境可实时动态生成您的内容,并且内容可以针对每位用户进行个性化。

代码移动

代码应始终从下到上传播:
  • 代码最初是在本地环境中开发的,然后是集成开发环境
  • 然后对QA环境进行彻底测试
  • 然后在登台环境中再次测试
  • 只有这样,才应将代码部署到生产环境
代码(例如,自定义的Web应用程序功能和设计模板)通常通过在不同内容存储库之间导出和导入包来传输。 如果有意义,可以将此复制配置为自动过程。
AEM项目通常触发代码部署:
  • 自动:用于传输到开发和QA环境。
  • 手动:部署到暂存和生产环境的方式更加受控,通常是手动的;但是,如果需要,可以实现自动化。

内容移动

为生产创建的内容应始 终在 生产作者实例上进行创作。
内容不应遵循从较低环境移动到较高环境的代码,因为让作者在本地计算机或较低环境上创建内容,然后将其移至生产环境不是一个好做法,并且可能会导致错误和不一致。
应将生产内容从生产环境移动到分阶段环境,以确保分阶段环境提供高效、准确的测试环境。
这并不意味着升级内容需要与生产持续同步,常规更新已足够,但在测试新的代码小版本之前尤其如此。 QA和开发环境中的内容无需像以前那样频繁更新,它应该只是生产内容的良好表现形式。
可以传输内容:
  • 通过导出和导入包,在不同环境之间实现。
  • 在不同实例之间——通过直接复制( AEM复制 )内容(使用HTTP或HTTPS连接)。