簡體   English   中英

WCF寫入IIS日志而不會阻止請求

[英]WCF write to IIS logs without blocking the request

我有一個要求,我想針對當前請求將WCF方法的響應記錄到IIS日志中。 這目前已實現,但問題是我必須先將響應對象序列化,然后再將其記錄為AppendToLog方法,因為它僅采用字符串輸入參數,而這種序列化花費了大部分時間。 這大大增加了整體響應時間。

我想了解在將響應返回給客戶端之后是否可以通過任何方式進行此日志記錄? 我試圖在return語句之前異步執行此操作,但是由於Current Context為null,因此無法正常工作。

請讓我知道如何解決這個問題?

您可以克隆CurrentContext對象,然后將克隆的副本傳遞到您引用的async方法中嗎? 或將上下文對象中所需的值放入單獨的變量中,然后將這些變量直接傳遞到async方法中。

您肯定要進行負載測試,如果...如果序列化花費的時間太長,並且端點調用過多,則線程數可能會非常高。

一種選擇是將LogWriting委托給應用程序中的其他線程。 這樣,您可以將對象推送到“記錄隊列”並繼續進行調用。

處理日志寫入的線程可以按自己的步調追加到日志中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM