Кто-нибудь может порекомендовать планировщик на основе C или Java с открытым исходным кодом для встраивания в качестве основы другой программы? - PullRequest
3 голосов
/ 02 января 2011

Может ли кто-нибудь порекомендовать планировщик с открытым исходным кодом, который может быть встроен
, как сердце специализированного веб-планировщика?Планировщик на основе C или Java был бы моим
первым выбором для работы.

Готовый проект позволит кому-то через Интернет добавлять, удалять и изменять задачи, запланированные на локальной машине, с помощью:ежемесячно, еженедельно, ежедневно и по времени суток.Задачи были бы довольно простыми: отображать сообщения и воспроизводить файлы WAV на локальном компьютере в запланированные даты и в сроки, указанные удаленным программистом.

Хорошо, почему?Ну, мы с женой перевезли ее мать в наш город пару лет назад, потому что она не могла или не хотела заниматься своими собственными делами, включая прием пищи и прием инсулина в строгом режиме.Она диабетик первого типа.Она вдова и живет сама по себе около десяти лет.Моя жена следила за своими счетами и делами удаленно от нашего дома за тысячу миль.У моей свекрови было дюжина разных докторов, которые не были друг у друга, и она получала слишком много лекарств от одного лекарства, противодействующего другому.Мы узнали, что она не была осторожна со своим диабетом, и это привело к поездке EMS в отделение неотложной помощи в среднем каждый второй месяц.Как ни странно, она не является полностью старческой, хотя ее кратковременная память в значительной степени расстроена, но она всегда была и бездельничала.Мы с женой оба работаем на полную ставку, начиная с дневного света и до наступления темноты, тем не менее, моей жене удается звонить матери три раза в день, чтобы сказать ей, что нужно есть и принимать инсулин, а затем каждый вечер проводит около двух часовс матерью, прежде чем вернуться домой.Эта машина, по сути, была бы безголовой системой, которая не выполняла никакой функции, кроме как мигать запрограммированные сообщения на маленький монитор и воспроизводить аудиофрагменты в нужное время.«Вставай и завтракай», «Пора делать инсулин», «Дайте собаке таблетку», «Приготовьтесь пойти на прием к врачу» и так далее.Без клавиатуры или мыши и выключенных переключателей на передней панели, ей достаточно Luddite, и я не думаю, что она подумает о том, чтобы выдернуть шнур из розетки.

Во всяком случае, вот куда я пытаюсь пойти.Я неохотный программист, но за эти годы я написал несколько больших и сложных программ на нескольких языках и, чтобы немного облегчить жизнь жены, я могу это сделать.Планировщик, который можно изменить, чтобы он стал большим блоком кода в рамках всей программы, сэкономил бы мне много времени и почесал голову.

Ответы [ 3 ]

5 голосов
/ 02 января 2011

Получите коробку Linux, введите SSH и добавьте записи в crontab.Что касается программы оповещения, это будет зависеть от вашей задачи.

2 голосов
/ 02 января 2011

Кварц, как упоминал Дондо, является своего рода отраслевым стандартом для планирования. Он очень популярен и часто используется.

В качестве альтернативы вы можете использовать Timer API, который поставляется с Java EE. Это довольно простая вещь, но все же довольно мощная. Посмотрите это для небольшого примера ПРОСТОЙ ВОЗМОЖНЫЙ EJB 3.1 ТАЙМЕР .

Java EE также предоставляет вам инструменты для простого создания графического интерфейса пользователя (через лица сервера Java) и наличия некоторой логики CRUD для ввода новых задач в вашу систему и сохранения их с помощью API персистентности Java в БД.

Конечно, если у вас еще нет опыта работы с Java EE (или Spring, или Quartz), простое изучение этих технологий может занять больше времени, чем создание того, что вы имеете в виду.

2 голосов
/ 02 января 2011

Вы заинтересовали меня.Мы рассматриваем Spring Batch в офисе, но речь идет не о планировании заданий, а о тяжелой обработке.Я проверил FAQ, который привел меня к Quartz ... это выглядит довольно изящно.Вот его особенности: http://www.quartz -scheduler.org / Overview / features.html

...