전체 글

배운 것에 대한 내 생각을 가지고 정리하자
· 도서
공유된 언어 (Ubiquitous Language)정의공유된 언어는 도메인 전문가와 개발자 모두가 이해할 수 있는 공통의 언어이는 도메인 모델링을 통해 형성되며, 코드와 문서를 모두 동일하게 사용한다중요성공유된 언어는 오해를 줄이고, 팀 내 의사소통을 명확히 하여 일괄된 도메인 지식을 유지하게 한다모든 팀원이 동일한 용어와 개념을 사용하면, 도메인 모델이 더욱 정확하고 명확하게 정의된다상황 예제온라인 쇼핑몰 개발팀에서 "고객"이라는 용어를 사용할 때, 팀 내 모든 사람이 "고객"이란 용어를 동일하게 이해해야 한다고객은 "제품을 구매하는 사람"으로 정의될 수 있으며, 이 정의는 코드, 문서, 회의에서 일관되게 사용된다@Entitypublic class Customer { @Id @Generate..
· 언어/GO
고루틴(goroutine)Go 언어에서 제공하는 경량 스레드동시성과 병행성을 쉽게 구현할 수 있도록 설계된 기능으로, Go 언어의 주요 특징 중 하나운영 체제의 스레드보다 훨씬 가볍고, 더 적은 메모리로 많은 고루틴을 실행할 수 있다.고루틴의 초기 스택 크기작은 초기 스택 크기: Go 1.4 이후의 고루틴은 약 2KB의 초기 스택 크기를 가지고 시작한다.스택 크기 조절: 고루틴이 더 많은 스택 공간을 필요로 하면 자동으로 스택이 확장되며, 필요하지 않으면 축소한다.사용자 수준 스케줄링M스케줄링 모델 : Go 런타임은 많은 수의 고루틴을 소수의 운영 체제 스레드에 매핑하는 M스케줄링 모델을 사용한다경량 컨텍스트 스위칭: 고루틴 간의 컨텍스트 스위칭은 운영 체제의 스레드 간 컨텍스트 스위칭보다 훨씬 가볍다...
· 언어/GO
Java와의 차이점Java의 참조 타입과 값 타입Java에는 원시 타입(primitive type)과 참조 타입(reference type) 존재모든 객체는 참조 타입이며, 메서드 호출 시 객체를 참조로 전달한다Java의 객체는 명시적으로 포인터를 사용할 필요가 없다. 모든 객체 변수는 자동으로 참조 타입으로 동작한다Go값 타입과 포인터 타입값 타입은 변수의 값을 직접 저장하고, 포인터 타입은 변수의 주소를 저장한다포인터 타입은 메모리의 특정 위치를 가리키며, 이를 통해 원본 데이터를 수정할 수 있다Go에서 포인터 타입의 사용 예원본 데이터 수정포인터를 사용하면 함수나 메서드에서 원본 데이터를 수정할 수 있다값 타입을 사용하면 데이터의 복사본을 전달하므로 원본 데이터는 수정되지 않는다메모리 사용 효율큰 ..
6월 5일에 AWS 자격 시험을 치르게 되었다. 백엔드 개발자로 3년 정도의 프로젝트를 진행하면서, 다양한 기술적인 스택을 쌓아왓지만 이를 증명해줄 공신력 있는 '무언가'가 없었다. 물론, 자격증이란게 백엔드 개발을 진행함에 있어서 크게 도움이 된다고는 못 느꼈고, 자격증이 있다고 해서 더 잘 아냐? 이것도 아니었다.자격증을 공부하게 된 계기는 그저 주변에서 많이 따고 있기 때문에 정보처리기사처럼 안 따면 손해인 자격증이라고 느꼈기 때문이다..그렇지만, 단순히 그런 이유는 아니었고 AWS를 조금 더 깊게 공부할 수 있는 계기가 될 수 있지 않을까 하는 생각도 가지고 있었기 때문이다. 총 공부 기간은 한 달? 정도 된듯하다. 처음에 같이 개발하시는 분이 연습문제 200개만 풀고 합격했다고 해서 이틀 동안 ..
쿠버네티스 - 컨테이너 환경에서 컨테이너 관리를 도와주는 도구 - 환경 구성 Docker Desktop 간단한 환경 구성을 위해 Docker Desktop 사용 버전 정보 Kubernetes Enable [Docker Desktop] -> [톱니바퀴] -> [Kubernetes] 메뉴 -> Enable Kubernetes 체크 후 Apply & restart CLI로 확인 Docker Image Build 사용하고 있는 Application 도커 정보가 있다면 Deployment 항목으로 이동한다 Application 예제 소스의 /deployment 폴더로 이동 Build 명령어 docker build -t [이미지 이름]:[태그 이름] . 이미지 확인 Deployment 특징 애플리케이션 배포 및 ..
[네트워크 연결] 1922번: 네트워크 연결 이 경우에 1-3, 2-3, 3-4, 4-5, 4-6을 연결하면 주어진 output이 나오게 된다. www.acmicpc.net 접근 방법 Union - Find 접근 두 노드 A와 B가 같은 부모 노드를 가지는지 검사(Find)하고 서로 다른 부모를 가질 경우, 두 노드를 합치고 부모 노드를 통일해준다(Union) 문제 접근 전체 간선을 담을 리스트 형식의 자료구조를 준비한다. 배열을 간선이 작은 순서대로 정렬한다 이유는 A와 B를 연결하는 여러 간선 중에 가장 작은 간선이 먼저 배치되어야하기 때문이다 간선 리스트 자료구조에 대해 분기문을 돌면서 간선의 두 컴퓨터 A와 B의 네트워크가 같은지 검사한다 (Find) 두 노드의 컴퓨터의 네트워크가 다르면, 네트..
문제 발생 다음과 같은 Deployment를 배포할 때, docker login을 못하여 ImagePullBackOff / ErrImagePull 에러 발생 apiVersion: apps/v1 kind: Deployment metadata: name: django-app spec: replicas: 2 selector: matchLabels: app: django-app template: metadata: labels: app: django-app spec: containers: - name: django-app image: ironjin92/my-registry:latest ports: - containerPort: 8000 imagePullSecrets: - name: my-registry 문제 원..
Kubernetest Secret 생성 생성 명령어 kubectl create secret generic error-repository \ --from-file=.dockerconfigjson=/Users/mac/.docker/config.json \ --type=kubernetes.io/dockerconfigjson 내가 만든 Secret이 잘 생성되었는지 확인 명령어 kubectl get secret --output=yaml 확인 apiVersion: v1 data: .dockerconfigjson: kind: Secret metadata: creationTimestamp: "2024-03-13T14:45:23Z" name: namespace: resourceVersion: "236385" uid: ..
iron_jin
學而不思則罔(학이불사즉망)