[Spring Boot] 대량 배치에서 쿼리 개선을 통한 성능 개선 (sub. 커스텀 ItemReader 없이 성능 개선해보기) - 과거에 저질렀던 오류 정정 버전
·
Backend/Spring Boot & JPA
🙇‍♂️ 과거에 RepositoryItemReader가 최악의 성능을 보인다는 분석은 엄연히 제 실수였습니다.RepositoryItemReader가 최악의 성능을 보인다는 수치를 보인 이후, 당시 작업이 너무 많아 원인을 제대로 분석할 여유가 없어서 추측만 하고 넘겼었습니다.그러나 반 년이 지난 지금까지도 개인적인 의문이 풀리지가 않았고, 그 와중에 조회수는 계속 오르고, 제 말이 사실인 것처럼 받아들이신 분들까지 나타나는 상황을 보았습니다.찝찝한 기분이 들어 급하게 다시 분석해본 결과, RepositoryItemReader의 성능 저하는 제가 만든 Repository 구현체에서 비롯했으며, 잘못된 정보를 장기간 전달드리게 되어 사죄의 말씀드립니다.처음엔 Hibernate의 동작을 알아보는 방향으로 포..
[Android] AudioRecord 녹음부터 PCM to WAV 변환
·
Frontend/Android
💡 전 안드로이드 개발자는 아니기 때문에 틀리거나, 이상한 컨벤션을 따르는 코드가 많을 수 있습니다.1. Introduction 📌 Purpose모든 코드는 깃헙에서 확인 가능합니다. SpeechRecognizer 썼다가 된통 당하고 AudioRecord로 넘어왔다.그런데 그냥 SpeechRecognizer 구현체에 SDK 쑤셔넣고, 원하는대로 동작하도록 개조하는 게 편하지 않았을까 싶다. 다만 이렇게 하려니, STT API 변경할 때마다 Android, iOS 둘 다 반영해줘야 하는 게 번거롭기도 하고, 앱 업데이트 강제할 거 아니면 레거시 자원도 계속 유지해줘야 하고,심지어 CLOVA STT API(CSR인가 뭔가 하는 거)는 최대 60초까지 밖에 지원을 안 한다.FAQ에서 60초 이상도 가능하도..
[Network] 홈 서버 구축 1 - 브릿지 모드 설정, 포트 포워딩
·
Computer Science/Network
💡 SK 모뎀(H66ON) 및 공유기(H734GP)를 사용 중입니다. 다른 통신사의 경우 방법이 다소 차이가 날 수 있습니다.1. Introduction 📌 Network Structure홈 서버를 구축하기 전에 가장 먼저, 가정 내 네트워크 구조가 어떻게 구성되어 있는지 파악해야 한다. 내 경우엔 SK 통신사의 모뎀과 라우터(=공유기; 정확히는 무선 공유기)를 사용 중이었는데, 덕분에 학교에서 배운 내용하고 달라서 조금 헤맸다.내가 알기론 최근엔 Gateway 역할을 하는 모뎀과 Router가 일체형인 구조가 많다고 들었는데, 찾아보니 기가 와이파이 시대에선 이게 또 분리되는 게 트렌드라고 한다.모뎀(Moderm)각 장치의 디지털 신호를 전송 가능한 아날로그 신호로 치환외부 인터넷 망(벽면의 케이블..
[GoCD] self-hosted 초간단 CD 파이프라인 구축
·
DevOps/GoCD
1. Introduction 📌 Motivation경량 서버를 만들긴 했는데, 막상 요놈을 어디 띄워야 할 지 고민이 되었다.고작 이거 하나 올리겠다고 클라우드를 쓴다? 내 목표는 최소 비용으로 최대 광고 수익을 이끌어내는 것인 만큼, 이젠 그 비용마저도 아깝다는 생각이 들었다. 그러다가 옆을 슥 보니, swift 개발 손 땐 이후로 또 다시 방치되고 있는 내 맥북이 보였다. 주인된 도리로써, 어찌 내 PC가 100% 효율로 일하지 않는 상황을 방관할 수 있겠는가.내가 그리 만들어 주겠다. 그리하여, 미루고 미루던 로컬 홈 서버 개장 프로젝트가 시작되었다. 📌 GoCD서버를 로컬 PC에 띄우는 거야 그렇다 쳐도, 문제는 CD 파이프라인을 어떻게 해야 할 지가 고민이었다.차라리 aws가 더 쉽지, gi..