如何在 Azure 应用服务上运行使用 ts-node 开发的节点应用程序
Posted
技术标签:
【中文标题】如何在 Azure 应用服务上运行使用 ts-node 开发的节点应用程序【英文标题】:How to run node application developed using ts-node on Azure app service 【发布时间】:2018-04-15 14:48:16 【问题描述】:Azure 应用服务上的节点应用程序的大部分 documentation 都是围绕使用 iisnode 模块处理程序运行的,该处理程序使用 app.js 或 server.js 之类的文件。
如果我们想运行我们一直使用 typescript 开发并使用 ts-node 运行的同一个应用程序怎么办?
可能的一种选择是将打字稿文件编译成 javascript 文件,但这会开销创建的文件,这是我不想要的。
【问题讨论】:
我希望有一个解决方案。 Azure 的另一个限制。我希望我的公司使用 AWS。 看起来这在 2020 年仍然不是问题,我能够添加"start": "ts-node server.ts"
并且应用程序在 Azure 上正确部署和启动。如果应用无法启动,很可能与其他问题有关,请为您的应用启用详细日志,然后检查问题所在。
【参考方案1】:
如果我们想运行我们一直使用 typescript 开发并使用 ts-node 运行的同一个应用程序怎么办?
不要使用 ts-node 运行生产代码。转译为.js
并运行js文件。
【讨论】:
巴萨拉特有什么好的理由吗?据我了解,ts-node 无论如何都会将内存中的打字稿文件编译为 js,那么问题是什么?I understand ts-node compiles typescript files in-memory to js anyway
没错。省了一大笔钱
如果你的意思是节省内存,那么从省钱开始,然后在我的场景中,如果在内存中创建文件不是一个大问题,那么理论上无论我们运行 ts 还是 js 文件,编译的 javascript 都是相同的。在那种情况下,无论如何都可以使用 ts-node 运行?
@basarat 我也不明白这个道理,一个中型项目需要多少内存? 100KB?我认为现在任何人都能负担得起?以上是关于如何在 Azure 应用服务上运行使用 ts-node 开发的节点应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Azure App Service 上运行的 ASP.NET Framework App 中禁用服务器 GC
如何在 Visual Studio 中的不同端口上运行 Azure Function 应用程序