Releases

Aspectran 9.5 릴리즈 노트

이번 릴리즈는 프레임 기반의 정교한 힌트(Hint) 메커니즘과 MyBatis 및 JPA를 위한 지능형 데이터베이스 라우팅 기능을 도입하여 프레임워크의 유연성과 성능을 한 차원 높였습니다. 또한, 핵심 인터페이스의 표준화와 Primary-Replica 용어 채택을 통해 현대적인 아키텍처 기준을 강화했습니다.

✨ 새로운 기능

  • 프레임 기반 격리를 지원하는 고급 힌트(Hint) 메커니즘 도입
    • 비즈니스 로직의 의도(Intent)를 프레임워크 모듈에 효율적으로 전달할 수 있는 정교한 힌트 시스템을 구축했습니다.
    • 호출 프레임(Call Frame) 기반의 격리 구조를 통해 중첩된 호출 간에 힌트의 노출 여부를 엄격하게 제어할 수 있습니다.
    • @Hint 어노테이션에 propagated 속성을 추가하여 하위 호출로의 힌트 전파 여부를 설정할 수 있습니다.
    • 힌트의 출처(Method 등)를 추적하고 로그에 기록하여 실행 의도의 발생지를 쉽게 파악할 수 있도록 개선했습니다.
  • MyBatis 및 JPA 데이터베이스 라우팅 기능 추가
    • 읽기/쓰기 및 읽기 전용 컨텍스트에 따라 SqlSession 또는 EntityManager 작업을 지능적으로 라우팅하는 기능을 도입했습니다.
    • Primary-Replica 아키텍처 지원을 위해 RoutingSqlSessionAgentRoutingEntityQuery를 추가했습니다.
    • 트랜잭션 힌트가 readOnly일 경우 데이터 수정을 방지하는 Fail-fast 제약 조건을 구현했습니다.
  • InstantActivity 및 InstantTranslet 지원 강화
    • 비-트랜스렛 환경에서도 트랜스렛 컨텍스트를 제공할 수 있는 InstantTranslet을 도입하여 프레임워크의 유연성을 높였습니다.

🚀 개선 사항

  • 핵심 인터페이스 및 용어 표준화
    • 규칙 관리의 책임을 명확히 하기 위해 HasAttributes, HasParameters 등을 HasAttributeRules, HasParameterRules 등으로 명칭을 변경하고 관련 로직을 정비했습니다.
    • 현대적인 포괄적 표준에 맞춰 Master-Slave 용어를 Primary-Replica로 변경했습니다.
  • 테스트 인프라 및 코드 품질 고도화
    • @AspectranTest 어노테이션을 활용하여 테스트 설정을 간소화하고 일관성을 확보했습니다.
    • AnnotatedMethodInvoker에 대한 포괄적인 테스트 케이스를 추가하여 파라미터 바인딩 및 타입 변환의 안정성을 검증했습니다.

🛠️️ 의존성 라이브러리 업그레이드

  • JLine (4.0.12)
  • Jetty (12.1.8)
  • Lettuce (7.5.1.RELEASE)
  • OGNL (3.4.11)
  • Hibernate Core (7.3.1.Final)

NEWS
Release

Archive