Eines unserer Probleme ist, dass unser ausgehenden E-Mail-Server manchmal saugt. Benutzer werden eine E-Mail in unserer Anwendung auslösen, und die Anwendung kann in der Größenordnung von 30 Sekunden dauern, um sie tatsächlich zu senden. Machen wir es noch schlimmer und geben zu, dass wir dies nicht einmal auf einem Hintergrundthread machen, so dass der Benutzer während dieser Zeit vollständig blockiert ist. SQL Server Database Mail wurde als Lösung für dieses Problem vorgeschlagen, da es im Grunde eine Nachrichtenwarteschlange implementiert und physisch näher und viel reaktionsschneller ist als unser E-Mail-Host von Drittanbietern. Es ist auch wirklich sehr einfach für uns zu implementieren, da es nur einen Aufruf an SmtpClient.Send
mit der Ausführung einer gespeicherten Prozedur ersetzt. Die meisten unserer Anwendungs-E-Mails enthalten PDFs, XLSs usw., und ich habe gesehen, dass die Größe dieser Anhänge bis zu 20 MB erreicht.Ist es eine gute Idee, Database Mail als E-Mail-Relay-Server zu verwenden?
Mit Datenbank-E-Mail, um alle unsere Anwendung zu behandeln E-Mail-Gerüche schlecht für mich, aber ich habe es schwer, jemanden davon sprechen angesichts der extrem niedrigen Kosten der Implementierung. Unser Produktions-Datenbank-Server ist viel zu mächtig, also bin ich mir nicht sicher, ob es könnte die Last, entweder. Irgendwelche Ideen oder sicherere Alternativen?
Könnten Sie näher ausführen? Meinst du damit einen SMTP-Server in unserem LAN zu hosten und diesen zu nutzen? Wäre Spam-Filterung ein Problem? Wir senden, was ich als eine geringe Menge an E-Mail betrachte, aber senden oft große Anhänge, so dass ich nicht sicher bin, ob der Lastenausgleich die Kosten wert ist. –