Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
Нахлобуч, "заинтересованных лиц" может быть сотня, тысяча. Ты собираешься этот делать такую отправку прям из контроллера? Ты сдурел? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:01 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучПлюс советуемый МСУ UserManager<TUser, TKey>.SendEmailAsync Method подразумевает, что пользователь зарегистрирован на сайте. Очень смелое допущение. А кто говорил, что SendEmailAsync - серебряная пуля? Это простое решение "по месту" шлёпнуть сообщение из сайта. У способа есть и минусы и плюсы. К тому же, я акцентировал своё внимание именно на отдельной песочнице и шедулере, а не на SendEmailAsync. Еще раз спрашиваю, ты каким местом читаешь топик? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:04 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучhVosttдобавляете задание шедулеру, в шедулере реализуете обработку очереди и отправку писем.Планировщик-то тут зачем? Разовая же акция. Очередь же тут была бы к месту, но тащить целую очередь ради банальной отправки писем десятку-другому получателей считаю несколько чрезмерным. НахлобучНе нужно заниматься интеллектуальным онанизмом и придумывать решения несуществующих проблем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:06 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
МСУОго, давненько так не отжигали на форуме фантазёры. Ну ладно, по-порядку. Polling плох чем и в контексте чего?Polling плох в контексте БД. Расходование ресурсов на поддержание ACIDности. МСУОткуда Locking на чтение, с дубу рухнул?Расскажи, как ты будешь добиваться того, чтобы одно и то же уведомление не отправлялось из всех потоков (или процессов), в которых работают отправлятели уведомлений. МСУПри правильных индексах и прямых руках у тебя CRUD будет просто летать, а не то, что тормозить. Индексы мешают вставкам и удалениям, их отсутствие мешает поиску, что, в свете предыдущего пункта, мешает вставкам. МСУЭто не сказки, это простое решение задачи. По твоему примеру, 1. Заявка переведена из статуса А в статус Б 2. Устанавливается флаг "Оповестить" для уведомления подписчикам (отдельная таблица со ссылкой на заявку) 3. Сервис уведомлений согласно расписанию опрашивает флаги этой таблицы и на основе них делает рассылку 4. Письмо выслано, устанавливается флаг в соответствующее значение "Уведомление выслано" 5. Письмо не выслано, устанавливается флаг значение "Ошибка", пишется текст ошибкиУх ты. А теперь представь ситуацию: 1. Заявка переведена из А в Б 2. Установился флаг, ссылка, все дела 3. Твой планировщик спит 4. Заявка переведена из Б в В 5. Опять установился флаг, ссылка на ту же заявку, которая уже находится в статусе В 6. Просыпается планировщик и отправляет подряд два уведомления, причем данных для формирования первого уведомления в БД уже нет (статус-то сменился). МСУIIdentityMessageService - это внятный механизм подключения сервиса сообщений. Причем, можно легко использовать two factor messages.Это ограниченный механизм, предназначенный только для отправки всяких околоайдентитьных сообщений. Больше он ни на что не годен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:07 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
Внимание вопрос, откуда Буч узнал про десяток-другой получателей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:08 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
МСУ, не флуди. МСУТы предложил прямо по месту отправить сообщение, "Разовая акция". Как это может коррелировать с более или менее внятной архитектурой? Произошла ошибка отправки. Дальше что делать с твоей разовой акцией?По мере возможности обработать по месту и ждать поступления новых вводных от бизнеса. МСУНахлобуч, "заинтересованных лиц" может быть сотня, тысяча. Ты собираешься этот делать такую отправку прям из контроллера? Ты сдурел? Нет, их не сотня и не тысяча. Какой смысл отправлять даже сотне человек уведомление о том, что кто-то создал заявку? МСУНахлобучПлюс советуемый МСУ UserManager<TUser, TKey>.SendEmailAsync Method подразумевает, что пользователь зарегистрирован на сайте. Очень смелое допущение. А кто говорил, что SendEmailAsync - серебряная пуля? Это простое решение "по месту" шлёпнуть сообщение из сайта. У способа есть и минусы и плюсы. Самое простое -- это SmtpClient. Тащить весь остальной шлак для "по месту" нет никакой необходимости. И плюсов у "способа" нет. МСУНахлобучпропущено... Планировщик-то тут зачем? Разовая же акция. Очередь же тут была бы к месту, но тащить целую очередь ради банальной отправки писем десятку-другому получателей считаю несколько чрезмерным. НахлобучНе нужно заниматься интеллектуальным онанизмом и придумывать решения несуществующих проблем. Что тут тебя так развеселило? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:16 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучPolling плох в контексте БД. Расходование ресурсов на поддержание ACIDности. Запретим БД. Вообще. Будем помнить всё в уме. Так? Не устал фантазировать на пустом месте? НахлобучМСУОткуда Locking на чтение, с дубу рухнул?Расскажи, как ты будешь добиваться того, чтобы одно и то же уведомление не отправлялось из всех потоков (или процессов), в которых работают отправлятели уведомлений. Расскажи, откуда ты взял, что у меня будет несколько отправителей уведомлений? Отправитель уведомлений один и работает он в одном процессе и в одном потоке. А задачи на рассылку он может ставить асинхронно. Например, получил 1 тыс подписчиков, раскидал задачи на 10 тредов и вперед. Что тут ты собрался синхронизировать? Каждый тред не зависит от друг друга, полностью автономная работа. Чего ты там опять куришь? НахлобучМСУПри правильных индексах и прямых руках у тебя CRUD будет просто летать, а не то, что тормозить. Индексы мешают вставкам и удалениям, их отсутствие мешает поиску, что, в свете предыдущего пункта, мешает вставкам. В архитектуре статусов ничего удалять не нужно. Поэтому именно эта архитектура более гибка и поддерживаема, чем очередь. НахлобучА теперь представь ситуацию: 1. Заявка переведена из А в Б 2. Установился флаг, ссылка, все дела 3. Твой планировщик спит 4. Заявка переведена из Б в В 5. Опять установился флаг, ссылка на ту же заявку, которая уже находится в статусе В 6. Просыпается планировщик и отправляет подряд два уведомления, причем данных для формирования первого уведомления в БД уже нет (статус-то сменился). Какой ужас. 1. Планировщик видит, что есть 2 уведомления для 1 адреса. Он тупо склеивает эти 2 уведомления в одно и отправляет подписчику. 2. Либо планировщик отправляет 1 самое актуальное уведомление, забивая болт на предыдущие. НахлобучМСУIIdentityMessageService - это внятный механизм подключения сервиса сообщений. Причем, можно легко использовать two factor messages.Это ограниченный механизм, предназначенный только для отправки всяких околоайдентитьных сообщений. Больше он ни на что не годен. И тем не менее, он имеет право на жизнь. И говорить о том, что его нельзя использовать в простых сценариях, глупо. Точно так же глупо, как говорить о том, что ASP.NET Identity убогое гавно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:18 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучМСУТы предложил прямо по месту отправить сообщение, "Разовая акция". Как это может коррелировать с более или менее внятной архитектурой? Произошла ошибка отправки. Дальше что делать с твоей разовой акцией?По мере возможности обработать по месту и ждать поступления новых вводных от бизнеса. Что за бред? Каких поступлений, какой бизнес? Что ты несешь? )) НахлобучМСУНахлобуч, "заинтересованных лиц" может быть сотня, тысяча. Ты собираешься этот делать такую отправку прям из контроллера? Ты сдурел? Нет, их не сотня и не тысяча. Какой смысл отправлять даже сотне человек уведомление о том, что кто-то создал заявку? Откуда ты знаешь, сколько подписчиков должно быть? Ты генератор требований? Что значит, какой смысл отправлять сообщение сотне человек? Они подписаны на ресурс, значит их нужно уведомить. У нас в конторе есть портал на шарепоинте, есть списки и библиотеки документов сотрудников, на которые подписаны участники. Их количество достигает более 1 тыс на популярных библиотеках (приказы, документы по поставщикам, юридическая информация и так далее). Всего в компании немногим менее 10 тыс человек. Если ты там сидишь и работаешь в коморке с 3 калеками, то это не значит, что не может быть большое число подписчиков. НахлобучМСУпропущено... А кто говорил, что SendEmailAsync - серебряная пуля? Это простое решение "по месту" шлёпнуть сообщение из сайта. У способа есть и минусы и плюсы. Самое простое -- это SmtpClient. Тащить весь остальной шлак для "по месту" нет никакой необходимости. И плюсов у "способа" нет. Так в SendEmailAsync и используется SmtpClient, включи уже голову. НахлобучЧто тут тебя так развеселило? Твоя тупость. Серьезно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:24 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
МСУНахлобучPolling плох в контексте БД. Расходование ресурсов на поддержание ACIDности.Запретим БД. Вообще. Будем помнить всё в уме. Так? Не устал фантазировать на пустом месте?По делу будет что-то? МСУРасскажи, откуда ты взял, что у меня будет несколько отправителей уведомлений? Отправитель уведомлений один и работает он в одном процессе и в одном потоке. А задачи на рассылку он может ставить асинхронно. Например, получил 1 тыс подписчиков, раскидал задачи на 10 тредов и вперед. Что тут ты собрался синхронизировать? Каждый тред не зависит от друг друга, полностью автономная работа. Чего ты там опять куришь?Отличненько, уже какие-то потоки пошли в дело. Откуда они возьмутся, если "уведомлений один и работает он в одном процессе и в одном потоке"? Какие задачи, кому он их ставит? МСУВ архитектуре статусов ничего удалять не нужно. Поэтому именно эта архитектура более гибка и поддерживаема, чем очередь.Опять какие-то голословные утверждения. МСУКакой ужас.Ужас-не ужас, а еще пара-тройка таких находок -- и твой планировщик превратится в крысиное гнездо кода. Слияние уведомлений, определение самого актуального -- все это нетривиально. А если тексты уведомлений формировать непосредственно в момент наступления событий, то всех этих проблем с консистентностью можно избежать. МСУИ тем не менее, он имеет право на жизнь. И говорить о том, что его нельзя использовать в простых сценариях, глупо.Глупо его использовать в сценариях, для которых он вообще никак не предназначен. Отправка уведомлений о событиях, не связанных с Identity, -- один из них. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:36 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
МСУЧто за бред? Каких поступлений, какой бизнес? Что ты несешь? ))Я не пойму, что тебя так смешит. Автор пишет софт для удовлетворения каких-то бизнес-потребностей. Если недоставка некоторых уведомлений не является проблемой, то можно остановиться на самом простом работающем решении -- отправка "по месту". Если же бизнес потребует "доставки любой ценой", то нужно будет думать отдельно. МСУОткуда ты знаешь, сколько подписчиков должно быть? Ты генератор требований?Нет, я просто знаю, что в случае, когда от человека требуется какая-то деятельная реакция (а именно она нужна в ответ на уведомление о поступление новой заявки), размазывать ответственность по сотне человек никто не будет. МСУЧто значит, какой смысл отправлять сообщение сотне человек? Они ... это не значит, что не может быть большое число подписчиков.Молодец, похвастался. Дальше что? Как это относится к теме? МСУТак в SendEmailAsync и используется SmtpClient, включи уже голову.Вот правда -- и что с того? Он прячет его за убогим API, не добавляя никакой ценности. Абсолютно. Просто прослойка. МСУНахлобучЧто тут тебя так развеселило?Твоя тупость. Серьезно.Браво. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 15:44 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучМСУпропущено... Запретим БД. Вообще. Будем помнить всё в уме. Так? Не устал фантазировать на пустом месте?По делу будет что-то? Вот именно, по делу что-то будет? Или будешь дальше писать о страшилках использования БД? НахлобучМСУРасскажи, откуда ты взял, что у меня будет несколько отправителей уведомлений? Отправитель уведомлений один и работает он в одном процессе и в одном потоке. А задачи на рассылку он может ставить асинхронно. Например, получил 1 тыс подписчиков, раскидал задачи на 10 тредов и вперед. Что тут ты собрался синхронизировать? Каждый тред не зависит от друг друга, полностью автономная работа. Чего ты там опять куришь?Отличненько, уже какие-то потоки пошли в дело. Откуда они возьмутся, если "уведомлений один и работает он в одном процессе и в одном потоке"? Какие задачи, кому он их ставит? Так ты сам начал про "процессы и потоки". А теперь меня обвиняешь в этом. Странный ты. Не "уведомлений один", а "Отправитель уведомлений один". Почувствуй разницу. С чего ты решил, что должно быть несколько отправителей уведомлений. Вот твой высер, если что: НахлобучРасскажи, как ты будешь добиваться того, чтобы одно и то же уведомление не отправлялось из всех потоков (или процессов), в которых работают отправлятели уведомлений. Как объяснишь свой вопрос? Еще раз, "отправлятель уведомлений" один. А рассылка уведомлений может идти асинхронно в несколько независимых потоков. Что не понятного я сейчас сказал? НахлобучМСУВ архитектуре статусов ничего удалять не нужно. Поэтому именно эта архитектура более гибка и поддерживаема, чем очередь.Опять какие-то голословные утверждения. Что именно голословно утверждено и почему? Будешь приводить аргументы или просто какать в форум невнятными формулировками? НахлобучМСУКакой ужас.Ужас-не ужас, а еще пара-тройка таких находок -- и твой планировщик превратится в крысиное гнездо кода. Слияние уведомлений, определение самого актуального -- все это нетривиально. Склейка сообщений для одного реципиента - это нетривиально? Могу предложить земледелие, там всё тривиально, бери лопату и копай. НахлобучА если тексты уведомлений формировать непосредственно в момент наступления событий, то всех этих проблем с консистентностью можно избежать. Зачем заранее формировать тексты и, тем более, хранить их где-то? Это же феерический бред, дублирование и просто антипаттерн. И ты что-то собрался нам рассказывать об архитектуре? НахлобучМСУИ тем не менее, он имеет право на жизнь. И говорить о том, что его нельзя использовать в простых сценариях, глупо.Глупо его использовать в сценариях, для которых он вообще никак не предназначен. Отправка уведомлений о событиях, не связанных с Identity, -- один из них. Сценарий только один - отправка сообщения пользователю с темой и телом сообщения. Для этого вполне можно использовать нативный механизм ASP.NET Identity. В чем проблема? Кто запрещает? НахлобучМСУЧто за бред? Каких поступлений, какой бизнес? Что ты несешь? ))Я не пойму, что тебя так смешит. Автор пишет софт для удовлетворения каких-то бизнес-потребностей. Если недоставка некоторых уведомлений не является проблемой, то можно остановиться на самом простом работающем решении -- отправка "по месту". Если же бизнес потребует "доставки любой ценой", то нужно будет думать отдельно. Автор конкретно спросил совета. Ты посоветовал глупость. Делать массовую отправку сообщений по месту в контроллере - удел кретина, а не программиста или архитектора. С этим согласен? И бизнес тут не причем, не нужно его сюда примешивать. Бизнес ничего не знает и не должен знать об архитектуре рассылки уведомлений. НахлобучМСУОткуда ты знаешь, сколько подписчиков должно быть? Ты генератор требований?Нет, я просто знаю, что в случае, когда от человека требуется какая-то деятельная реакция (а именно она нужна в ответ на уведомление о поступление новой заявки), размазывать ответственность по сотне человек никто не будет. Ну это только твои фантазии, которые не подкреплены практикой. С рабочими процессами в системах электронного документооборота работал? Рассказать про такой классический воркфлоу, как "Согласование документа"? НахлобучМСУЧто значит, какой смысл отправлять сообщение сотне человек? Они ... это не значит, что не может быть большое число подписчиков.Молодец, похвастался. Дальше что? Как это относится к теме? Это аргумент того, что твои утверждения про то, что "не может быть более 20 подписчиков" - наглая ложь. И даже в случае 20 подписчиков отправлять им сообщения "по месту" в контроллере - беспощадное зло. Согласен? НахлобучМСУТак в SendEmailAsync и используется SmtpClient, включи уже голову.Вот правда -- и что с того? Он прячет его за убогим API, не добавляя никакой ценности. Абсолютно. Просто прослойка. Так весь фреймворк - прослойка, которая что-то где-то прячет. Ценность твоих сообщений в данном топике ниже плинтуса. В чем суть твоего бытия тут? Просто зашел покакать напалмом? НахлобучМСУпропущено... Твоя тупость. Серьезно.Браво. Ок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 16:09 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
Ребят, спасибо за ответы. Мне больше по душе пришелся вариант с планировщиком. Проясню некоторые детали, оператору по телефону звонят работники, и говорят что и кому нужно, например, привезти какую-то деталь, увезти крупный мусор и т.д. За привоз деталей отвечает 1-ое подразделение, за вывоз мусора к примеру 2-ое подразделение и т.д. За каждым подразделением закреплены исполнители, их не больше 10, и пару заинтересованных лиц, которые следят за исполнением заявок. Примерно, для одной заявки, необходимо разослать копии письма 12 человекам. Если сразу дали 5 заявок, то соответственно 120 писем. После того, как оператор заполнил формы для 5-ти заявок, он нажимает кнопку сохранить, заявки должны сохраниться в базе, и быть разосланы всем заинтересованным лицам. Главное чтобы интерфейс не подвисал, когда будет происходить рассылка писем, потому что на оператора "сыпятся заявки" - он только сохранил, тут же ему снова диктуют(только для другого цеха). Скажите имеет ли право на реализацию такой вариант. Я напишу консольное приложение, которое будет подключаться к базе и смотреть какие письма стоят в очереди и будет их рассылать. Данное приложение будет запускаться через определенные промежутки времени планировщиком задач Windows'а??? Я думаю мне бы такой вариант подошел как нельзя лучше! Кто, что думает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 18:52 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
RDSСкажите имеет ли право на реализацию такой вариант. Я напишу консольное приложение, которое будет подключаться к базе и смотреть какие письма стоят в очереди и будет их рассылать. Данное приложение будет запускаться через определенные промежутки времени планировщиком задач Windows'а??? Я думаю мне бы такой вариант подошел как нельзя лучше! Кто, что думает? Я уже писал: http://www.quartz-scheduler.net/ Запускать консольку планировщиком задач -- очень плохое, неуправляемое и неконтролируемое решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 19:40 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучВот правда -- и что с того? Он прячет его за убогим API, не добавляя никакой ценности. Абсолютно. Просто прослойка. Ты вообще в адеквате? Такой детский неумный лепет нести, зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 19:43 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
RDSРебят, спасибо за ответы. Мне больше по душе пришелся вариант с планировщиком. Проясню некоторые детали, оператору по телефону звонят работники, и говорят что и кому нужно, например, привезти какую-то деталь, увезти крупный мусор и т.д. За привоз деталей отвечает 1-ое подразделение, за вывоз мусора к примеру 2-ое подразделение и т.д. За каждым подразделением закреплены исполнители, их не больше 10, и пару заинтересованных лиц, которые следят за исполнением заявок. Примерно, для одной заявки, необходимо разослать копии письма 12 человекам. Если сразу дали 5 заявок, то соответственно 120 писем. После того, как оператор заполнил формы для 5-ти заявок, он нажимает кнопку сохранить, заявки должны сохраниться в базе, и быть разосланы всем заинтересованным лицам. Главное чтобы интерфейс не подвисал, когда будет происходить рассылка писем, потому что на оператора "сыпятся заявки" - он только сохранил, тут же ему снова диктуют(только для другого цеха). Скажите имеет ли право на реализацию такой вариант. Я напишу консольное приложение, которое будет подключаться к базе и смотреть какие письма стоят в очереди и будет их рассылать. Данное приложение будет запускаться через определенные промежутки времени планировщиком задач Windows'а??? Я думаю мне бы такой вариант подошел как нельзя лучше! Кто, что думает?А не проще ли внедрить/интегрировать готовый продукт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 21:01 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
Нахлобуч17-77а ваш Postmark и есть "планировщик"/"очередь", только вне рамок реализуемой системы, определитесь уже - нужен он или нет Разницу между "планировщиком" и "очередью" понимаешь? Не важно как называется хрень, которая в фоновом процессе отправляет почту, насколько я помню вы предлагали отправлять письма напрямую из контроллера, не используя ни планировщик, ни очередь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 22:49 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
RDSСкажите имеет ли право на реализацию такой вариант. Я напишу консольное приложение, которое будет подключаться к базе и смотреть какие письма стоят в очереди и будет их рассылать. Данное приложение будет запускаться через определенные промежутки времени планировщиком задач Windows'а??? Я думаю мне бы такой вариант подошел как нельзя лучше! Кто, что думает? Да, нормальный рабочий вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 22:58 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
НахлобучА теперь представь ситуацию: 1. Заявка переведена из А в Б 2. Установился флаг, ссылка, все дела 3. Твой планировщик спит 4. Заявка переведена из Б в В 5. Опять установился флаг, ссылка на ту же заявку, которая уже находится в статусе В 6. Просыпается планировщик и отправляет подряд два уведомления, причем данных для формирования первого уведомления в БД уже нет (статус-то сменился). Зависит от бизнеса, будет требование слать все уведомления - значит надо их генерить сразу и сохранять где либо до момента отправки, будет требование слать только последнее - значит будет отправлятся только последнее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 23:03 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
RDSСкажите имеет ли право на реализацию такой вариант. Я напишу консольное приложение, которое будет подключаться к базе и смотреть какие письма стоят в очереди и будет их рассылать. Данное приложение будет запускаться через определенные промежутки времени планировщиком задач Windows'а??? Я думаю мне бы такой вариант подошел как нельзя лучше! Кто, что думает? Я бы не завязывался на планировщик винды, а сделал бы свою вин-службу на кварце, как в самом первом ответе в теме ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2014, 23:06 |
|
||
|
EmailSender в asp.net mvc
|
|||
|---|---|---|---|
|
#18+
17-77Зависит от бизнеса, будет требование слать все уведомления - значит надо их генерить сразу и сохранять где либо до момента отправки Не в коем случае. 1. Каждое изменение статуса заявки логируется в отдельную табличку (ID, ID заявки, Статус заявки, Дата/Время, Флаг процессинга). Можно дополнить дополнительной информацией при необходимости. Напр., ID пользователя, Сообщение об ошибке и т.д. 2. Песочница, которая процессит рассылку, анализирует эту таблицу и отсылает письма. Текст письма берется из некоего шаблона, который хранится где угодно. Сохранять готовые сообщения по факту для последующих рассылок - это избыточность и мазохизм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2014, 09:23 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=38725206&tid=1357059]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 350ms |

| 0 / 0 |
