【Azure 应用服务】App Service下部署的应用报错 Out of Memory - LuBu0505/My-Code GitHub Wiki

问题描述

应用部署到App Service后,遇见了Out of Memory的错误。

**报错信息:**GetData Error:, Exception of type 'System.OutOfMemoryException' was thrown.,

at System.IO.MemoryStream.set_Capacity(Int32 value)

at System.IO.MemoryStream.EnsureCapacity(Int32 value)

at System.IO.MemoryStream.Write(Byte[] buffer, Int32 offset, Int32 count)

at OfficeOpenXml.Packaging.ZipPackage..ctor(Stream stream)

at OfficeOpenXml.ExcelPackage.ConstructNewFile(String password)

at OfficeOpenXml.ExcelPackage..ctor(FileInfo newFile)

at MyLife.Utility.ExcelHelper.LoadDataTableFromFile(String fileName)

at MyLife.Serivces.GetData()

2021-09-12 05:19:57.0362 | Error | HCPService-StartPreprocessing-Exception of type 'System.OutOfMemoryException' was thrown.-

2021-09-12 05:19:57.0756 | Error | An unhandled exception has occurred while executing the request. System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.

问题解决

面对部署后刚开始启动就出现OOM的错误情况,表示当前定价层的Memroy不足以满足应用的运行。但是App Service不同定价层的内存不同,最低的免费层的RAM为1G,最高可达到14G。 No alt text provided for this image

* (Source : https://www.azure.cn/pricing/details/app-service/) *

如果排除是定价层的内存限制外,还有一个重要的因素就是App Service的平台设置。

App Service支持32位,64位的平台系统。所以如果默认设置的位32位操作系统,那么它最大只支持4G的内存。为了让应用能使用最大的内存并不让APP Service的RAM资源浪费,当面临OOM的问题时,第一时间修改App Service的平台位数位64位。如果依旧出现OOM的情况,就可以考虑升级App Service的定价层。 No alt text provided for this image

[END]

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

分类: 【Azure 应用服务】

标签: Out of MemoryApp Service