我们使用机器学习技术将英文博客翻译为简体中文。您可以点击导航栏中的“中文(简体)”切换到英文版本。
使用适用于 .NET 和 CAST 的 Amazon Transform 加速
这篇文章由 CAST 的尼古拉斯·比道克斯、盖比·乔克拉拉、达米安·桑特共同撰写
在当今快速变化的云环境中,对传统 .NET 应用程序进行现代化改造是企业转变其应用程序组合的绝佳机会。但是,由于专业知识有限和资源密集型行动,现代化带来了挑战。适用于 .NET 的 Amazon Transform 与 CAST Highlight 一起,为寻求高效、高效地实现其 .NET 应用程序现代化的企业提供了一个引人注目的解决方案。这篇文章演示了这些服务如何协同工作,以简化现代化流程、降低风险并加快云转型之旅。
导言
传统的 .NET 应用程序通常会阻碍组织在云时代的灵活性和可扩展性。对这些应用程序进行现代化可以显著节省成本、提高性能和增强可扩展性。但是,如果不进行战略性处理,该过程可能会复杂、耗时且存在风险。
在这种情况下,Amazon Transform for .NET 和 CAST Highlight 相结合,使客户能够更轻松地实现应用程序组合的现代化。适用于 .NET 的 Amazon Transform 是首款用于对 .NET 应用程序进行大规模现代化改造的代理人工智能服务。它可以帮助您对基于 Windows 的 .NET 应用程序进行现代化改造,使其为 Linux 做好准备的速度比传统方法快四倍,并且可以节省多达 40% 的许可成本。它支持转换各种 .NET 项目类型,包括 MVC、WCF、Web API、类库、控制台应用程序和单元测试项目。
CAST Highlight 是一种智能软件解决方案,可帮助组织快速了解其定制开发的应用程序。它为每个应用程序提供快速而全面的分析,从而深入了解云就绪情况、软件质量、代码复杂性和开源风险。它还提供切实可行、按优先顺序排列的改进建议,使企业能够就云迁移、现代化和数字化转型计划做出明智的决策。
解决方案概述
我们的解决方案方法结合了用于投资组合评估的 CAST Highlight 和用于代码转换的 Amazon Transform for .NET 的优势。以下是该过程的高级概述:
- 产品组合评估:CAST Highlight 分析您的应用程序组合,深入了解云就绪和现代化潜力。
- 现代化规划:根据 CAST 的分析,将应用程序分为"波浪"以进行转型,从"理想"到"复杂"候选者。
- 代码转换和验证:适用于 .NET 的 Amazon Transform 将基于微软 Windows 的源代码转换为跨平台的 .NET,处理整个转换过程,并通过执行单元测试用例来验证转换后的代码。
- 转型后分析:CAST Highlight 对转型前后的代码进行比较分析,确定进一步的现代化机会。

图 1 — 采用 CAST Highlight 和 Amazon Transform for .NET
先决条件
在开始工作流程之前,请确保您有:
- 具有使用适用于 .NET 的 Amazon Transform 的适当权限并已设置您的亚马逊云科技身份中心的亚马逊云科技账户
- CAST Highlight 账户和安全令牌
- 访问您希望在 GitHub 中进行现代化改造的 .NET 应用程序的源代码存储库
- 当前,CAST Highlight 仅支持与 GitHub 和 GitLab
- 具有适当权限的 GitHub 或 GitLab 账号(用于 CAST Highlight)
- Python 安装在您的本地计算机或 EC2 实例上
- 熟悉 .NET 框架和基本的云概念
完成所有步骤的预计时间:2 小时以上,具体取决于您的应用程序组合的大小和复杂性。
分步工作流程
以下是运行上述工作流程的分步说明。
第 1 步:用户将其源代码下载到本地计算机上,并在 CLI 模式或桌面模式下运行 CAST Highlight Code Reader 来分析代码。代码阅读器可以在 EC2 实例上运行,也可以直接作为 GitHub 操作运行。客户必须选择 GitHub 选项,这样 CAST 才能在波浪计划中获取存储库详细信息和分支名称。扫描完成后,CAST Highlight 会自动将分析结果上传到 CAST Highlight 门户,而不会泄露任何客户代码片段。仅上传分析结果元数据。

图 2 — 登录 CAST Highlight
第 2 步:CAST Highlight 检查项目类型,并在适当时推荐适用于 .NET 的 Amazon Transform 代理以促进转型。
第 3 步:CAST Highlight 为所有包含存储库名称和分支信息等基本详细信息的自定义 .NET 应用程序生成包含推荐波次的投资组合细分。


