728x90 반응형 전체 글 썸네일형 리스트형 신규 프로젝트를 위한 몽고 DB 도입 가이드 MongoDB 도입 계기 MongoDB 가 가진 여러 가지 장점이 있지만, 그중에서 프로젝트 도입에 가장 큰 영향을 준 기능은 Sharding 입니다. MySQL과 같은 RDBMS는 제한 없이 증가하는 사용자의 데이터 저장 시 동일한 스키마의 테이블 명에 인덱스 번호를 붙여 물리적 테이블을 여러 개로 생성하고 애플리케이션 단에서 샤딩을 구현하였습니다. 하지만 MongoDB를 사용하면 어플리케이션 단의 Shading을 직접 구현할 필요 없이, Shading이 필요해지는 시점에 Shard 하는 기준이 되는 Shard Key 만 지정한다면 손쉽게 Shading이 가능합니다. 아직 서비스의 사용자 데이터가 크지 않아 Shard Set을 여러 개로 구성하지 않았으며 현재 1개의 Shard로 구성하여 서비스 운영하.. 더보기 newman 테스트 자동화 API를 테스트 할 때 POSTMAN 을 많이 활용합니다. API 배포 후 테스트 자동화를 위해 Spring Batch 로 command line 기반으로 collections 를 실행 가능한 Newman 을 사용해 보았습니다. 요구사항은 아래와 같이 정의하였습니다. 서버별 주기적인 서비스 Flow 테스트 배포가 되면 바로 서비스 Flow 테스트 도메인에 해당하는 모든 서버에 대해 테스트 Eureka에서 도메인별 서버 리스트 조회 테스트 결과에 대한 리포트 reporter로 html 생성하여 이메일 발송 테스트 스크립트 버전 관리 Newman 설치 방법은 아래와 같습니다. newman과 newman-reporter 설치하였습니다. yum install -y npm # https://github.com/p.. 더보기 Eclipse에서 Lombok 과 MapStruct 사용 java bean mapping framework 중 MapStruct가 가장 우수합니다. ModleMapper의 경우 reflection-based라서 성능 상에 이슈가 있으므로 MapStruct를 추천합니다. MapStruct is definitely more efficient than any reflection-based approach. Plain method invocations done in the generated code is as fast as it gets. Huge runtime overhead of a reflection-based mapping tool (not BeanUtils, another one) was one of the motivators for writing it. A.. 더보기 이전 1 ··· 311 312 313 314 다음 728x90 반응형