Цитата:
Сообщение от EVGL:
Этого хотелось бы избежать, поскольку надстройка неминуемо скроет WSDL-описание, а клиент предъявляет высокие требования к администрированию и контролю версий схем и моделей данных. В противном случае можно сразу брать MSMQ-адаптор и не мучиться.
Очередь кстати хороший промышленный вариант для такого типа задач, если такая проблема с производительностью сервисов встречается все время в вашем приложении Ах.
Цитата:
Сообщение от Alex_KD:
[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)]
Может есть какой метод с помощью которого можно прописать этот (или любой) аттрибут для AX сервиса?
Я боюсь для Ах сервиса он не поможет, насколько я помню код IL который генерится из Ах сервиса оборачивается в реальный WCF сервис который по-моему уже содержит этот атрибут (то есть настраивается сессия в разрезе логина под которым сервис вызывается и скорее всего она может быть одна и та же для разных Ах сервисов), не помню точно надо смотреть код net.reflectorом или подобной тулзой.
Моя же мысль была что можно воспользоваться преимуществами дот.нет которые дают простой в использовании патерн асинхронного программирования + сессионность wcf, а именно отпускать клиента раньше чем завершилась обработка вызова, а клиент справляясь о результатах всегда попадет на тот же инстанс сервиса который все об обработки этого запроса знает. На х++ пришлось бы запускать отдельный поток на каждый вызов сервиса, и вручную делать синхронизацию между потоками, и т.д. (много нюансов), либо написать небольшую инфраструктуру, вроде очереди куда класть задания, возвращать ответ и пакетником их обрабатывать, в любом случае кода кажется больше придется написать.