图 3 — 基于 CAST 亮点分析的波浪生成
第 4 步:用户可以在创建 .NET 转换任务时将 CAST 脚本生成的 JSON 直接上传到亚马逊云科技转换,从而开始第一波"理想候选人",这样他们就可以使用 CAST Highlight 已经评估和分类的存储库了。用户可以使用"上传自定义映射"功能将此 JSON 上传到 Amazon Transform 任务。
现在,工作流程移至适用于 .NET 的 Amazon Transform 代理进行代码转换过程。
- 在本地计算机上从 CAST Highlight 下载用于预转换的 CAST 自动化脚本:
- https://doc.casthighlight.com/extensions/extension.php?identifier=cast.awstransform.upstreamrecommendations
- 使用 CAST Highlight 中的脚本运行以下命令提取应用程序波浪
- python CastAWSTransformAdvisorExtraction.py —cast-token <CAST SECURITY TOKEN>
- 输出 JSON 文件可用于在 Amazon Transform 中选择存储库,如图 4 所示。
第 5 步:为代码转换流程设置 Amazon Transform
5.a 为 .NET 创建亚马逊云科技转换任务

图 4 — 使用 Amazon Transform 创建任务
5.b 安装代码连接器。

图 5 — 设置与源代码存储库的连接器
5.c 确认要转换的存储库在此步骤中,使用"上传自定义计划",将从 CAST 亮点生成的 JSON 文件上传到经过评估后使用 Amazon Transform 进行代码转换的存储库。

图 6 — 将 CAST Wave 上传到存储库映射

图 7 — 第 1 波和第 3 波 JSON 文件

图 8 — Amazon Transform 页面中的波浪选择
选择并批准存储库后,Amazon Transform 将对这些应用程序进行现代化改造。转换完成并执行单元测试用例项目后,代码将写回存储库,客户可以继续执行后续步骤。
5.d 转换完成并执行单元测试用例后,从"存储库"表中下载仪表板报告

图 9 — 可以下载转换摘要的仪表板页面

图 10 — 执行单元测试用例的仪表板
第 6 步:一旦代码由适用于 .NET 的 Amazon Transform 转换并放入代码存储库中,与 CAST Highlight 的集成将允许触发对转换前后的全面比较分析,以进行安全分析(开源风险、其他漏洞)和整体软件运行状况/技术债务指标。
运行 CAST Highlight 自动化后脚本以读取从 Amazon Transform 下载的转换报告 .json 并将结果上传到 CAST 亮点
<GITHUB_TOKEN>:应具有以下权限 — repo: status、repo_deploy、public_repo、repo: invite
<CAST_HIGHLIGHT_SECURITY_TOKEN>: 从 CAST Highlight 网站生成安全令牌
<PATH_TO_TRANSFORMATION_REPORT_JSON_FILE>: 下载 transformation_report.json 文件的路径位置
从以下网址下载用于后期转换的 CAST Automation 脚本:https://doc.casthighlight.com/extensions/extension.php?identifier=cast.awstransform.downstreamreview
解压缩该文件夹并运行以下命令
python CastAutomationPost.py —json文件路径 <PATH_TO_TRANSFORMATION_REPORT_JSON_FILE> —github-token <GITHUB_TOKEN> —cast-token <CAST_HIGHLIGHT_SECURITY_TOKEN>
第 7 步:导航到 CAST Highlight 网站查看转换前和转换后的应用程序
CAST Highlights 从转换后报告中选择成功转换的存储库,并分别从存储库源和转换后的分支生成转换前和转换后的快照。
在这里,您可以看到,转换后,开源安全、组件安全以及使用适用于 .NET 的 Amazon Transform 在转换后发现的漏洞有了显著改善。

图 11 — 使用 CAST Highlight 运行转换后分析
第 8 步:在 CAST Highlight 中识别后续现代化机会
CAST Highlight 可提供全面的见解,以确定和规划同一产品组合中的 .NET 应用程序和相邻应用程序部分的进一步现代化机会。更多详情,请参阅 CAST Highlight 技术报道
主要优势摘要
通过利用此解决方案,组织可以:
- 加速现代化:实现应用程序现代化的速度比传统方法快 4 倍。
- 降低成本:最多可节省 40% 的许可成本。
- 最大限度地降低风险:全面了解应用程序运行状况和现代化准备情况。
- 优化资源:根据数据驱动的分析确定现代化工作的优先顺序。
- 提高质量:在整个现代化过程中提高代码质量并减少技术债务。
- 战略规划:使用 CAST 的建议制定明确的分阶段现代化方法。
结论
Amazon Transform for .NET 和 CAST Highlight 的集成展示了大规模加速 .NET 应用程序现代化的强大方法,从应用程序组合分析到通过无缝体验进行代码转换。
行动呼吁 — 开始您的 .NET 现代化之旅
- 注册参加免费的 CAST Highlight 技术研讨会
- 通过亚马逊云科技控制台探索适用于 .NET 的 Amazon Transform
- 联系您的亚马逊云科技代表或 CAST 合作伙伴,获取个性化指导
与任何其他云提供商相比,亚马逊云科技的服务和这些服务中的功能要多得多,这使得将现有应用程序迁移到云端并构建几乎任何你能想象的东西都能更快、更轻松、更具成本效益。为你的 Microsoft 应用程序提供所需的基础架构,以推动你想要的业务成果。访问我们的亚马逊云科技上的 .NET 和亚马逊云科技数据库博客,获取有关微软工作负载的更多指导和选项。联系我们,立即开始您的迁移和现代化之旅。
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您发展海外业务和/或了解行业前沿技术选择推荐该服务。