Solrj를 사용하여 Solr에서 트랜잭션 관리를 처리하는 방법은 무엇입니까? 이것과 관련된 그물에 관한 많은 문서가 없습니다. 그러나 누군가가 SolrJ를 사용하여 트랜잭션 관리와 관련된 어떠한 링크 나 정보를 제공 할 수 있다면 고맙겠습니다.solrj를 사용하여 solr 트랜잭션 관리
2
A
답변
2
SolrJ의 트랜잭션을 프로그래밍 방식으로 처리해야합니다. 여러 번 쓰기를 처리 할 때.
- SolrServer API 추가 메소드를 사용하여 SolrInputDoucments를 서버에 추가하십시오.
- 모든 SolrInputDocuments가 추가되면 SolrServer API에서 commit 메소드를 호출하여 모든 변경 사항을 커밋합니다.
- Solr에서 예외가 발생하는 경우 Solr에 쓰기를 롤백하려면 SolServer API 롤백 메소드를 호출하십시오.
- 데이터베이스에 쓰기 작업도 롤백하려면 catch 블록에서 런타임 예외를 던져주십시오.
이렇게하면 트랜잭션 관리를 처리합니다. 누구든지 더 나은 답변을 갖고 있다면 답을 자유롭게 개선하십시오.
+0
커밋이 예외를 throw하는 상황을 어떻게 처리합니까? @Transaction 주석을 사용하는 경우이 실패는 SolrJ를 사용하는 메서드 본문 외부에서 발생합니다. –
+0
보고있는 예외는 무엇입니까? Exception으로 커밋이 실패하면 Exception을 잡아서 Solr 롤백을 호출 할 수 있습니다. 그러나 롤백은 마지막 커밋에 대한 모든 호출을 롤백합니다. – Ravi
관련 문제
- 1. Solrj를 통해 Solr 파편에 여러 문서 작성
- 2. Solrj를 사용하여 SOLR의 필드 강조하기
- 3. solrj를 사용한 분산 검색?
- 4. Solrj를 사용하여 Solr에 JSON 문서를 삽입하는 방법
- 5. 트랜잭션 관리
- 6. solrj를 사용하여 FTP 문서 인덱싱
- 7. Spring Hibernate 트랜잭션 관리
- 8. 비즈니스 계층에서 트랜잭션 관리
- 9. DAO로 트랜잭션 관리
- 10. 단일 트랜잭션 커밋 및 롤백을 사용하여 여러 모델로 트랜잭션 관리
- 11. 경량 자바 트랜잭션 관리
- 12. 트랜잭션 관리 적용 스프링
- 13. Spring에서 JMS 트랜잭션 관리
- 14. 별도의 모델 방법을 사용하여 트랜잭션 관리
- 15. isolation_serializable을 사용하여 Spring과 hibernate를 이용한 트랜잭션 관리
- 16. 스프링 트랜잭션 관리
- 17. TransactionScope없이 .NET 트랜잭션 관리
- 18. Django 트랜잭션 관리
- 19. Spring 리소스 트랜잭션 관리
- 20. 레일에서의 선언적 트랜잭션 관리
- 21. SolrJ를 사용하여 전체 가져 오기 명령을 실행하는 방법
- 22. Hibernate와 Guice로 JavaSE에서 트랜잭션 관리
- 23. SolrJ를 사용하여 TrieField 필드를 게시하는 방법은 무엇입니까?
- 24. solrj를 사용하여 json 형식의 SolrDocument 검색
- 25. Django ORM의 선택적 트랜잭션 관리
- 26. 원격 호출 용 트랜잭션 관리
- 27. 자동 데이터 컨텍스트 트랜잭션 관리
- 28. 가장 좋은 트랜잭션 관리 방법
- 29. 봄 여러 트랜잭션 관리 문제
- 30. J2SE 응용 프로그램의 트랜잭션 관리
DB 스타일 트랜잭션 관리에 대해 이야기하고 있습니까? SolrJ에는 아무런 의미가 없습니다. 롤백이 없으며 SOLR에 대한 웹 서비스 호출을 통해 커밋이 전송되므로 대기열에 저장되므로 메모리에서 동시 액세스 문제가 발생할 위험이 없습니다. 임베디드 SOLR을 사용하고 있습니까? – nickdos
예, Solrj를 사용하여 DB 스타일 트랜잭션 관리를 달성 할 수있는 방법에 대해 궁금합니다. Solrj와 Solr에 여러 개의 읽기 및 쓰기가있을 때입니다. 우리는 DB 트랜잭션 관리를 위해 Hibernate를 사용하고있다. Solr 또는 데이터베이스에서 예외가 발생하면 데이터베이스 커밋과 solr 커밋 모두 롤백해야합니다. 내가 이해 한대로이 트랜잭션 관리는 커밋과 롤백을 위해 SolrJ API를 사용하여 코드에 모두 작성해야하는 것처럼 보입니다. 이 작업을 수행하는 다른 더 좋은 방법이 있다면 알려주십시오. 감사. – Ravi
당신이 물어 본 질문에서 다시 돌아가서 "correct"라고 대답 한 사람이 있는지 확인하십시오. 그렇다면 녹색 틱 아이콘으로 정확하게 표시하십시오. 귀하의 요금은 지금은 너무 나쁘지 않다, 그래서 아마 당신이 이미 해본 75 %를 말합니다 ... – nickdos