Async!

Архитектурни съображения

Един от съществените, а вероятно и най-съществения въпрос, свързан с публикуването на НМДД в Аренал е възможността това да става асинхронно. След издаване на НМДД, когато софтуера на издателя трябва да публикува направлението, могат да се разиграят следните сценарии:

  • сървъра на Аренал да е паднал по някаква причина;
  • сървъра на Аренал да е твърде зает и да не отговаря или да го прави с големи закъснения;
  • компютъра на издателя да няма Интернет връзка в момента.

Както става ясно, при тези ситуации, ако софтуера на издателя публикува НМДД синхронно, приложението ще „забие“ или просто няма да  успее да публикува НМДД дори да остане работещо. Архитектурно погледнато, публикуването на НМДД в Аренал е класически случай за нужда от Queue система. Най-простото решение за Windows e MSMQ. Вече става ясно – редно е софтуера на ОПЛ и/или специалиста да „публикува“ на локалната машина, а друг Windows Service да се грижи да опитва отново и отново да публикува в Аренал. Така например, ако ОПЛ няма Интернет дори и много часове подред, ще успее да публикува веднага след като свързаността стане налична.

Наличност на MSMQ

„… MSMQ is available as a component of Windows 2000, Windows XP (excluding Home Edition), Windows Server 2003, Windows Vista (all editions) and will be included in future server versions of Windows. Because Message Queuing is a component of Windows, its use is covered by the Windows license. If you have a valid license to use Windows, then you can use MSMQ. …“

Става ясно че XP Home не е в сметките, но пък следващите версии го имат във всички издания. Въпрос на проучване от страна на разработчиците е колко техни клиенти ползват този „крив“ Windows и след това да направят преценка дали да разчитат на MSMQ и да загубят за Аренал някакъв незначителен процент потребители. Смятаме че Windows XP по начало е мъртва към днешна дата, още повече пък Home Edition 🙂

„Тиха“ инсталация на MSMQ

Minimalist setup script for MSMQ unattended installation.

Разни

Смятаме да направим програма за Windows която да се стартира като конзолно приложение или като Windows Service и да чете от MSMQ и да публикува в Аренал. Така работата на разработчиците на ОПЛ/СИМП софтуер се свежда до „качването“ на НМДД в MSMQ. Нещо от този род. Моля, който има интерес да остави няколко реда.