Lucene. Сетевые лучшие практики

В Bootstrap 3 вы можете сбросить форму после закрытия модального окна следующим образом:

$('.modal').on('hidden.bs.modal', function(){
    $(this).find('form')[0].reset();
});
34
задан skaffman 16 June 2009 в 15:35
поделиться

6 ответов

Есть хорошая статья, объясняющая про Lucene.NET реализация: http://www.ifdefined.com/blog/post/2009/02/Full-Text-Search-in-ASPNET-using-LuceneNET.aspx

3
ответ дан 27 November 2019 в 17:12
поделиться

Проблема с Lucene.NET заключается в том, что у него нет активного сообщества, такого как стандартная (java) Lucene, так что это похоже на то, что всегда эффективно работает старая версия Lucene. Хотя мы предпочитаем .NET, по этой причине мы решили использовать Java-версию Lucene. Если вы также используете Solr, его очень легко интегрировать.

1
ответ дан 27 November 2019 в 17:12
поделиться

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

Я бы порекомендовал Lucene in Action, Second Edition Майкла МакКэндлесса, Эрика Хэтчера и Отиса Господнетича. Хотя он написан для Lucene, а не для Lucene.NET, это не должно быть проблемой, поскольку термонология и api в основном одинаковы.

Однако, если вы ' Если мы просто попробуем, вы можете прочитать на этом сайте . Название говорит само за себя: -)

18
ответ дан 27 November 2019 в 17:12
поделиться

Мы часто используем Lucene.NET, когда объем данных огромен и для чтения требуется очень быстрое время отклика. Обычно мы вставляем данные, которые нам нужны для поиска, а также ключ, позволяющий сопоставить наши результаты с таблицей базы данных, в которой есть оставшиеся детали. Затем это позволяет нам искать пользователя (в нашем случае), проверяя его участие в прошлом. Это не просто поиск по имени пользователя, а поиск, который перебирает различные детали, пытаясь найти, есть ли другие экземпляры этого пользователя (хотя и в другой форме). Например, мы ищем ID пользователей (из одной системы), их ID из другой системы, возможно, ID из системы поставщиков, GUID флеш-файлов cookie, GUID файлов cookie сайтов и т. Д. И когда мы находим один идентификатор, мы ищите другие экземпляры этого идентификатора для других экземпляров пользователей. Это позволяет нам удерживать вход пользователей в одну из многих систем (поскольку их участие в любой системе разрешено только один раз в 24 часа). В SQL этот алогритм (о котором я был не уверен) длился бы вечность! В Lucene.NET это занимает меньше секунды. У Lucene гораздо больше возможностей поиска, чем у SQL Server. Отстойно писать в индекс или обновлять его. Обычно это делается как работа ... все сразу. Однако, если вам нужно писать в индекс, обновляя его в реальном времени, вам нужно написать какой-нибудь умный код, чтобы гарантировать, что он будет записан в заблокированном режиме (подумайте об организации очереди с одноэлементным кодом), иначе ваш код будет перекрываться и взорваться!

Я рассказываю об использовании Lucene.NET в своей книге ( Социальные сети ASP.NET ), и вы можете найти много помощи здесь .

NET это занимает меньше секунды. У Lucene гораздо больше возможностей поиска, чем у SQL Server. Отстойно писать в индекс или обновлять его. Обычно это делается как работа ... все сразу. Однако, если вам нужно писать в индекс, обновляя его в реальном времени, вам нужно написать какой-нибудь умный код, чтобы гарантировать, что он будет записан в заблокированном режиме (подумайте об организации очереди с одноэлементным кодом), иначе ваш код будет перекрываться и взорваться!

Я рассказываю об использовании Lucene.NET в своей книге ( Социальные сети ASP.NET ), и вы можете найти много помощи здесь .

NET это занимает меньше секунды. У Lucene гораздо больше возможностей поиска, чем у SQL Server. Отстойно писать в индекс или обновлять его. Обычно это делается как работа ... все сразу. Однако, если вам нужно писать в индекс, обновляя его в реальном времени, вам нужно написать какой-нибудь умный код, чтобы гарантировать, что он будет записан в заблокированном режиме (подумайте об организации очереди с одноэлементным кодом), иначе ваш код будет перекрываться и взорваться!

Я рассказываю об использовании Lucene.NET в своей книге ( Социальные сети ASP.NET ), и вы можете найти много помощи здесь .

9
ответ дан 27 November 2019 в 17:12
поделиться

«Lucene в действии» - лучшая книга, чтобы научиться индексировать и искать. Он даже охватывает расширенные методы поиска и написание пользовательских анализаторов. Несмотря на то, что книга предназначена для Java ... Я реализовал поиск и индексирование в .net с помощью этой книги.

1
ответ дан 27 November 2019 в 17:12
поделиться

У Саймона Грина есть хорошая серия из трех частей о том, как он настраивал Lucene.Net для работы со своей реализацией NHibernate. В первой части представлена ​​серия . Во второй части и В третьей части обсуждаются технические детали.

Я нашел образцы кода Lucene.Net очень полезными, хотя мой проект не использует NHibernate.

1
ответ дан 27 November 2019 в 17:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: