Как написать прокси с C #? - PullRequest
0 голосов
/ 17 марта 2011

У меня есть кодирование веб-приложения, в котором есть многопользовательский.они выбирают данные или вставляют данные, каждая вещь такова.Но для выбора некоторых данных требуется слишком много времени, например, с использованием LINQ или математических вычислений.Я думаю, что: мой пользователь1:

select * from MyTable -----> save as caching via proxy server in machine

мой пользователь2:

select * from MyTable2 -----> save as caching via proxy server in machine

мой пользователь3:

insert into MyTable2 -----> Update caching(select * from MyTable2) via proxy server in machine

Как написать прокси-сервер, чтобы выбрать Быстрее иобновить выбранный результат, если другой пользователь обновляет таблицу?

enter image description here

Ответы [ 2 ]

1 голос
/ 17 марта 2011

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

Кстати, я думаю, эта часть уже учтена существующими ORM, нет?

0 голосов
/ 17 марта 2011

Зачем вам прокси для этого?

То, чего вы хотите достичь, - это одно из преимуществ использования ADO Entity Framework

У вас есть учебники повсюду в Интернете, но вы можете начать с этого

ADO Entity Framework достаточно умен, чтобы кэшировать объекты, которые используются много раз, и обновлять их, когда они не синхронизированы, они также обладают рядом фантастических свойств, таких как поздняя привязка и обработка параллелизма.

...