[Go] 4. Golang 데이터 타입 & 연산자 이해하기
·
golang
개요 이번 포스팅에서는 golang에 데이터 타입과 연산자의 대해 다루고, 데이터 타입과 연산자에는 어떤 종류가 있고 어떻게 사용하는지 알아볼 예정입니다. 1. 데이터 타입 1-1. bool 타입 bool 타입은 논리적인 값으로, True나 False 중 하나만을 가질 수 있습니다. 조건문이나 논리 연산에서 주로 사용합니다. var valueA bool = true var valueB bool = false 1-2. 문자열 타입 문자열 타입은 텍스트를 나타내며, golang은 큰따옴표(" ") 또는 역따옴표(` `)로 문자열을 표현합니다. var text string = "Hello, World!" var name string = `Guny Note` 1-3. 정수형 타입 정수형 타입은 정수 값을 나타냅..
[Go] 3. Golang 변수와 상수 활용하기
·
golang
개요 이번 포스팅에서는 golang에서 기본 개념 중 하나인 변수와 상수가 무엇인지, 또 그 예제들을 같이 살펴보면서 가장 기본이 되는 부분을 집고 넘어가겠습니다. 1. 변수 1-1. 변수란 무엇일까요? 변수는 데이터를 저장할 수 있는 메모리 공간을 의미합니다. Go에서 변수는 var 키워드를 사용하여 선언합니다. 변수의 타입은 선언 시 명시하거나, 컴파일러가 자동으로 추론하도록 할 수 있습니다. 1-2. 변수 선언 예시 아래와 같이 타입을 명시 할 수도 있고 그냥 선언 할 수도 있습니다. var x int = 10 var y = 20 2. 상수 2-1. 상수란 무엇일까요? 상수는 한 번 값을 할당하면 그 값을 변경할 수 없는 변수입니다. 상수는 const 키워드를 사용하여 선언합니다. 상수는 애플리케이..
[Go] 2. go mod init 패키지 관리 및 활용하기
·
golang
개요 저번 포스팅에서는 Golang을 설치하여 VSCode에서 실행까지 해봤습니다. 이번 포스팅에서는 패키지를 받는 방법과 패키지를 활용한 간단한 예제 코드를 보도록 하겠습니다. Golang에서 패키지란? Go 언어에서 패키지는 관련된 Go 소스 파일들의 모음으로, 코드 재사용성과 관리를 용이하게 합니다. 각 파일은 package 키워드로 시작하며, 패키지는 함수, 타입, 변수 및 상수를 그룹화합니다. 다른 패키지의 기능을 사용하기 위해 import 문을 사용하며, 대문자로 시작하는 이름은 외부에서 접근 가능한 공개 멤버를, 소문자로 시작하는 이름은 해당 패키지 내에서만 접근 가능한 비공개 멤버를 나타냅니다. Go에서 패키지는 일반적으로 간결하고 명확한 이름을 가지며, 각 패키지는 해당하는 디렉토리 내에..
[K0s] K8s 설치와 IPVS VIP 구현 가이드
·
server
개요 K0s를 사용하여 Kubernetes를 설치하고, 기본적인 kube-router 설정을 통해 IPVS를 이용하여 가상 IP를 구현하는 방법에 대해 알아보겠습니다. K0s는 경량화된 Kubernetes 배포 도구로, 손쉽게 클러스터를 구성하고 관리할 수 있습니다. IPVS를 이용한 VIP 구현은 클러스터 내 로드 밸런싱을 효율적으로 처리할 수 있게 해줍니다. 이 글을 통해 K0s와 IPVS를 활용하여 안정적이고 고성능의 Kubernetes 클러스터를 구축할 수 있는 방법을 살펴보겠습니다. 1. 클러스터의 기본 구조와 중요성 K0s를 사용하여 Kubernetes를 설치하고, IPVS를 이용한 가상 IP 구현에 대해 살펴보기 전에, Kubernetes 클러스터를 구성하는 두 가지 주요 서버 유형에 대해 ..
[Go] 1. Golang Mac VSCode 개발환경 세팅하기
·
golang
개요 이번 포스팅에서는 VSCode를 사용하여 Golang 개발 환경을 구성하는 방법에 대해 알아보겠습니다. 본 편은 Mac을 기준으로 작성되었으며 혹시나 잘못된 부분이 있다면 피드백 부탁드립니다. 목차 1. Golang 설치 2. 환경 변수 설정 3. Hello World! 실행하기 1. Golang 설치 1-1. 공식 사이트에서 파일 받기 Golang 공식 사이트에 접속하여 Download를 클릭하여 파일을 받아줍니다. 1-2. 설치 파일 실행 다운로드한 .pkg 파일을 더블 클릭하여 설치 프로세스를 시작합니다. 기본 설정으로 동의 및 설치를 진행합니다. 2. 환경 변수 설정 2-1. 경로 추가 터미널을 열고 사용자의 홈 디렉토리에 있는 프로필 파일을 편집합니다. 일반적으로 이 파일은 ~/.bash_..
[Python] OpenAI API 활용해 ChatGPT 구현하기
·
python
OpenAI API를 사용하는 방법 중 특정 URL로 요청을 보내도 되지만 python에서는 openai 라는 라이브러리가 있어 이를 활용하기로 했습니다. openai 라이브러리를 사용해서 ChatGPT에게 질문을 보내려면 API key가 필요하기 때문에 발급을 먼저 해주겠습니다. https://platform.openai.com/ openai 공식 사이트에 들어가 로그인 후 API keys 탭으로 들어갑니다. Create new secret key를 클릭하여 새로운 key를 발급해줍니다. 생성을 하게되면 key값이 나오게 되고 복사를 할 수 있는 버튼이 나오는데 그 시점에 복사를 하여 따로 저장을 해두셔야 합니다. Done을 누르게 되면 내 key값의 일부가 가려져 알 수가 없게 되기 때문에 따로 메모..
카페24 SSD 가상 서버 구매 후 접속하기
·
server
개발자라면 자기만의 서비스를 만들어 돈버는 상상을 한번쯤은 해봤을거라고 생각합니다. 그 서비스를 만들기 위해선 서비스를 배포할 서버가 있어야 합니다. 저는 가장 대중적인 카페24를 선택하였습니다. 처음 홈페이지에 접속하고 쭉 둘러봤는데 헷갈리는 부분이 있었습니다. 웹 호스팅 이라는 것과 가상서버 호스팅 이라는게 있었습니다. 웹 호스팅 웹 호스팅은 일반적으로 웹 사이트를 공유 호스팅 서버에서 호스팅하는 방식입니다. 여러 웹 사이트가 동일한 서버 자원을 공유하며 운영됩니다. 이것은 주로 소규모 웹 사이트나 블로그, 온라인 포트폴리오, 소상공인 웹 사이트 등을 호스팅하는 데 사용됩니다. 서버 관리, 하드웨어 및 네트워크 설정은 호스팅 공급업체에 의해 관리됩니다. 개발자는 대개 웹 호스팅 패널을 통해 웹 사이트..
[Go] Go Fiber / SMTP / Google Email 전송 API
·
golang
이메일 전송하는 상황이 많을거 같아서 미리 만들어 두기로 했다.SMTP를 사용하여 구글 이메일을 보내는 API를 만들어 보았다. Githubhttps://github.com/kimguny/send-email 웹 프레임워크go fiber go packagesnet/smtp 1. app 계정 생성보안 정책이 바뀌면서 app 계정을 생성해줘야 한다. 구글 설정 -> 보안 -> 2단계 인증 -> 앱 비밀번호앱 비밀번호를 생성한 뒤 나오는 비밀번호를 따로 저장해 둔다.2. go 환경변수 설정go 프로젝트를 생성한 뒤 .env 파일을 생성해준다. .env.exampleSMTP_USERNAME=""SMTP_PASSWORD=""SMTP_FROM=""깃허브에 올릴때는 보안 때문에 .env 파일은 gitignore로 커밋..