SolrJ Thread Safety - PullRequest
       1

SolrJ Thread Safety

1 голос
/ 30 июля 2010

Я использую CommonsHttpSolrServer в веб-приложении. Безопасно ли повторно использовать CommonsHttpSolrServer для нескольких запросов или мне нужно создавать новый объект для каждого запроса? Не удалось найти ответ в документации API.

1 Ответ

2 голосов
/ 18 июля 2011

Согласно документации и комментариям источника, SolrJ является потокобезопасным.

Однако будьте осторожны при обновлении solr. Согласно этой записи транзакции выполняются для каждого экземпляра, а не для каждой очереди. Это означает, что у каждого потока нет отдельной изолированной транзакции для работы. Откат будет выполнять откат каждого вызова (независимо от исходного потока) до последнего коммита.

В целом, это означает, что вы должны безопасно запрашивать (используя тот же CommonsHttpSolrServer) столько потоков, сколько вам нужно. Однако, если вы хотите воспользоваться откатом, вам необходимо убедиться, что только один поток обновляет ваш экземпляр solr за раз (независимо от распределения объектов).

...