Показать сообщение отдельно
Старый 20.02.2017, 11:01   #24  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5788 (200) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от trud Посмотреть сообщение
Документ "Microsoft Dynamics AX 2012 White Paper: Deploying Customizations Across Microsoft Dynamics AX 2012 Environments" описывает довольно экзотические способы снижения downtime "Import a model store with minimal downtime", интересно так кто нибудь делает?
Цитата:
To reduce downtime, we recommend that you import the metadata into a new schema next to the old one, and then switch to the active schema. This methodology lets users continue using the system until the AOS instance needs to be restarted so that the new schema can be applied.
Рассматривали такой вариант на крупном внедрении, к сожалению, он не подошел как раз из-за необходимости останавливать все АОСы одновременно, чтобы переключиться с одной схемы на другую. По описанию логично было бы ожидать, что есть какая-то настройка, указывающая название активной схемы и считываемая АОСом при запуске, однако, это, похоже, не так, и активная схема всегда dbo, а "переключение" заключается в перебивке "временного" названия схемы на dbo, что требует отключения всех АОСов от базы моделей.
Я, может, крамольную вещь скажу, но в моей практике очень часто бывает нужно обновлять рабочее приложение без одновременного перезапуска всех АОСов. Это связано с тем, что обычно АОСы делятся на различные группы по функциональной нагрузке:
  • пользовательские - для подключений виндовым клиентом Аксапты
  • пользовательские - для подключения через Корпоративный портал
  • интеграционные - для хостинга определенных сервисов
  • интеграционные - для хостинга еще каких-либо сервисов
  • пакетные - для, допустим, разноски розницы
  • пакетные - для, допустим, сводного планирования
  • пакетные - для еще каких нужд
При этом в каждой группе обычно используется более-менее явно выраженное подмножество функционала приложения, подчас слабо пересекающееся с другими группами. А еще эти группы характеризуются разной чувствительностью к перезапускам и простоям и разными периодами времени, наиболее подходящими для перезапуска и обслуживания. Пользовательские АОСы обычно можно произвольно перезапускать в нерабочее время (скажем, с 18:00 до 9:00 следующего дня), а пакетные АОСы сводного планирования, напротив, предпочтительнее перезапускать днем. В целом пакетники обычно можно произвольно перезапускать в течение суток, но при условии, что запущенные пакетные задания успели отработать. Прерывать выполняющиеся пакетные задания обычно не очень хорошо, а ждать "парада планет", когда на всех пакетниках завершатся текущие выполняемые задания, можно подчас очень долго. Интеграционные АОСы вообще должны иметь как можно меньшее время простоя, потому что такие простои зачастую приводят к отказу в обслуживании в связанных системах. К примеру, интернет-магазин может замечательно работать автономно от Аксапты, но оплата заказа подарочным сертификатом может завершиться в нем неуспешно из-за невозможности проверить и изменить в online статус подарочного сертификата в Аксапте.
При обновлении рабочего приложения, как правило, переносится функционал, который влияет на одну-две-три группы АОСов с т.з. используемых подмножеств функционала приложения, но очень редко - на все группы сразу. Да, может, это нельзя в каждом случае математически точно обосновать, но из опыта поддержки того или иного приложения обычно это достаточно очевидно. И вот наиболее удобным был бы способ обновления рабочего приложения, который позволял бы разнести во времени перезапуск различных групп АОСов. Скажем, online-интеграциям через WCF-сервисы может быть без разницы, что обновились какие-то формочки для Windows-клиента Аксапты, а АОСам разноски розницы - без разницы, что обновилась логика сводного планирования. Но штатного варианта по сути выполнять две разные версии приложения на разных группах АОСов, к сожалению, нет.
За это сообщение автора поблагодарили: EVGL (10), trud (2), sukhanchik (5), ax_mct (5).