PowerShell高級配置

PowerShell高級配置shell


場景:服務器

遠程執行PowerShell腳本傳遞PSObject對象,提示從遠程客戶端計算機接收的數據的當前反序列化對象大小超過容許的最大對象大小。當前反序列化對象大小爲10572800,容許的最大對象大小爲10485760。以下圖:ide

clip_image002

修改遠程服務器默認配置限制:插件

Set-PSSessionConfiguration -name Microsoft.powershell -MaximumReceivedDataSizePerCommandMB 20 -MaximumReceivedObjectSizeMB 203d

clip_image004

提示WSMan提供程序主機進程未能返回適當的響應。主機進程中的提供程序的行爲不正確。以下圖:日誌

clip_image006

查看本地PowerShell日誌:對象

clip_image008

clip_image010

查看遠程服務器上PowerShell日誌:blog

clip_image012

有System.OutOfMemoryException錯誤。從新執行腳本,使用資源監視器觀察內存佔用,以工做集倒序排序,觀察到wsmprovhost.exe進程最大爲512MB,腳本運行失敗。修改Shell內存配置,暫時不修改插件的內存配置:排序

clip_image014

再次觀察內存使用,wsmprovhost.exe已超過512MB限制,腳本返回成功。進程

clip_image015

參考:

Learn How to Configure PowerShell Memory

https://stackoverflow.com/questions/13561730/maximum-data-size-in-a-remote-command

相關文章
相關標籤/搜索