티스토리 뷰
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
이직 트리거, 나는 왜 그 회사를 떠났나 - 이태훈님
- 트리거
- 권고 사직
- "스프링 공부할 필요 없다" → 상사가 내 미래를 책임져주지않는다
- "그게 중요한게 아냐!" (기술과 전산이 메인이 아닌 회사)
- "그거 '우리일' 아냐, 그걸 왜 '우리'가 해야하는데" & 익숙한 업무환경과 매너리즘 → 익숙함을 경계하라
'Conference, Seminar' 카테고리의 다른 글
19.10.30) 강연 정리 - 주니어 개발자의 이력서 쓰기 (이동욱님) (0) | 2019.10.30 |
---|---|
19.10.23) 강연 정리 : 요즘 잘나가는 회사들의 생존전략 (김요섭님) (0) | 2019.10.26 |
19.10.24) 우아한 테크 세미나 정리 - 그럭저럭 돌아가는 서비스 만들기 (김형준) (0) | 2019.10.24 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 해외여행
- brute-force
- JPA
- Algorithm
- Stack
- dfs
- C
- webhacking.kr
- 우아한 테크코스
- 회고
- Java
- 리버싱
- mysql
- 웹해킹
- FRAGMENT
- Android Studio
- Vo
- sort
- graph
- git
- Data Structure
- 프로그래머스
- reversing
- javascript
- Android
- socket
- queue
- OneToMany
- bfs
- 개발자
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함