최신글
더 보기-
소수 구하는 방법
소수는 1과 자기 자신 외에는 나누어 떨어지지 않는 숫자를 의미합니다. 소수는 암호학, 컴퓨터 과학, 수학 등에서 중요한 역할을 하며, 이를 구하는 다양한 알고리즘이 있습니다. 이 글에서는 소수를 구하는 세 가지 방법을 소개하고, 각각의 성능과 특징을 비교해 보겠습니다. 1. 기본 방법 (완전 탐색) 가장 직관적인 방법으로, 각 숫자에 대해 2부터 해당 숫자까지의 모든 수로 나누어 떨어지는지 확인하는 방식입니다. 이 방식은 이해하기 쉽지만, 숫자가 커질수록 비효율적입니다. public static void method1() { for (int i = 2; i 설명: • 2부터 1000까지의 숫자 중 소수를 출력합니다. • 각 숫자 i에 대해 2부터 i까지 나누어 떨어지는지 확인하고, 나누어 떨어..
2024.09.21 20:32 -
[리눅스] 리눅스 기본 명령어 간단 정리
리눅스 기본 명령어 간단 정리 명령어 풀 네임 간단 설명 pwd print working directory 현재 사용자가 어느 위치에 있는지 경로를 출력 ls list segments 현재 디렉터리 내의 파일과 디렉터리를 목록을 출력 cd change directory 현재 디렉터리에서 다른 디렉터리로 이동 mkdir make directory 디렉터리 생성 cp copy 디렉터리 또는 파일 복사 mv move 디렉터리 또는 파일 이동 cat concatenate 파일을 연결하고 출력 touch - 파일의 날짜와 시간을 수정, 빈 파일 생성 echo - 입력받은 문자열을 출력 nc netcat TCP 또는 UDP 프로토콜을 사용하는 프로그램 which - 실행 파일의 위치를 식별 pwd pwd는 prin..
2023.07.23 16:41 -
[하이퍼레저 패브릭] 하이퍼레저 패브릭 구성요소(Ledger)
하이퍼레저 패브릭의 원장은 두 가지로 구분할 수 있습니다. 현재 상태를 나타내는 'World State' 원장의 생성 시점부터 현재까지 기록을 저장하는 'Blockchain' World State는 데이터의 기록, 수정, 읽기 등이 빈번하게 발생하기 때문에 데이터베이스로 구축되어 있습니다. 블록체인 데이터 요청이 거의 없고 append-only 방식의 저장이 목적이기 때문에 파일 형태로 저장되어 있습니다. World State에 저장된 데이터는 합의 과정에 의해 블록체인에 포함되기 전까지 체인코드를 통해 조회/변경/삭제가 가능합니다. 합의에 의해 결정된 블록체인은 절대 수정할 수 없습니다. ▶ World State World State는 두 가지 중 하나를 선택해서 데이터베이스를 구축할 수 있습니다. K..
2023.01.09 22:22 -
[하이퍼레저 패브릭] 하이퍼레저 패브릭 구성요소(DApp)
▶ DApp 모바일 환경에서 사용되는 애플리케이션을 모바일 애플리케이션, 웹에서 사용되는 애플리케이션을 웹 애플리케이션이라고 부르는 것 처럼 분산된 환경(탈중화된 환경)에서 사용되는 애플리케이션을 DApp(Decentralized Application)이라 통칭하는 단어입니다. DApp을 통해 블록체인 읽기 과정 1. DApp은 User 인증서를 사용하여 인증 후 peer 연결 2. DApp은 peer에 설치된 체인코드의 읽기 Query 함수를 호출 3. 체인코드는 Query 함수를 실행하여 로컬 저장소에 저장되어 있는 원장 데이터를 반환 DApp을 통해 블록체인 업데이트 과정 1. DApp은 User 인증서를 사용하여 인증 후 peer 연결 2. DApp은 peer에 설치된 체인코드의 Update 함수..
2023.01.02 22:19 -
[하이퍼레저 패브릭] 하이퍼레저 패브릭 구성요소(peer, chaincode, system chaincode)
▶ peer 블록체인을 구성하는 네트워크 노드 중 하나로 분산원장과 체인코드(스마트 컨트랙트)를 관리하는 역할을 수행합니다. 분산원장과 체인코드는 peer에 저장되고 설치되기 때문에 참여자들은 peer를 통해서만 분산원장과 체인코드에 접근할 수 있습니다. 필요에 따라서는 peer는 복수 개의 분산원장과 체인코드를 가질 수 있습니다. orderer 노드와 함께 합의 과정을 진행하여 peer는 분산원장을 업데이트 할 수 있습니다. ▶ chaincode 하이퍼레저 패브릭에서는 분산원장에 데이터를 기록하거나 읽기 위해서는 체인코드(chaincode)가 필요한데, 주로 비즈니스 모델에 맞는 분산 애플리케이션(DApp)과 함께 개발되어 사용됩니다. ▶ system chaincode 하이퍼레저 패브릭의 시스템 레벨에..
2022.12.19 21:57 -
[하이퍼레저 패브릭] 하이퍼레저 패브릭(Hyperledger Fabric) 소개
1. 하이퍼레저 프로젝트란? 리눅스 재단에서 기업용 블록체인을 개발하기 위해 오픈 소스 형태의 프로젝트 2. 하이퍼레저 프레임워크 소개 HYPERLEDGER FABRIC (하이퍼레저 패브릭) HYPERLEDGER SAWTOOTH (하이퍼레저 소투스) HYPERLEDGER IROHA (하이퍼레저 이로하) HYPERLEDGER INDY (하이퍼레저 인디) HYPERLEDGER INDY (하이퍼레저 버로우) 3. 하이퍼레저 관련 툴 HYPERLEDGER CALIPER (하이퍼레저 캘리퍼): 블록체인 성능 측정을 위한 툴 HYPERLEDGER CELLO (하이퍼레저 첼로): 생명주기를 관리하고 대시보드를 통한 시스템 상태 확인과 자원 확장 등의 기능을 제공 HYPERLEDGER COMPOSER (하이퍼레저 컴포..
2022.12.08 21:30 -
[Spring Boot/스프링부트] IntelliJ JUnit Test시 No tests found for given includes: [...](--tests filter)
IntelliJ JUnit Test시 'No tests found for given includes: [...](--tests filter)'의 에러가 발생하였습니다. 이것 저것 시도를 하여 해결하였으며, 두 개의 방법으로 해결했습니다. 1. Gradle Build 시 해결방법 프로젝트 내 build.gradle 파일을 열어 최하단에 tasks.named('test') 인라인 블록에 useJUnitPlatform()이 없거나 주석 처리 되어있으면 넣어주시면 됩니다. ※ JUnit Test 셋팅이 되어있다는 가정하에 입니다. tasks.named('test') { useJUnitPlatform() } 2. IntelliJ 셋팅 변경 위의 방법으로 해결이 안된다면 IntelliJ 셋팅을 변경해봐야 합니다. ..
2022.06.07 12:18 -
[테라폼/Terraform] 테라폼 모듈이란?
▶ 모듈이란? 테라폼으로 인프라의 규모가 커질경우 하나의 파일에 모든것을 정의할 경우 의도치않게 다른 부분에 영향을 끼칠 수 있고 환경별 같은 리소스의 코드가 중복되어 쌓일수가 있다. 이러한 단점을 해결하기 위해 테라폼은 모듈이란 요소를 제공해준다. 모듈은 관련있는 요소끼리 모아 하나의 패키지를 만든다. 예를 들어 VPC 모듈의 경우 서브넷, netmask 등의 리소스를 하나의 패키징을 한다. - 모듈의 장점 1. 캡슐화 : 서로 관련있는 요소들 끼리만 캡슐화를 하여 의도치 않은 문제 발생을 예방할 수 있다. 2. 재사용성 : 모듈을 사용하여 리소스를 정의하면 다른 환경에서도 해당 리소스를 쉽게 재사용할 수 있다. 3. 일관성 : 매번 새로 작성하게 되면 사람에 따라 리소스의 옵션이 빠지는 부분이 생길수..
2022.06.06 16:45 -
[테라폼/Terraform]테라폼 상태 관리/terraform_remote_state 데이터 소스
▶ terraform_remote_state 데이터 소스 terrraform_remote_state란 원격으로 관리하는 tfstate를 데이터소스로 가져와서 참조하는 역할을 합니다. terrraform_remote_state에 의해 반환된 데이터는 읽기 전용으로 수정이 불가합니다. - terraform remote state 사용 문법 data.terraform_remote_state..outputs. - 사용 예시 data "terraform_remote_state" "db" { backend = "gcs" config = { bucket = "terraform-up-and-running-state-0d9027ef04cb8b9b" prefix = "terraform/stage/data-stores/my..
2022.05.31 17:15 -
[쿠버네티스] Pod 관련 명령어 모아보기
명령어 설명 kubectl get pods 현재 네임스페이스의 pods 리스트 kubectl get pods -all-namespaces 모든 네임스페이드 pods 리스트 kubectl get pods -o wide 현재 네임스페이스의 pods 상세 정보 kubectl get -n kube-system pods -a kube-system 특정 네임스페이스 pods kubectl get pod test-pod -o yaml test-pod의 yaml 출력 kubectl describe pod/ 특정 pod 상세 정보 kubectl get pods --show-labels 모든 pods의 라벨 정보 리스트 kubectl get pods -n --watch kubectl get pods -n -w 특정 네임스..
2022.05.31 17:05