【问题标题】:Migrate classic ASP with COM+ to Azure Cloud and DLLs将带有 COM+ 的经典 ASP 迁移到 Azure 云和 DLL
【发布时间】:2018-09-06 17:04:34
【问题描述】:

我有一个经典的 ASP Web 应用程序,并希望将其托管在 Azure 云中(我们自己公司的私有 Azure 包)。

这个应用程序使用 COM+ 对象来实现对数据库的数据访问和其他一些小型实用程序。

在 Azure 上托管 ASP 页面非常容易(它只需要一个 IIS 容器),但似乎不支持 COM+ 对象。

在此应用程序退役之前,这一切都是权宜之计,但迁移到 Azure 将是有益的,因为我们正在将所有内容都迁移到 Azure。

如何继续支持应用程序调用的数据访问组件和其他 COM+ 实用程序?

我愿意:

  1. 反编译它们,弄清楚它们的作用,然后在 .NET 中重建它们
  2. 将它们托管在某种容器组件中(例如某种互操作)
  3. 将它们放在“bin”文件夹中,然后从那里调用它们(告诉这个问题不起作用)

【问题讨论】:

  • “别挂电话!”哈哈。至少你知道。
  • Azure COM Objects的可能重复
  • Windows 容器仍然支持 ASP 和 COM+,azure.microsoft.com/en-ca/overview/containers 所以你应该将这些应用程序移到它们上,然后部署到 Azure。虽然确实如此,但您应该使用 ASP.NET Core 等现代技术整体重写。

标签: c# azure iis asp-classic com+


【解决方案1】:

使用 Azure WebRoles

您实际上可以在较旧的 Azure WebRole PaaS 中执行此操作。它是 Windows VM 上的一个非常轻薄的平台,因此您可以使用 WebRoles 完成很多在 AppServices 或 Azure 中其他较新的 PaaS 中无法完成的工作。 WebRoles 允许您定义一些安装挂钩,您可以使用这些挂钩来注册您的 COM+ 组件,甚至安装其他复杂的依赖项。 See the answer here 了解更多详情。

您甚至可以为 WebRoles 启用远程桌面并直接连接到您的实例。这对于解决设置中的任何问题非常有帮助,但重要的是捕获您需要在安装脚本中进行的所有更改,因为某些 Azure 管理的事件会导致您的 WebRole 被重新映像,在这种情况下,您将丢失通过 RDP 进行的任何不属于您的安装挂钩的自定义。

【讨论】:

  • 您已经指向一个重复项,为什么不直接标记它并继续前进?
猜你喜欢
  • 2016-09-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-16
  • 1970-01-01
  • 2011-08-04
  • 2021-06-05
  • 1970-01-01
相关资源
最近更新 更多