분류 전체보기
-
Go 함수 파라미터 유동적으로 사용하기Golang 2023. 9. 8. 08:40
1. 가변 파라미터(variable parameter) 함수의 마지막 파라미터를 `[]interface{}` 형태로 선언하여, 여러 개의 값을 전달할 수 있도록 한다. func sum(a, b int, c ...int) int { // c는 가변 파라미터 for _, v := range c { a += v } return a + b } // 사용 예시 fmt.Println(sum(1, 2, 3, 4, 5)) // 15 fmt.Println(sum(1, 2, 3)) // 6 2. 슬라이트 파라미터(slice) 함수의 마지막 파라미터를 `[]int` 형태로 선언하여, 여러 개의 값을 전달할 수 있도록 한다 func sum(a, b int, c []int) int { for _, v := range c { a..
-
도둑맞은 집중력 : 1장독서 2023. 8. 29. 23:26
너무 빠른 속도, 너무 잦은 멀티태스킹 인터넷이 생기기 훨씬 이전에는 집중력이 줄어드는 현상은 일어났습니다. 저자는 이러한 집중력의 발생 이유 정보를 전달하는 속도에서 찾았는데요. 아주 오래전에는 이웃 나라에서 어떤 일이 발생하면 그 정보가 전달 되기 까지 수 개월이 걸렸을 겁니다. 그런데 점차 기술이 발달하고 교통이 발달함에 따라 그 속도가 더욱 빨라지면서 정보의 속도가 빨라진겁니다. 그 과정에서 사람들의 집중력은 저하되어 왔다라고 주장합니다. 이러한 맥락에서 봤을 때 인터넷과 스마트폰의 발달이 현재 우리의 집중력을 가장 저하시키는 요인이 되겠죠. 다시 생각해보면, 내가 받아들일 수 있는 속도와 양을 넘어서는 정보가 온다면 온전히 받아들일 수 없는 건 당연한 얘기인거 같네요. 포털사이트와 SNS에서 마..
-
도둑맞은 집중력(Stolen Focus) 프롤로그독서 2023. 8. 27. 21:32
이 책은 한 블로그에서 처음 알게 되었습니다. 개발에 관련된 블로그들을 구독해서 보곤 하는데, 가끔 개발 외적인 글들도 올라옵니다. 이 블로그에서 책을 소개받고 지금 나에게 가장 필요한 책이겠구나 라는 생각이 들어 구매했습니다. 요즘 집중력이 많이 떨어지는 것을 느낍니다. 일을 할 때도 여러 화면을 동시에 띄워두고 이거 잠깐 하다가 저거 하고, 다시 넘어와서 이거 하고.. 흔히 말하는 몰입을 못하고 있습니다. 일 외적으로도 마찬가지구요. 저는 이러한 문제의 가장 큰 원인이 스마트폰 이라고 생각합니다. 집중과 이해가 필요 없는 짧고 가벼운 컨텐츠들을 (쇼츠나 릴스 같은) 쉴 새 없이 보다보니, 오랜 시간 집중하는 법을 잊어버리게 되는 것 같습니다. 지금 이 글을 적고 있는 와중에도 쇼츠로 손이 향하고 있네..
-
독서 카테고리 시작독서 2023. 8. 27. 18:10
책을 읽고 글로 남기는 버릇을 들여보고자, 독서 카테고리를 만들었습니다. 물론 이 블로그는 IT 지식과 기술에 관한 블로그지만 가끔씩 독후감을 올려보려 합니다. 얼마나 꾸준히 할지는 모르겠지만 그래도 시작은 해보려구요. 이 카테고리가 전혀 제가 하는 일(개발자)과 관련이 없지는 않다고 생각합니다. 우리는 원하는 정보를 얻기 위해 글을 읽고, 이해하고 적용해야 하잖아요? 그런 능력을 키워줄 수 있는것이 책을 읽고, 또 그에 관한 저 나름대로의 생각을 글로 쓰는 일이라고 생각해요. 물론 저는 책을 그렇게 많이 읽지도 않고, 제 생각이나 감정을 글로 쓰는 능력이 많이 부족해요. 그래서 글을 누군가에게 보여주는 일이 많이 부끄럽습니다. 그래도 다행히(?) 제 블로그는 인기가 아주 없기 때문에 아무런 부담없이 글..
-
Affinity : Pod를 원하는 Node에 띄우기Kubernetes 2023. 7. 22. 16:04
Affinity란 선호도란 뜻으로, Pod를 선호하는 Node에서 띄울 수 있게 하는 옵션이다. Affinity 종류 개요 nodeAffinity Pod를 배치할 때, 어떤 Node에 스케쥴링 할지 설정 한다. podAffinity Pod를 배치할 때, 실행 중인 Pod들 중에 선호하는 Pod를 찾아 해당 Pod와 동일한 Node로 배치하도록 설정한다. podAntiAffinity 실행 중인 Pod등 중에, 선호하지 않는 Pod가 실행중인 Node를 피해서 배치하도록 설정한다. nodeAffinity 옵션 **required**DuringScheduling**Ignored**DuringExecution 반드시 충족해야 하는 조건 (Hard) Label이 매칭 되는 Node에만 Pod 배포 가능 **pre..
-
Pod 에 root 권한 주는 법Kubernetes 2023. 7. 1. 17:04
Pod 에서 작업을 하다 보면 `Operation not permitted` 에러가 자주 발생 하는데 root 권한이 없어서 발생하는 것이다. securityContext: privileged: true pod를 올릴 때 securityContext 설정을 해주면 root 권한을 부여 받을 수 있다. 전체 pod yaml 예시 --- apiVersion: v1 kind: Pod metadata: name: csi-rbd-demo-pod spec: containers: - name: web-server image: nginx securityContext: privileged: true volumeMounts: - name: mypvc mountPath: /var/lib/www/html volumes: - ..
-
kubectl cp 명령어Kubernetes 2023. 7. 1. 17:02
kubectl cp 명령어는 local 과 Pod 간의 파일 복사를 수행한다. Pod 에서 Pod 로 복사는 불가능 하다. 명령어 형식 # kubectl cp : # kubectl cp : 예시 # kubectl cp localfile.txt :/data 혹은 # kubectl cp :/data/remotefile.txt /home/user 옵션 `kubectl cp` 명령어는 다음과 같은 옵션을 지원한다. `-c, --container`: 복사할 컨테이너 이름 지정 `--no-preserve`: 파일 소유권, 퍼미션 정보 등을 유지하지 않고 복사 `-p, --preserve`: 파일 소유권, 퍼미션 정보 등을 유지하고 복사 `-R, --recursive`: 디렉토리를 재귀적으로 복사 `-v, --ver..
-
Deployment와 StatefulSetKubernetes 2023. 7. 1. 16:55
대부분의 어플리케이션은 Deployment 또는 StatefulSet 으로 파드를 배포한다. StatefulSet은 stateful(상태가 있는) 서버 (정보 또는 데이터가 있는 서버) Deployment 는 stateless(상태가 없는) 서버 (정보 또는 데이터가 없는 서버) 쉽게 예를들면 콜센터의 상담원 A와 상담을 하던 중 전화가 끊겨서 다시 전화를 했더니, 상담원 B와 연결이 되었다. A가 본인 노트에만 상담내용을 기록했다면, B는 처음부터 다시 상담을 해야한다. 위의 예 처럼 각 파드가 데이터를 각자 가지고 있으면 다른 파드로 연결되었을 때 서비스에 문제가 발생한다. 하지만 독립적인 빌드/배포/스케일링을 위해서 컨테이너를 사용하는 건데 각 파드가 스테이트풀하게 고유의 데이터를 가지면 안된다. ..