LINUX.ORG.RU

История изменений

Исправление Moisha_Liberman, (текущая версия) :

среди ученых

Это один подход. Грубо говоря, «посчитал-выкинул». Ну, если очень грубо говоря.

Мои же софтины могут жить в системе 24/7. Пока система вообще включена. И тут приходится крайне вдумчиво «обрабатывать напильником» так, чтобы мой софт не мешал остальному софту работать. Поэтому к проектированию приходится очень аккуратно относиться и не только лишние зависимости за борт, а и ещё массу вопросов решать.

В качестве примера, что называется, «пямо из-под рук». Сейчас пишу некое веб-приложение. Да, на С как обычно (в смысле обработки http(s) запросов ни php ни python, ни кто не дали ровным счётом ничего нового, кроме утяжеления экосистемы приложений и тщательно замаскированных ошибок). По условиям мне нужно для отдельных действий уведомлять пользователя по почте. В принципе, я могу это сделать как минимум тремя разными способами:

  • Прямо из потока, где что-то произошло слать через libesmtp почту пользователю.

  • Создать отдельный поток, который из нескольких потоков будет собирать почтовые отправления и рассылать их пользователям.

  • Написать отдельный демон, который будет приглядывать за неким каталогом, куда произвольное число потоков будут складывать как текствоые файлы почтовые сообщения, далее этот демон будет выгребать их оттуда и рассылать пользователям.

Конечно я воспользуюсь последним вариантом, т.к. в памяти держу то, что система может масштабироваться в дальнейшем. А городить огород с RabbitMQ или ещё чем вообще не охота. Можно упростить. Т.е., выставить этот отдельный демон на другой машине, подцепить надзираемый им каталог по NFS, этот каталог поставить на «просмотр» через fanotify или inotify и горя не знать. Появилось что-то в каталоге, создали поток, считали файл, отправили его по почте.

Мы с учёным решаем абсолютно различные задачи и утверждать однозначно что мой или его подход априорно верен, я бы не стал.

Исходная версия Moisha_Liberman, :

Это разные подходы.

среди ученых

Это один подход. Грубо говоря, «посчитал-выкинул». Ну, если очень грубо говоря.

Мои же софтины могут жить в системе 24/7. Пока система вообще включена. И тут приходится крайне вдумчиво «обрабатывать напильником» так, чтобы мой софт не мешал остальному софту работать. Поэтому к проектированию приходится очень аккуратно относиться и не только лишние зависимости за борт, а и ещё массу вопросов решать.

В качестве примера, что называется, «пямо из-под рук». Сейчас пишу неке веб-приложение. Да, на С как обычно. По условиям мне нужно для отдельных действий уведомлять пользователя по почте. В принципе, я могу это сделать как минимум тремя разными способами:

  • Прямо из потока, где что-то произошло слать через libesmtp почту пользователю.

  • Создать отдельный поток, который из нескольких потоков будет собирать почтовые отправления и рассылать их пользователям.

  • Написать отдельный демон, который будет приглядывать за неким каталогом, куда произвольное число потоков будут складывать как текствоые файлы почтовые сообщения, далее этот демон будет выгребать их оттуда и рассылать пользователям.

Конечно я воспользуюсь последним вариантом, т.к. в памяти держу то, что система может масштабироваться в дальнейшем. А городить огород с RabbitMQ или ещё чем вообще не охота. Можно упростить. Т.е., выставить этот отдельный демон на другой машине, подцепить надзираемый им каталог по NFS, этот каталог поставить на «просмотр» через fanotify или inotify и горя не знать. Появилось что-то в каталоге, создали поток, считали файл, отправили его по почте.

Мы с учёным решаем абсолютно различные задачи и утверждать однозначно что мой или его подход априорно верен, я бы не стал.