|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAОкей. А теперь представь, что вы перешли на Redis. Следовательно другие потоки обновили в нём данные. EF поймёт это в случае с проекциями? Или тебе надо попробовать? Поймёт, если кеш реализован правильно. В случае не-Memory, а, например, Redis, не могу пока ответить на эти вопросы. Опыта пока соответствующего нет. skyANAХотя если у вас один сервер, то должно работать и с Memory. При чём тут другие потоки, если всё в рамках одного пула? Один, другие потоки в смысле, другие пользователи параллельно сделали изменения, проекцию всегда надо брать из одного источника (считая кеш 2 уровня). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:00 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAТак что отмаза не катит :) Чего, какие отмазы? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:01 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
hVosttskyANAТак что отмаза не катит :) Чего, какие отмазы? Ну ты пишешь: "за это время могут быть ещё и другие изменения (другими потоками например), которые следует учесть". При этом у вас кэш второго уровня в памяти, зачем что-то учитывать, если EF это разруливает? Или таки не разруливает? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:06 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAНу ты пишешь: "за это время могут быть ещё и другие изменения (другими потоками например), которые следует учесть". При этом у вас кэш второго уровня в памяти, зачем что-то учитывать, если EF это разруливает? Или таки не разруливает? :) Ты взял Entity, изменил его, сохранил. Затем взял проекцию EntitySomeDto, которая может (и скорее всего будет) включать данные из других зависимых таблиц. Про изменения в них EF ничего не знает в рамках контекста. Никто ничего не разруливает, если данные, попадающие в проекцию есть в кеше, то запроса к базе данных не будет. Это сильно зависит от реализации кеша, так как EF его не реализует. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:08 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
hVosttЭто сильно зависит от реализации кеша, так как EF его не реализует.То есть кэш-таки надо самому реализовывать под свои нужды? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:12 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAhVosttЭто сильно зависит от реализации кеша, так как EF его не реализует.То есть кэш-таки надо самому реализовывать под свои нужды? А кто это сделает за тебя, если никто кроме тебя твоих нужд не знает? Но https://efcache.codeplex.com/ хорошая основа. Не исключено, что появятся обобщённые решения под редиску и другие шутки. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:20 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
hVosttskyANAпропущено... То есть кэш-таки надо самому реализовывать под свои нужды? А кто это сделает за тебя, если никто кроме тебя твоих нужд не знает?Вооот! И так посмотришь на EF: того, что мне нужно нет, сего. И проще взять dapper и дописать к нему всё, что тебе нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:37 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAВооот! И так посмотришь на EF: того, что мне нужно нет, сего. И проще взять dapper и дописать к нему всё, что тебе нужно. Возможно. Только надо не смотреть на него, а пользоваться им, затем делать утверждения исходя из опыта, а не каких-то ощущений. А же если не собираешься пользоваться, то и смотреть не надо, просто игнорь. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:41 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
hVosttskyANAВооот! И так посмотришь на EF: того, что мне нужно нет, сего. И проще взять dapper и дописать к нему всё, что тебе нужно. Возможно. Только надо не смотреть на него, а пользоваться им, затем делать утверждения исходя из опыта, а не каких-то ощущений. А же если не собираешься пользоваться, то и смотреть не надо, просто игнорь. У нас исторически NHibernate. Наелись им. В каких-то местах уже используем dapper, и знаешь, полностью устраивает :) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:44 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAУ нас исторически NHibernate. Наелись им. Фу-фу-фу, бяка. У нас тоже он есть местами, исторически. skyANAВ каких-то местах уже используем dapper, и знаешь, полностью устраивает :) А нас EF вполне даже устраивает ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 13:48 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
hVosttskyANAhVostt, да всё тоже. Инструмент выбирается под задачу, возможно Парамону в конкретно его задаче dapper подойдёт лучше, чем EF. Да понятно. Но твоё замечание «уделывает по скорости» несколько нелепо. Их нельзя сравнивать по скорости, ибо объём работы который выполняется в Dapper и EF различается конкретно. Если уж на то, то любой кавказец на шестёрочке «уделает» любого олипийца на велики, ведь Кавказ -- сила! руки прочь от кавказа! кавказ не трошь!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 16:43 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
ViPRosруки прочь от кавказа! кавказ не трошь!!! Дык ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 17:53 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAА насчет ORM: известно, что dapper уделывает EF по скорости, и возможно под задачи Парамона лучше подойдет он, чем EF. Когда EF станет у нас бутылочным горлышком, то будем думать, а пока что свою работу делает ) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 21:02 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
ПарамонskyANAА насчет ORM: известно, что dapper уделывает EF по скорости, и возможно под задачи Парамона лучше подойдет он, чем EF. Когда EF станет у нас бутылочным горлышком, то будем думать, а пока что свою работу делает )Ну меня это мало интересует :) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 23:05 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAПарамонпропущено... Когда EF станет у нас бутылочным горлышком, то будем думать, а пока что свою работу делает )Ну меня это мало интересует :) А показалось, что ты мне что-то предлогал ) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 23:34 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
ПарамонskyANAпропущено... Ну меня это мало интересует :) А показалось, что ты мне что-то предлогал )Даже если и предлагал, то это не значит, что мне интересны ваши горлышки. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 23:42 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAПарамонпропущено... А показалось, что ты мне что-то предлогал )Даже если и предлагал, то это не значит, что мне интересны ваши горлышки. Горлышки, хе, с понятием Bottleneck в программной архитектуре ты не знаком ) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2014, 23:57 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
ПарамонskyANAпропущено... Даже если и предлагал, то это не значит, что мне интересны ваши горлышки. Горлышки, хе, с понятием Bottleneck в программной архитектуре ты не знаком )Просвети, желательно с конкретными метриками. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 07:05 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAПросвети, желательно с конкретными метриками. Троллинг моде он ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 11:17 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
hVosttskyANAПросвети, желательно с конкретными метриками. Троллинг моде он Со стороны Пармона, да. А мне же реально интересно, даже тема для этого была создана: " Производительность приложений. Мониторинг и профилирование. ". Глядишь, может парень какими-то ценными знаниями поделится. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 11:50 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAПарамонпропущено... Горлышки, хе, с понятием Bottleneck в программной архитектуре ты не знаком )Просвети, желательно с конкретными метриками. раз гугель в бане, я начну с простых иллюстраций ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 12:39 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
ПарамонskyANAпропущено... Просвети, желательно с конкретными метриками. раз гугель в бане, я начну с простых иллюстраций Фиговое начало, картинка не отображается. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 12:50 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAПарамонпропущено... раз гугель в бане, я начну с простых иллюстраций Фиговое начало, картинка не отображается. хе, в FF глянь. Чо-то хрон все хуже ) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 13:01 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
ПарамонskyANAпропущено... Фиговое начало, картинка не отображается. хе, в FF глянь. Чо-то хрон все хуже ) О, ты про это. Да я в этом эксперт. Так что проходи мимо, тролололь! ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2014, 13:13 |
|
Связь один к одному EF Code First
|
|||
---|---|---|---|
#18+
skyANAВ реальности бывают и простые объекты и сложные. Вот нужно будет тебе 100 карточек через Web API отдать наружу, ты получается 200 запросов к БД вместо 100 будешь посылать даже если чётко представляешь, что "жадная загрузка" не представляет из себя избыточный SELECT? Ну и опять какие-то левые слова пошли :) Что такое чертежи? Хуже, когда нужно достать из БД N карточек, подпадающих под определенное условие, с включением M навигационных свойств. Тогда при использовании Include будет сделан 1 (но, возможно, сложный) SQL-запрос. При Lazy loading будет выполнено 1 + N*M запросов. Если предполагается включить большое количество навигационных свойств (особенно коллекций) и запрос получается слишком громоздкий, то его можно разбить на несколько с разными инклюдами (на сколько именно и каких решаем при помощи SQL-профайлера и здравого смысла) и выполнить их последовательно с MergeOption.AppendOnly. В данном случае будет фиксированное кол-во запросов, не зависящее от числа возвращенных карточек. Также никто не запрещает комбинировать Eager и Lazy loading. Например, когда заранее неизвестно, какие именно навигационные свойства потребуются. В этом случае может иметь смысл "жадно" загрузить те навигационные свойства, которые потребуются с большей вероятностью, и "лениво" подгружать остальные. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2014, 07:44 |
|
|
start [/forum/topic.php?fid=17&msg=38801943&tid=1349680]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 263ms |
0 / 0 |