Медленная работа системы

Рейтинг: -0.7063  
Новая
Предложил Пользователь 14349 09.01.2017 14:20:22

Медленная работа системы

Сейчас система обновлений и установки модулей/решений работает так, что последовательно скачиваются и устанавливаются все промежуточные версии.

Гораздо быстрее было бы сразу загружать и устанавливать финальные версии.

При регулярной установке обновлений проблема не так заметна.

Зато, при установке небольшого решения/модуля  с большим количеством версий или обновлении решения/модуля после длительного перерыва приходится довольно долго ждать.

Видишь примерно такое:
установка версии 1.0.0 потом 1.0.1 .... 1.1.0 ...  1.2.0 ... 2.0.0. ... 2.0.1 ... 2.1.0 ... 3.0.1 и т..д.

Огромное количество лишних соединений и операций.
Можно в десятки/сотни/(возможно)тысячи раз их сократить загружая сразу финальный вариант..
Рейтинг: 0  
Ответил Жуков Евгений 09.01.2017 18:09:38
Это необходимо, т.к.
  • кроме копирования файлов выполняются еще и запросы, модифицирующие базу
  • существуют зависимости обновлений модулей
  • установка одного обновления за хит в большинстве случаев гарантирует, что установка обновления не прервется по таймауту

Рейтинг: 0  
Пользователь 136059 09.01.2017 15:03:11
Я думаю в таком случае релизы будут выходить реже - т.к. под каждое маленькое обновление нужно будет делать X дистрибутивов (причем Х будет рости почти в геометрической прогрессии).
Например есть 10 модулей, у каждого из них 10 версий. Это значит что нужно будет заготовить не 10 обновлений, а как минимум 100 (потому как если обновление идет 1 на 10, а если с 2 на 10 и т.п.) и такое количество версий нужно будет готовить "разом".

Тем более - если вы не все модули хотите обновить ?

Мне кажется что это сильно затормозит выход обновлений и новых версий.
Рейтинг: 0  
Пользователь 14349 09.01.2017 15:21:45
Николай, есть такая проблема с увеличением места под дистрибутивы при решении задачи.

Думаю, можно ее как то порешать. Динамически дистрибутивы делать с кешированием, например.

Но, согласитесь, что нет особой проблемы с тем, чтобы сделать хотя бы финальные дистрибутивы, чтобы при установке не пришлось ждать сначала первоначальную версию, а потом сотню накатывающихся обновлений.
Рейтинг: 0  
Пользователь 14349 11.01.2017 16:18:55
Евгений,
  • а разве нельзя запросы объединять? чтобы за один запуск все отрабатывалось?
  • зависимости обновлений модулей можно на сервере считать и выдавать нужную версию (не обязательно хранить все версии, достаточно сделать механизм динамической генерации с кешированием)
  • разве будет существенная разница между "шаговым" обновлением и смерженным? я не встречал решений, где могла бы быть существенная разница, но могу ошибаться.
Возможно, я не совсем понимаю все сложности реализации, но...

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

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

Пока что ИИ только не получается реализовать в программировании, думаю, тут задача попроще будет.

Наверняка, это не самая приоритетная тема (раз голосов нет), но все равно можно ее запомнить, вдруг когда нибудь придет решение:)

Со временем, актуальность этой темы должна возрастать.