|
|
|
Синхронизация данных между сервером и клиентами
|
|||
|---|---|---|---|
|
#18+
Добрый день! Побродив пару дней по интернету у меня сложилось впечатление, что многопользовательские программы - это очень большая редкость. :) В общем проблема в том, что я пишу на wpf C# linqtosql sql2008 vs2012 приложение, которое обращается к базе. Пользователей много и изменений тоже. Необходимо периодически синхронизировать данные на клиенте (на мой взгляд классическая задача). Попробовав тупо обновлять все данные, получил ужасный результат - данных много обновление доходит до 30 секунд. В интернете примеры конкретных реализаций ни одной не нашел. В книгах и msdn тоже ничего, в основном основы и общие принципы контроля изменений. Помогите найти ссылки на конкретные примеры с linqtosql. сейчас примерно так: Код: c# 1. 2. и так для каждой таблицы. Подозреваю должен быть какой-то не сложный способ, возможно в самом linq. Или может кто знает как прикрутить SqlDependency, хотя ,как я понял, это очень капризная штука. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2013, 13:25 |
|
||
|
Синхронизация данных между сервером и клиентами
|
|||
|---|---|---|---|
|
#18+
Неоднократно убеждался на практике, что бы получить хороший результат, нужно выбросить всякие Entity Framework и L2SQL и писать все ручками используя ХП и датаридеры, если система еще и многопользовательская и данных много - то что доктор прописал. Что бы постоянно не тягать все данные рассмотрите вариант добавления в таблицы столбца - LastUpdate с типом DateTime, куда через тригер пишите врямя последнего изменения записи. Затем запросом выбирайте(обновляйте) толко записи измененные после последнего запроса клиента: select бла-бла from бла-бла where LastUpdate > @LastUserRequest ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 15:49 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=38347299&tid=1349964]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
150ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 237ms |
| total: | 483ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...