前段時間在作一個項目,須要實現用戶在WEB頁面上傳一些文件後臺應用程序處理以後將結果返回給用戶。
這就涉及到一個WEB頁面與後臺應用程序實現交互的問題,仔細想一想,實現這一效果的方式不少,好比WEB頁面在執行操做以後向數據庫寫一個字段,後臺程序輪詢數據庫,不過這樣的方式會形成應用程序頻繁的鏈接數據庫,性能上會受到很大的影響。若是數據量龐大的話,性能的損失那是至關大的。
那麼咱們還有什麼好的辦法來有效的實現這一交互過程呢,辦法固然是有的。
咱們知道在C#中有一個fileSystemWatcher類,用於監控指定目錄的文件變化狀況。咱們就經過共享文件的方式來實現這一交互過程。
首先咱們來看看需求:
一、當WEB頁面執行某一操做時候通知後臺應用程序
二、後臺應用程序在接收到WEB頁面處理請求以後處理問題並將結果反饋給WEB頁面
好,就這兩點。
實現方式
步驟1,WEB頁面執行某一操做以後在指定目錄生成文件,而且輪詢某一特定文件的值。
步驟2,後臺程序應用fileSystemWatcher類監控這一共享目錄的文件變化狀況,監控到生成了新的文件以後執行預約的處理流程
步驟3,後臺應用程序處理完成,改寫步驟一中特定文件的值。
步驟4,當特定文件的值變化以後根據值內容反饋給用戶。