Geth 설치
블록체인과 스마트 컨트랙트 블록체인 데이터를 안전하게 저장하기 위한 자료구조 데이터를 블록에 저장하고, 그 블록들이 연결된 구조를 블록체인이라고 한다. 스마트 컨트랙트 블록체인에 넣어서 실행시킬 수 있는 프로그램 블록체인에 저장되어 값이나 프로그램이 절대로 위/변조되지 않는다. ‘무결성’을 보장함. ...
블록체인과 스마트 컨트랙트 블록체인 데이터를 안전하게 저장하기 위한 자료구조 데이터를 블록에 저장하고, 그 블록들이 연결된 구조를 블록체인이라고 한다. 스마트 컨트랙트 블록체인에 넣어서 실행시킬 수 있는 프로그램 블록체인에 저장되어 값이나 프로그램이 절대로 위/변조되지 않는다. ‘무결성’을 보장함. ...
이더리움 지갑으로 이더리움 플랫폼에 접속하기 미스트 : 이더리움 디앱을 위한 브라우저 이더리움 지갑 : 특정 버전의 미스트를 기반으로 하는 지갑 디앱 이더리움 지갑의 주 목적? 이더를 보관하거나 보내고 받기 위함. 이더리움 지갑 시작하기 먼저, github.com/ethereum/mist/releases/tag/v0.11.1 에 접속...
디앱 자세히 살펴보기 이더리움 노드 이더리움 P2P 네트워크 이더리움 클라이언트 Ethereum client : 런타임 시 작동함. 이더리움 가상머신 Ethereum Virtual Machine (EVM) : 솔리디티나 EVM 바이트코드로 작성된 스마트 컨트랙트를 실행할 수 있다. 메모리 풀 memory po...
디앱이란? 구조적 관점: 디앱 해부하기 클라이언트 측은 기존 중앙화 웹앱과 동일 서버측 : P2P 네트워크 탈중앙화 서버는 같은 코드를 실행하고 같은 블록체인 데이터베이스를 갖는 서버의 P2P 네트워크이다. 주요 특징 마스터 노드가 없어 중앙에서 조정하지 않음. 각 노드가 피어 노드(간략히 피어)라고 하는 다른 노드 간에 직접...
스레드 기본 정보 public class ThreadInfoMain { public static void main(String[] args) { Thread mainThread = Thread.currentThread(); log("mainThread = " + mainThread); log("mai...
스레드 생성 방법 스레드를 생성하는 방법에는 두가지가 존재한다. Thread를 상속받는 방법 Runnable 인터페이스를 구현하는 방법 스레드 생성 - Thread 상속 public class HelloThread extends Thread { @Override public void run() { Sys...
메서드 영역 메서드 영역은 프로그램을 실행하는데 필요한 공통 데이터를 관리한다. 이 영역은 프로그램의 모든 영역에서 공유한다. 클래스 정보 : 클래스의 실행 코드(바이트 코드), 필드, 메서드와 생성자 코드 등 모든 실행 코드 static 영역 : static 변수 보관 런타임 상수 풀 : 프로그램을 실행하는데 필요한 공통 리터럴 상...
멀티태스킹과 멀티프로세싱 멀티태스킹 CPU 코어가 한개라고 가정해보자. 시분할(Time Sharing, 시간 공유) 기법 프로그램A를 먼저 수행하고, 프로그램B를 수행하는 것이 아닌 각 프로그램의 실행 시간을 분할해서 마치 동시에 실행되는 것 처럼 하는 기법이다. ⇒ 현대의 CPU는 초당 수십업번 이상의 연산을 수행할 수 있기 때문!...
오류 발생 상황 수상한 점 포착은 배포를 위해 docker hub를 사용하고 있습니다! private registry에 빌드 후 푸시한 이미지를 각각 개발 서버와 운영 서버에서 pull을 받아와서 사용하고 있는데요! 앱을 이전하고 애플로그인 설정 변경을 위해 서버에 새로운 키 값을 넣어주고, 이를 운영 서버에 반영하고자 하였습니다. 하지만 이상...
🧐 들어가며 최근 차단 쿼리를 in (서브쿼리) 방식에서 left join을 사용한 방식으로 개선하고 있습니다. 물론 쿼리 가독성을 위해 querydsl도 도입하며 다양한 방식을 배울 수도 있었는데요! 과연 제가 개선한 쿼리가 이전 쿼리보다 얼마나 나아졌을까에 대한 궁금증이 생겼습니다.😆 ⚒️ 테스팅 시나리오 정리 환경 클라우드 환경에서 테스팅도...