Лучшие практики для гетерогенного .NET WPF & J2EE 3-уровня архитектура

StackOverflow https://stackoverflow.com/questions/3237627

  •  14-09-2020
  •  | 
  •  

Вопрос

Я в основном разработчик ASP.NET, поэтому я не очень знаком с лучшими практиками J2EE, либо WFP, шаблонами и т. Д., Но я чувствую, что проект, который я вовлечен, мог быть сделан лучше, но я Не могу точно поставить свой палец точно на то, что не так с архитектурой.

Что такое лучшая (*) архитектура для гетерогенного распределенного 3-уровня применения, в частности, если я хотел реализовать систему, состоящую из:

  1. Java EE 5 Задний конец на сервере приложений JBOSS - предоставляет услуги EJB E.g. Как мыло, отдых или JMS Beans
  2. Hibernate на SQL Server или базы данных Oracle
  3. .NET 4.0 WPF Desktop Client
  4. .NET 4.0 Silverlight Web Client
  5. jsp / pure-html веб-клиент
  6. * Я знаю, что, вероятно, невозможно определить «лучшую архитектуру», но мне просто интересно мнения о архитектурных подходах, лучших практиках, узорах и т. д.

    Одной из очевидных проблем, которые я вижу в нашем дизайне / архитектуре, заключается в том, что связь Web Service, состоит в том, что связь SOAP Web Service между клиентами .NET и Back-End java очень медленно, вероятно, из-за проблем с задержкой. Весь опыт пользовательского интерфейса очень вялый. И это с одним пользователем - в производстве мы ожидаем +/- 100 одновременных пользователей.

    Я был бы признателен за любые комментарии / мнения.

    Некоторые вопросы:

      .
    • Какие технологии вы бы порекомендовали обратиться к любой из компонентов, упомянутых выше, например, e.g. какие виды услуг (мыло, отдых, обмен сообщениями?)
    • Как уменьшить задержку в связи между клиентами .NET и Java Back-End?
    • Какие узоры / подходы к посмотрению, например, E.g. С точки зрения кода клиента WPF (шаблон MVVM?), связь с Java Back-End (WCF?)
    • Как вы защищены (аутентификация, авторизация) такие услуги J2EE при использовании клиента WCF?
    • Каковы архитектурные проблемы, чтобы посмотреть и как их решать, например, С точки зрения безопасности, масштабируемости, производительности и т. Д.?

    (Я прошу прощения, если этот вопрос не подходит для этого сайта, я вижу предупреждение «вопрос, который вы просите, кажется субъективным и, вероятно, будут закрыты», однако, что я ищу, являются субъективными мнениями, и я уверен, что другие, которые работают в смешанной среде .NET / Java, будут заинтересованы.)

    Спасибо!

Это было полезно?

Решение

Архитектура для этого проекта была слишком сложной.

Я бы сделал следующие изменения:

    .
  • Используйте .NET на бэкэнде, чтобы уменьшить количество технологий
  • Перепаньте клиент WPF и используйте Silverlight из браузера в качестве клиента Windows
  • Используйте только асинхронные вызовы на бэкэнду, чтобы сохранить адаптивность ui
  • Используйте WCF веб-розетки, чтобы поговорить с бэкэндом
  • Используйте HTML5 в качестве веб-пользовательского интерфейса, это также поддерживает веб-сокеты, чтобы у вас есть один способ поговорить с вашим бэкэндом

Веб-розетки: http://tomasz.janczuk.org/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top