분류 전체보기
-
무신사에서 보낸 3번째 새해 나는 얼마나 만족하고 있을까흔적 2021. 1. 9. 15:09
어느덧 무신사에 입사 한지 2019년 5월 2일날 입사하여 3번째 새해를 맞이하게 되었다. 짧으면 짧은 시간이고 길다면 긴시간 과연 나는 무신사라는 회사에 아직도 만족하고 있을까? 난 다른 팀에 대해서 잘 알지 못하기때문에 우리 검색개발팀에 대해서만 작성하겠다. 1. 동료 다른 팀도 마찬가지이겠지만 좋은 동료와 함께 일 할수 있다는 것은 굉장한 복지에 해당한다고 본다 물론 그렇다고 이것을 빌미로 삼아 다른 복지는 안좋은데 동료 좋아요~~하고 하는 회사들은 별로지만 그래도 무신사가 복지가 괜찮다고는 생각이 들기 때문에 좋은 동료라는 복지는 엄청난 시너지를 낸다 사실 개발을 처음 시작했을 때는 개발만 잘하면 되는거 아닌가?라는 생각을 했었지만 "성공하세요"라는 회사를 다닐 때 부터 소통의 중요성을 알게 되었..
-
spring batch reader에서 transaction read mode로 실행하기spring 2020. 5. 21. 20:26
현재 검색 spring batch는 reader에서 db select시 write mode로 동작됩니다. 모든 것이 그런것은 아니고 chunk oriented batch에서 그렇게 돌아가게 되는데요 배치가 많아질 수록 가져와야 하는 데이터 양이 많아질 수록 write mode = master db로 부하를 주기 때문에 read mode = slave db로 타게 만들어줘야 할 필요성이 생겨 변경하는 작업을 하였습니다 reader, processor, writer 3개가 한개의 트랜잭션으로(write mode) 묶이며 chunk size 기준으로 rollback되기 때문에 reader에서 새로운 트랜잭션을 열어줘야 됩니다. 그래서 추가한 작업은 QuerydslItemReader.class jpasqlCus..
-
lombok build -> rebuild errorspring 2020. 5. 13. 20:49
compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' 이것을 ext { lombokVersion = '1.18.4' } annotationProcessor group: 'org.projectlombok', name: 'lombok', version: "${lombokVersion}" compileOnly group: 'org.projectlombok', name: 'lombok', version: "${lombokVersion}" Information:java: Errors occurred while compiling module 'snsstory-execute2-master.main' Informatio..
-
gradle build error 날 경우spring 2020. 5. 13. 20:36
gradle build error 에러 케이스는 엄청 많지만 그래도 대부분 이렇게 해결했던 방식이라 적어본다 1. gradle file 안에서 println 을 찍어서 빌드를 해보는 방법 2. gradle build --debug를 해보는 방법 3. intellij에 cmd + , 에서 gradle에 가서 gradle path 확인 /usr/local/Cellar/gradle/X.X/libexec 현재 나의 경로 4. build.gradle은 명령 순서도 중요하다 뭐 어디나 마찬가지이겠지만 5. maven을 gradle로 변환해주는 명령어가 있는데 쓰지 말자 쓰다가 상당히 고생많이 했다ㅠㅠ 6. rebuild project invalidate file cache intellij 재설치까지 있다
-
elasticsearch aggregation(aggs) paging 하기elasticsearch 2020. 5. 7. 22:49
엘라스틱서치 어그리게이션 페이징인 6버젼에서 나온 api이다 https://www.elastic.co/guide/en/elasticsearch/reference/6.1/search-aggregations-pipeline-bucket-sort-aggregation.html Bucket Sort Aggregation | Elasticsearch Reference [6.1] | Elastic The bucket_sort aggregation, like all pipeline aggregations, is executed after all other non-pipeline aggregations. This means the sorting only applies to whatever buckets are alre..
-
Spring Batch with QuerydslItemReaderJPA 2020. 5. 2. 12:06
무신사 java 개발팀에서는 다양한 배치 작업을 하고 있는데요 spring batch를 사용하여 배치 작업을 하고 있습니다 저희는 database에 접근하기 위해서 querydsl을 사용하고 있는데요 spring batch에서 querydsl을 지원해주고 있지 않습니다. 그래서 어쩔수 없이 작년에 코드를 만들었는데요 생각 보다 간단합니다. 필요하신 분들이 계실 것 같아서 공유하도록 하겠습니다. 저희가 실제로 실무에서 사용하고 있는 코드이기도 합니다만 기본 샘플이니 수정할 게 있다면 수정해서 사용해주세요! package com.musinsa.batch.customreader; import com.musinsa.config.db.JpaSqlCustomQuery; import org.apache.commons..
-
Spring EntityManagerFactoryBuilder 에러spring 2020. 5. 2. 09:53
EntityManagerFactoryBuilder expected at least 1 bean which qualifies as autowire candidate 최근 해당 에러를 2번이나 직면했다.. 1. spring 실행 할 때 2. 하나는 spring 2.1 -> 2.2로 버전을 올릴 때 spring batch를 실행하는데 계속 위의 에러가 발생하였다 그래서 소스를 보니 현재 우리는 multi datasource를 사용하는데 소스를 이동하는 중에 @Primary가 빠져있었다 intellij는 여러개의 라인을 ...으로 변경해주는 기능이 있는데 그것 때문에 바로 찾지는 못하였다ㅎㅎ 우리는 멀티 모듈을 사용하고 있는데 작년에 redis모듈과 elasticsearch모듈을 만들어서 나누고 gradle에서..