분류 전체보기(105)
-
[AWS] ECS 배포 에러 해결(GetAuthorizationToken, RegisterTaskDefinition)
개요신규로 개발 서버 및 운영 서버가 생겨 기존 소스를 활용하여(기존 소스도 머리박으며 작업했던 것) 배포 중 마주한 에러, 그 중에서도 IAM 사용자의 권한 설정과 관련된 해결 방법에 대해서 설명한다. 사용 기술타기업들의 인프라가 어떻게 구축돼있는지는 모르겠으나 우리 같은 경우 클라우드 플랫폼을 AWS를 쓰기 때문에 github actions와 aws관련 CLI를 사용하여 CD를 구축하였다. 이전에 ecs-cli를 사용했었으나 지원되지 않는 바람에 docker version과 관련된 배포 이슈가 생겨 마이그레이션 했었다(ecs-cli -> aws-cli). 에러1. GetAuthorizationToken실행 명령어run: | aws ecr get-login-password --region ${{se..
2025.03.19 -
JWT란?
개요Apple App Store Connect API를 사용하기 위해 JWT 토큰이 필요한 과정에서 알게 된 지식을 정리해보고자 한다.이전 프로젝트에서 Node jsonwebtoken 라이브러리를 활용해서 API 통신을 하고 있었으나 사용법만 숙지한 상태에서 깊은 이해가 부족했던 탓도 있다. JWT란?JWT는 JSON Web Token의 약자로 cookie나 session없이 Client와 Server의 인증을 진행하는 과정을 뜻한다. JWT의 구조1. header2. payload3. signature https://jwt.io/introduction위 공식문서에 나와있듯이 JWT의 구조는 세가지로 이루어져있다.표준으로 정해진 것으로는 header에 alg, type 프로퍼티를 가지고 payload에는..
2025.03.13 -
네트워크 관리사 2급 합격 후기
개요취득한지는 2달가량 지났으나 갑자기 합격한 것이 생각나서 후기를 작성해보고자 한다.시험에 쉽게 합격하는 법, 자주 나오는 문제 등에 대한 합격과 관련된 방법론을 설명하지 않으니 읽기 전에 참고 시험 결과필기 시험은 말 그대로 문제 은행식이라 어려움을 느끼지 못했다. 아마 책을 사지 않고 요약집이나 문제 은행만 풀었어도 붙을 수 있었을 듯 하다. 그러나 나는 설령 자격증 공부가 실무에 도움이 되지 않는 이론적인 지식등에 대한 문제가 출제된다 한들 그것또한 인사이트를 넓히는 방법이고 나름의 공부가 될 것이라 생각했기 때문에 책을 구매하고 정독하는 식으로 공부했다.물론 시험에 잘 출제되지 않을 거 같거나 흥미롭지 않은 내용이면 건너뛰기도 했다.실기시험은 크게 필기 시험때 공부했던 내용들(서브넷, 네트워크..
2025.02.05 -
[Javascript] 배열을 비동기 처리하기 위한 Promise.all()의 사용법
개요순회작업에서 비동기 작업을 처리하는 과정에서 더 깊게 이해하게 된 Promise.all의 동작과 Javascript의 병렬처리 여부에 관해 정리해보고자 한다. 상황여러 요소가 있고 각 요소들에 대해 비동기 처리를 하려면 어떻게 해야할까?MDN을 참고해보면 forEach는 기본적으로 콜백함수를 기다리지 않는다고 명세돼있듯이 forEach내부에서 await를 걸어도 forEach문은 끝나게 된다. 콜백함수로 전달받은 인수인 함수를 실행만 하는 것이다. 다음의 간단한 예제를 살펴보자 예제1. forEach의 콜백함수를 비동기(async)로 선언한 경우async function promise1() { return new Promise(resolve => { setTimeout(() => { ..
2025.01.23 -
[Android] SharedPreference commit(), apply()
개요앱에서 중요한 요청을 실패할 경우 EncryptedSharedPreference를 사용해 정보를 저장하고 있다가 재요청을 날려야 하는 부분이 있었다.내가 원하는 부분인 onResumse 단계에서는 asynchronously한 동작과 함께 매핑된 데이터와 관련된 요청을 잘 수행하였다.그러나 문제는 sharedPreference객체의 edit 메서드 직후에 앱 자체를 crash를 발생시킬 경우였다.분명 Editor 클래스의 .edit()은 수행됐으나 SharedPreference에 저장되지 않는 것에 의문이 들어 찾아보니 commit과 apply의 차이에서 발생하는 문제였다. 해결요약하자면 commit은 디스크에 동기적으로 File write를 수행하나 main thread에서 사용할 경우 UI 렌더링..
2025.01.22 -
[MySQL] AUTO_INCREMENT 값 순차적 일관성 검증
개요비즈니스 로직 작성 중 bulk insert 이후 모든 레코드에 대해 update를 수행해야 할 필요가 생겼다.개별 데이터에 대해 단일 쿼리문을 실행하면 로직 작성은 편하겠으나 성능이 떨어질 거 같았다. 따라서 Bulk Insert 이후에 id값을 활용하여 update를 해야하는데 여기서 삽입된 레코드들에 대한 Auto increment의 값이 과연 순차적임을 보장하는지에 대한 궁금증에서 비롯된 실험을 공유하고자 한다. 우선 필자의 MySQL은 별도의 튜닝없이 default setting만 가지며 엔진은 InnoDB 를 사용했음을 고려하고 봐줬으면 한다. MySQL의 Auto increment를 핸들링하는 세가지 방법https://dev.mysql.com/doc/refman/8.4/en/innodb..
2024.12.31