Может ли платформа Microsoft Sync для ado.net работать с Java?

Я планирую использовать следующую архитектуру для одного из приложений: Клиент: приложение на основе Java, которое будет использовать базу данных MySQL. Сервер: будет основан на C#, а база данных будет на SQL Server.

Теперь можно использовать Microsoft Sync Framework в Java? (Возможно, реализовав какие-то интерфейсы?). Я хочу, чтобы данные от Java-клиента синхронизировались с сервером и наоборот. Это возможно?

Если нет, то можете ли вы предложить другую структуру синхронизации.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
1 391
4

Ответы 4

Вам нужно будет найти «клей» между Java и фреймворком Sync. Собственный интерфейс Java даст вам хорошее начало.

Во-первых, я не знаком с Sync, но быстрое чтение обзор предполагает, что вашему клиенту потребуется предоставить веб-службу или RSS-канал, чтобы среда выполнения Sync могла получить данные для синхронизации из Java-процесс.

Проблемы, которые я вижу в вашем дизайне, заключаются в том, что обычно существует более одного клиента, но семантически один бэкэнд - в данном случае база данных MySQL. Я подозреваю, что это приведет к тому, что Sync будет думать, что при работе нескольких клиентов возникают конфликты, но я могу ошибаться.

В любом случае, помимо этого, я предполагаю, что ваша цель - синхронизировать базы данных MySQL и MSSQL? Если это так, почему бы не запустить серверный процесс перед базой данных MySQL, которая становится участником синхронизации. Если у вас уже есть .Net на стороне сервера, вы даже можете написать его на C#, что обязательно облегчит проблемы взаимодействия.

Если вы настроены на то, что клиент является участником синхронизации, взгляните на Jakarta Commons, в котором, я думаю, есть код, который вам нужен, чтобы превратить вашего клиента в простой веб-сервер, который понадобится для его работы в качестве веб-сервис или RSS-канал.

На самом деле вы можете использовать отслеживание изменений прямо с SQL-сервера.

http://msdn.microsoft.com/en-us/library/cc280462(SQL.100).aspx

Вы можете сделать «клиентскую» часть Sync Framework отдельным приложением или службой C# .NET. Это означает развертывание клиента синхронизации и платформы .NET на клиентских машинах. Вам также придется создать поставщика клиента MySQL для Sync Framework (хотя вы, вероятно, сможете найти или адаптировать что-нибудь из codeplex).

Если вы не можете установить .NET на клиентские машины, вам может потребоваться рассмотреть возможность использования системы синхронизации, построенной на стеке Java, и использовать ее. Что-то вроде одного из предложенных здесь решений: Фреймворк с открытым исходным кодом в стиле Microsoft Sync Framework?. По крайней мере, некоторые из предложений могут относиться как к MSSQL, так и к MySQL.

Другие вопросы по теме