티스토리 뷰

19.10.2 SLiPP 세미나 정리

  • 루터회관 14층

게임 재화 및 재화 로그 시스템 구축기 - 김문수님

  • 키워드

    • ThreadLocal
    • Boundary Context
  • 사건 엔티티에 가려진 사물 엔티티를 찾아내다

    • 재화
  • 사물 엔티티 재화의 설계

    • 재화가 가지는 boundary context를 규정하라
  • 각종 보상 관련 컨텐츠는 횡단이다 → AOP

  • 결국 SRP를 의도

    • 각 객체간의 커플링이 강해질수록 책임이 흐려지기 쉽다
  • 모든 재화에 대한 로그 필요성 대두

  • 재화 로그의 특징

    • 완전한 트랜잭션이 보장되야하고, 절대로 유실을 인정할 수 없다
    • 게임 데이터와 조합이 가능해야하고 다양한 쿼리로 고객응대 등이 가능해야 한다
    • 고객응대는 최장1달로 1달에 대해 실시간 데이터 조회가 가능해야 한다
    • 고객응대는 모두 게임관리툴(web)에서 이뤄진다

사용자 의존되는 정보를 서로 의존없는 계층간에 파라미터 없이 delivery 가능해야 ThreadLocal

  • LogType같은 단순한건 AOP로 가져오기만 하면 됬다. 반면 ItemChangeReason같은 필드는 비즈니스 서비스에 종속적일수밖에 없었다.

  • 서비스 오픈, QA 전이라서 점진적인 리팩토링이 아닌, Runtime 에러를 강제할수있었다. 최대한 빠르게 에러를 발생시키자는 전략

  • row format으로 가공없이 로그를 넣어버리면 나중에 엄청난 짐이 된다 → 커스텀 어노테이션 활용. 안그럴거면 애초에 파일로 로그 저장해버리지.

  • 커스텀 어노테이션을 이용해 특정 API 타겟

  • ThreadPool이 스레드를 재사용하기 때문에, ThreadLocal에서 작업후 clear하지 않으면 다음 요청때 공유될수있으므로 반드시 clear해야한다

  • 책 추천

    • 오브젝트/조영호
    • Head First Object-Oriented Analysis & Design

이직 트리거, 나는 왜 그 회사를 떠났나 - 이태훈님

  • 트리거
    1. 권고 사직
    2. "스프링 공부할 필요 없다" → 상사가 내 미래를 책임져주지않는다
    3. "그게 중요한게 아냐!" (기술과 전산이 메인이 아닌 회사)
    4. "그거 '우리일' 아냐, 그걸 왜 '우리'가 해야하는데" & 익숙한 업무환경과 매너리즘 → 익숙함을 경계하라
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함