분류 전체보기

·기타
### 1. 문제 **(과제, 프로젝트를 진행하면서 부딪혔던 기술적인 문제)**이번 주차를 지나며 겪었던 문제가 무엇이었나요?1)대기열 생성하면서 대기열 토큰 생성과정과 대기열 토큰 조회하는 과정을 나눠야하는 가에 대한 고민2) 유저와 대기열 토큰 테이블유저가 대기열 페이지를 나가면 대기열이 초기화되는것인가?그러면 대기열 토큰을 새롭게 만들어줘야하는 것이 아닌가?그래서 유저와 대기열 토큰 테이블을 비정규화 했다.### **2. 시도**문제를 해결하기 위해 어떤 시도를 하셨나요?1)처음에 대기열 토큰 생성과 토큰 조회 API를 나눴는데, 굳이 나눌필요가 없어보여서 API를 합쳤음2)멘토님께 물어보고 토큰이 여러개 생기면 나중에 삭제해줘야하는 번거로움이 생긴다는 말을 듣고... 역정규화 해버림### **3...
·기타
https://www.inflearn.com/conf/infcon-2024/share?year=2024&id=507904&hash=wlgns410%40bc427c2f&name=bugi 인프콘 2024 - MY페이지친구의 인프콘 MY페이지를 둘러보고 인프콘 참가신청 하세요!www.inflearn.com 제발....
·기타
1. 어려웠던 점1)레이어드 아키텍쳐 구조를 짜면서 repository와 dto를 어디다가 배치해야하는지 헷갈렸습니다.2)처음에 typeorm 0.2 0.3 헷갈려서 설정하는데 애먹었습니다. 2. 문제 해결을 위해 어떤 작업을 했는가?1) 멘토링 결과를 보기도 하고 블로깅을 하며 구조를 이해했습니다.2)공식문서 보고 0.3버전으로 마이그레이션하고 코드 수정했습니다. 3. 알게된 점레이어드 아키텍쳐는 단방향이라는 점을 이해했다면, 설계가 수월해지는 것 같았다. 4. 지난 목표 회고과제 제출을 했으나, 요구사항에 제대로 맞추지 못했던 점.쓸데없는 설정에 시간을 너무 많이 소비한 점날짜가 금요일 오후 10시까지로 착각해서 코드를 날림으로 작성한 점반성하게 되었습니다. 5. 다음 목표 설정과제 제출을 했으나 요..
docker-compose.test.yml 파일을 만드는데 위와 같은 에러가 떴다.  ctrl + , 으로 settings > preference > settings.json 파일을 열고 "yaml.schemas": { "https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json": [ "docker-compose.yml", "docker-compose.*.yml" ] } 위 코드를 붙여넣으면 된다.파일 확장자 형식을 *으로 뭐든지 받을 수 있게 수정했다.
·기타
1. 어려웠던 점데이터베이스 없이 동시성을 처리한다고 해서 mutex를 직접 구현할까 생각했는데 방법을 모르겠어서 패키지를 사용했습니다. 2. 문제 해결을 위해 어떤 작업을 했는가?async-mutex 패키지를 설치했습니다.처음에는 mutex.acquire() 메서드를 사용했습니다.근데, 명시적으로 lock을 해제해줬으나, 해당 패키지의 이해도 부족으로 동시성 테스트를 실패했습니다. 3. 문제를 어떻게 해결했는가?해당 패키지에 mutex.runExclusive() 메서드가 있었습니다.함수가 완료되면 자동으로 잠금이 해제되도록 하는 메서드라 사용하는 방법이 더 편리했고 동시성 테스트 통과를 성공하였습니다. 4. 알게된 점Mutex를 이용한 동시성 처리 방법에 대해 알게 되었습니다.데이터베이스에 너무 의존적..
·JaveScript/NodeJS
공유 자원(예: map, array 등)에 대해 비동기 코드가 동시에 접근할 때 동시성 문제가 발생할 수 있습니다.   자바스크립트는 단일 스레드 모델 자바스크립트는 기본적으로 단일 스레드에서 동작합니다. 이는 한 번에 하나의 작업만을 실행할 수 있다는 것을 의미합니다.비동기 작업(예: 파일 읽기, 네트워크 요청 등)은 이벤트 루프를 통해 처리되며, 이러한 작업이 완료되면 콜백 큐에 추가되어 메인 스레드가 사용 가능할 때 실행됩니다. Node.js는 개발자가 스레드 간의 동기화 문제를 걱정할 수 없게 설계가 되어있습니다.이러한 단일 스레드 모델은 여러 비동기 작업이 동시에 공유 자원에 접근할 때 동시성 문제를 일으킬 수 있습니다.예를 들어, 여러 비동기 함수가 동시에 배열에 값을 추가하거나 변경하려고 하..
·JaveScript/jest
jest 사용법  위처럼 함수 호출해서 인수 확인, 반환값 확인, 호출 순서 확인을  할 수 있다.mockImplementation으로 반환값을 지정할 수도 있다. 1. invocationCallOrder: mock 함수가 호출된 순서를 나타내는 배열입니다. - 모든 mock 함수 호출의 순서를 추적합니다.2. mockClear(): mock 함수의 호출 기록, 인수, 반환값, 인스턴스 등을 초기화합니다. - 예: mockFn.mockClear()3. mockReset(): mockClear()와 유사하지만, mock 함수의 초기 구현도 제거합니다. - 예: mockFn.mockReset()4. mockRestore(): mock 함수의 초기 상태로 복원합니다. jest.spyOn()으로 감시한 메서드에..
·기타
https://stackoverflow.com/questions/54235029/dbeaver-can-only-see-default-postgresql-database-in-connection DBeaver can only see default PostgreSQL database in connectionI use DBeaver v 5.2.5 on Windows and use it to connect to PostgreSQL databases. To create a connection, I must specify the database and I have no mean to see other databases on the same server. Astackoverflow.com 위의 말대로 'Show al..