오류상황Docker에 있는 Mysql 을 연결하려고 할 때 아래와 같은 메시지가 뜨며 Test connenction 실패 오류내용Unable to connect to host 127.0.0.1, or the request timed out.Be sure that the address is correct and that you have the necessary privileges, or try increasing the connection timeout (currently 10 seconds).MySQL said: Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/lib/plugin/caching_sha2_pa..
기존 프로젝트 문제점요구사항 정의 미흡구체적인 예약 대상 도메인 미지정세부 예약 프로세스 미정의제공할 서비스의 구체적 범위 미설정데이터베이스 구조 및 데이터 관련 문제실데이터 부재로 인한 기능 검증 불가MSA 환경에 부적합한 단일 MySQL 인스턴스 사용마이크로서비스 아키텍처(MSA) 구현 미흡서비스 간 독립성 부족API 게이트웨이를 비롯한 서비스가 Eureka 환경 내에서 돌지 않음실질적인 MSA 통신 구조 미구현(단일 DB)개별 서비스 구현 상의 문제User 서비스- 인증 서비스의 구체적 기능 부족Newsfeed 서비스- 실제 데이터 부재로 인한 기능 검증 불가Product 서비스- 동시성 처리에 대한 구체적 구현 및 검증 부족Order 서비스- 실제 결제 시스템 연동 부재- 테스트 데이터 부족으로 ..
트랜잭션이란데이터베이스 시스템에서 트랜잭션이란 하나의 기능을 수행하는 작업 단위입니다.ACID 원칙은 이러한 트랜잭션의 일관성과 무관성을 지켜주는 핵심 개념입니다.예를 들어, 상대방에게 이체를 하는 기능이라면 이런 과정을 거치게 됩니다.나의 계좌를 확인한다.계좌에서 잔액을 확인하여 출금한다.상대방의 계좌에 보낸 금액을 입금한다.이 과정들은 하나로 묶여서 '이체'라는 기능을 수행하고 있고, 이를 하나의 트랜잭션으로 볼 수 있습니다.하나의 기능을 위해 여러개의 연산 과정을 거치면서 여러 데이터 값을 변경하고 있으므로 정확한 처리가 필요합니다.여기서 ACID 원칙이 중요한 역할을 합니다.ACID 원칙ACID원칙은 다음 네가지 요소로 구성됩니다.Atomicity(원자성)Consistency(일관성)Isolati..
정보처리기사와 SQLD3번의 시험정보처리기사를 따는데 참 오래 걸렸다. 지난주 본 시험에서 드디어 합격하여 발표 대기 중이다. 작년 초에 기출을 여러 번 돌려 공부하여 필기는 금방 합격했지만, 곧이어 본 실기 시험에서는 처참하게 떨어졌었다.(첫 번째 시험)시험 개편 이후에 코딩문제가 절반가까이 나오는 게 트렌드인데 C언어, java, 파이썬, SQL 문제가 골고루 나와서 대비하기가 까다로웠다.더욱이 다소 지엽적(?)인 보안 쪽 용어 문제들이 나오기 때문에 비전공자가 쉽사리 붙긴 어려운 시험이다. (합격률을 보면...) 거기에 1년에 딱 세 번밖에 없는 유니크한 시험인 것도 크다.접수 날 시작하자마자 큐넷을 들어가면 동접자 4~5만명이 기다리고 있는 것을 볼 수 있다.큐넷에서 이를 해결하기 위해 뭔가 방안..
인터넷 프로토콜 스택(TCP/IP 레이어)인터넷 통신은 우편이나 택배 서비스 등으로 비유를 합니다.발신자(클라이언트)가 있고, 택배물건(패킷)을 통해 수신자(서버)에 전달하고, 물류센터들(노드)을 거쳐 수신자에게 전달되는 점에서 그렇습니다.그렇지만 일반 택배와 다른 점이 있다면 정해진 상자(패킷 크기)에 나누어서 보내야하고, 나누어서 보내기 때문에 조립순서가 필요합니다. 따라서 순서를 확인하기 위한 어떤 무엇인가가 있어야 할 것이고, 수신자 주소와 발신자 주소도 제대로 적혀있어야 합니다.인터넷 통신에서는 이렇게 순서를 확인하고, 실제로 발신자가 있는지 확인하는 프로토콜(언어)이 TCP(Transmission Control Protocol, 전송 제어 프로토콜)이고, 수신자와 발신자가 적혀있는 것이 IP(..
Git과 GitHub의 차이Git: 소스 코드 버전 관리 시스템GitHub: Git 저장소를 올려서 관리할 수 있는 웹서비스Git 초기 설정git config --global user.name "닉네임"git config --global user.email "이메일"위 설정은 전역 계정 설정입니다.특정 프로젝트에서 다른 계정을 사용하는 경우 해당 폴더에서--global을 제외한 명령어를 입력하면 해당 프로젝트에만 사용하는 계정 설정이 가능합니다.프로젝트를 처음 시작하는 경우git init // git 초기화git add . // 모든 파일을 추가git commit -m "Initial commit" // 커밋메시지 입력git remote add origin [GitHub 저장소 URL] // git..