KamoCRM

Member rights applied는 차이만 쓰며 대량의 역할을 읽습니다

Performancekamo-shared-library
Shipped
2026년 9월 23일 오후 2:39 UTC
Author
Kamo
Commit
c4924af

MemberRightsAppliedService와 관련된 두 가지 수정: 1. **************** (RecalcChunk를 통해)와 **************** 비정규적으로 삭제하고 회원의 적용 밝기 행의 모든 것을 재설치, 매번 그들은. SecurityService의 회원RightsBackfillService는 EVERY org의 org-wide 경로를 호출합니다. EVERY pod boot (자체 치유, 디자인에 의해 — 그것의 자신의 javadoc을 참조), 그리고 recompute는 idempotent: a 꾸준한 상태 부팅 re-derives 동일한 세트. 생산 pg stat statements에서 측정하는: ~12.7M ~30K-row 테이블에 대한 INSERTs - 약 300 전체 테이블 쓰기, 부팅 당 하나, 거의 그들 중 모두는 정확히 무슨 일이 있었는지. 이제 두 가지 방법 모두는 어떤 member rights applied에 대해 신선하게 구성 된 세트를 이미 보유 (전체 펑크에 대한 하나의 대량 읽음) 그리고 단지 명확 + 실제로 권리의 구성원을 다시 작성 기타. no-op boot now costs 한 번 읽고 제로 쓰기. 2. countMemberRights (위와 읽기 전용의 쓰기 경로 모두의 핵심 computeMemberRights SessionRefreshController polls on every session 새로 고침) 산책 member.getRoles(), **************** 작업 제목 역할()/getRights() 및 member.getRights()는 별도의 게으른 컬렉션으로, 별도의 역할당 더 게으른 하중을 더해줍니다. 그 역할의 자신의 권리를 위해. 회원 당 비공개. 6개의 새로운 선택적인 저장소 분야 (MemberRoleRepository, DepartmentRoleRepository, DepartmentRightRepository, JobTitleRoleRepository, JobTitleRightRepository, 회원 권리 — 처음과 마지막 이미 존재) 그 게으른 부하를 고정, 작은 수의 대량 queries, 각 역할의 자신의 권리 JOIN-FETCHed. @EntityGraph가 그대로 뿌리지 않음 회원/TeamMember: 둘 다 @Inheritance (JOINED)이고, 더 많은 것을 fetches하는 법인 도표 참여 기관은 /leads가 생산에서 생산 한 정확한 모양입니다. Hibernate 6.2.13 (뿌리 테이블에 대 한 사용 항목을 허용 — LeadAssigneeRef 참조). 각 새로운 repository 대신 CHILD 엔터티 ( @Inheritance를 수행하는 중 하나) 및 필터링 부모의 ID로. @PersistenceContext를 가진 EntityManager 필드는 처음 시도하고 회귀했습니다: 그것은에 의해 가공됩니다 봄의 JPA-aware post-processor 언제 봄 또는 수업에, 그래서 수동으로 새로운 EntityManagerFactory 벤 (SignInReadRetry 테스트의 손 압연 봄 @RetryOnDbConflict가 실제 AOP 프록시를 통해 동작하는 컨텍스트 자세히 보기 선택적 저장소 필드는 동일한 방식으로 적용되는 ModelResolver를 이미 했습니다: @Autowired(required = false)는 그 유형의 비단과 null을 나타낸다. 6명의 객관들이 떨어지는 원래 게으른 로드 경로로 돌아 가기, unchanged, 모든 기존 테스트. SessionRefreshController는 라이브 컴퓨팅을 유지한다 (persisted snapshot에서 아닙니다) — 그 엔드포인트의 전체 포인트는 "지금 진실한 것은 무엇인가", 이는 항상 마지막 지속되지 않은.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing