Я хочу предложить или сказать какой-нибудь альтернативный способ получить работу от разработчиков.
В настоящее время я работаю над проектом, основанным на Angular 7 и Java, и у меня есть требование. Проверьте изображение
Каждый раз, когда пользователь загружает файл, следующая информация (например, Имя задания (Имя файла) , Статус, Загруженные и Обнаруженные ошибки ) будут добавлены в приведенную выше таблицу.
Примечание. Когда файл будет загружен, Status *Столбец 1021 * будет Загружен первым и Обнаружены ошибки * Столбец 1025 * будет Ожидание
После того, как файл будет обработан в серверной части, для этого мынаписали некоторый искровой код для запуска задания, и после его завершения Java-код обновит столбец таблицы БД Состояние (от загруженного до завершенного) и столбец Обнаружены ошибки (от ожидания до Да / Нет))
Как только данные обновляются в таблице базы данных, мы обновляем интерфейс так же, но подход, который я использую, похож на
//refresh jobs data after particular time
this.updateJobsData = interval(this.refereshInterval).subscribe(
(val) => {
// refreshing jobs data
this.getJobsData()
}
);
ngOnDestroy() {
// stopped refreshing jobs data
this.updateJobsData.unsubscribe();
}
Из вышеприведенного кода вы должны понимать, что после загрузки файла я делаю сервисный вызов каждые 10 секунд, чтобы проверитьДанные обновляются в таблице дб или нет.
И он работает нормально, и я получаю то, что хочу.
Но я не хочу звонить в службу каждые 10 секунд, предположим, что пользователь остается на странице в течение 1 часа, тогда будет несколькономер вызова службы произойдет, это хорошо?
Есть ли другой подход, которым я могу следовать. Я ожидаю как бэк-энда, так и фронт-энда, то есть могу ли я что-то сделать в бэкенде, когда обновится таблица db, тогда как мой интерфейс узнает об этом без какого-либо вызова службы.
Я много искал, ноне нашел соответствующего ответа. Надеюсь, я ясно дал понять, с чем сталкиваюсь.