因此,我一直在討論各種不同的想法,試圖發送電子郵件新聞稿,並且幾乎在每一個回合都遇到阻塞。關於監控的建議通訊在ASP.NET中發送成功
我現在使用共享主機環境,並且需要它在此環境中保持穩定。
我想創建一個定時的計劃系統,將批處理作爲後臺服務發送,但是我無法在此環境中執行此操作,所以我現在只需將一個長超時的AJAX帖子轉換爲.NET表單功能。
我有發送電子郵件,一個共同的功能,和我通過我的數據庫循環這樣做如下
For Each email In list
If Common.isValidEmail(email("email")) Then
Try
Common.sendEmail(email("email"), Common.tCase(email("email")), content, subject, "true", "newsletter", "customer")
Catch ex As Exception
errorList += email("id") & ","
End Try
Else
Common.changeData("DELETE FROM mailingList WHERE id='" & email("id") & "'")
End If
Next
我在這裏趕上兩個潛在的錯誤情況下,isValidEmail
功能檢查,如果電子郵件是正確的,並然後我嘗試發送一封郵件,如果失敗了,我就會建立一個錯誤列表。
但是,如果服務中斷,這是不好的。
因此,我正在考慮通過爲每個電子郵件地址的數據庫行添加一個「發送」標誌來修改它,但是這需要爲每個循環寫入數據庫,這是否會拼命減慢速度?
然後任何時候它退出,我可以回到數據庫並重新發送給未被標記的用戶。
有沒有人有更好的想法?我希望這是一個後臺服務,並且正在考慮將其遷移到Azure,希望我可以運行預定的後臺服務,但現在,我需要一個解決方案來共享環境。
對......好吧,在這種情況下......這裏就是了! – 2012-07-13 15:37:46