GitLab CI/CD 시리즈 #2: Variables와 Secrets 관리
GitLab CI/CD의 변수 유형과 우선순위, Protected/Masked 변수, 그리고 Vault 연동까지 시크릿 관리 전략을 다룹니다.
GitLab CI/CD의 변수 유형과 우선순위, Protected/Masked 변수, 그리고 Vault 연동까지 시크릿 관리 전략을 다룹니다.
시리즈 목차 블록체인 인덱서란? 인덱서 아키텍처 Deep Dive 이력 테이블 vs 스냅샷 테이블 Rust로 인덱서 SDK 만들기
시리즈 목차 블록체인 인덱서란? 인덱서 아키텍처 Deep Dive 이력 테이블 vs 스냅샷 테이블 Rust로 인덱서 SDK 만들기
시리즈 목차 블록체인 인덱서란? 인덱서 아키텍처 Deep Dive 이력 테이블 vs 스냅샷 테이블 **Rust로 인덱서 SDK 만들기** (현재 글) [Diesel ORM 실전 활용](/blog/blockchain/i
시리즈 목차 블록체인 인덱서란? 인덱서 아키텍처 Deep Dive **이력 테이블 vs 스냅샷 테이블** (현재 글) Rust로 인덱서 SDK 만들기 [Diesel ORM 실전 활용](/blog/blockchain/indexer/
시리즈 목차 블록체인 인덱서란? **인덱서 아키텍처 Deep Dive** (현재 글) 이력 테이블 vs 스냅샷 테이블 Rust로 인덱서 SDK 만들기 [Diesel ORM 실전 활용](/blog/blockchain/index
시리즈 목차 **블록체인 인덱서란?** (현재 글) 인덱서 아키텍처 Deep Dive 이력 테이블 vs 스냅샷 테이블 Rust로 인덱서 SDK 만들기 [Diesel ORM 실전 활용](/blog/blockchain/index
GitOps에서 CI와 CD의 분리, Image Updater, Progressive Delivery(Argo Rollouts, Flagger)를 다루는 시리즈 완결편입니다.
GitOps에서 Secrets를 안전하게 관리하는 방법. Sealed Secrets, External Secrets Operator, SOPS의 동작 원리와 선택 기준을 다룹니다.
Kustomize의 Base/Overlays 패턴, Helm의 values 관리 전략, 그리고 언제 무엇을 선택해야 하는지 실무 관점에서 다룹니다.
Flux의 GitOps Toolkit 아키텍처, Source/Kustomize/Helm Controller의 동작 원리, 그리고 ArgoCD와의 상세 비교를 다룹니다.
ArgoCD의 내부 아키텍처, Application CRD 상세 분석, Sync 전략, 그리고 ApplicationSet으로 멀티 클러스터를 관리하는 방법을 깊이 있게 다룹니다.
GitOps의 4가지 핵심 원칙, Push vs Pull 배포 모델의 차이, 그리고 Kubernetes Controller 패턴과의 연결고리를 깊이 있게 이해합니다.
Pipeline Triggers, Webhooks, API를 통한 외부 시스템 연동, ChatOps, 그리고 GitOps 도구와의 통합을 다룹니다.
rules 조건 분기, needs를 활용한 DAG 실행, Job 템플릿과 extends, !reference 태그까지 고급 Job 제어 기법을 다룹니다.
복잡한 파이프라인을 효율적으로 관리하기 위한 Parent-Child Pipeline, Multi-Project Pipeline, 동적 파이프라인 생성을 다룹니다.
GitLab Runner의 아키텍처와 Executor 유형, Docker-in-Docker(DinD) 설정, Kubernetes Executor 구성을 다룹니다.
GitLab CI/CD의 핵심인 .gitlab-ci.yml 파일 구조, Stages와 Jobs의 관계, Pipeline 실행 흐름을 체계적으로 이해합니다.
RBAC, NetworkPolicy, Pod Security Standards(PSS)까지 Kubernetes 보안의 모든 것을 깊이 있게 다룹니다.
HPA v2, VPA, Cluster Autoscaler, Karpenter, KEDA까지 Kubernetes 오토스케일링의 모든 것을 깊이 있게 다룹니다.
Istio의 VirtualService, DestinationRule, Gateway를 깊이 있게 다루며, 와일드카드 서브도메인 + AWS Route 53/ACM 연동까지 실전 패턴을 알아봅니다.
ConfigMap과 Secrets의 내부 동작부터 AWS Secrets Manager CSI Driver 통합까지, 프로덕션 환경의 설정 관리 전략을 깊이 있게 다룹니다.
ClusterIP, NodePort, LoadBalancer의 내부 동작 원리를 kube-proxy(iptables/IPVS), AWS ALB/NLB 통합과 함께 깊이 있게 이해합니다.
Deployment, StatefulSet, DaemonSet, CronJob의 내부 동작 원리를 깊이 있게 이해합니다. Reconciliation Loop, 컨트롤러 패턴, 그리고 실무 트러블슈팅까지.
Python asyncio를 활용한 비동기 프로그래밍의 핵심 개념과 실전 동시성 패턴을 알아봅니다.
EXPLAIN ANALYZE를 활용한 쿼리 분석과 인덱스 전략으로 PostgreSQL 성능을 극대화하는 방법을 알아봅니다.
데이터 파이프라인의 품질을 보장하는 방법을 배웁니다. dbt 테스트, Great Expectations, 데이터 계보, 관측성까지.
분석용 데이터 모델링의 핵심을 배웁니다. Star Schema, Fact/Dimension 테이블, SCD Type 2 패턴을 Delta Lake MERGE로 구현합니다.
데이터 저장소 아키텍처의 종류와 선택 기준을 배웁니다. Delta Lake의 ACID, Time Travel, Schema Evolution을 심층 분석합니다.
Spark Structured Streaming으로 실시간 데이터 파이프라인을 구축합니다. Kafka 연동, Watermark, Window 연산, 체크포인팅까지.
Kafka의 핵심 개념을 배웁니다. Redis Streams와 비교하며 Topic, Partition, Consumer Group, Exactly-Once Semantics를 이해합니다.
프로덕션에서 Airflow를 운영하는 방법을 배웁니다. DAG 모듈화, 동적 Task 생성, 테스트, 에러 처리, 모니터링까지.
왜 cron으로는 부족할까요? Airflow의 핵심 개념인 DAG, Operator, Task를 이해하고 TaskFlow API로 현대적인 워크플로우를 작성하는 법을 배웁니다.
실무에서 자주 사용하는 PySpark 패턴을 배웁니다. DataFrame 연산, UDF 최적화, 조인 전략, 캐싱, 그리고 피해야 할 안티패턴까지.
Spark의 실행 모델을 이해합니다. Job, Stage, Task 계층, Shuffle의 비용, 파티셔닝 전략, 그리고 Spark UI를 읽는 법까지.
분산 처리의 핵심 개념과 Spark의 추상화 계층을 이해합니다. Goroutine, ThreadPoolExecutor와 비교하며 Spark가 해결하는 문제를 파악합니다.
데이터 파이프라인의 전체 구조를 조망합니다. ETL vs ELT, 배치 vs 스트리밍, Lambda vs Kappa 아키텍처, 그리고 Modern Data Stack까지.
왜 백엔드 개발자가 데이터 엔지니어링을 알아야 할까요? OLTP의 한계에서 시작하는 데이터 파이프라인의 세계로 안내합니다.
'Accept interfaces, return structs' 원칙과 포인터 vs 값 수신자 선택 기준을 알아봅니다.
errors.Is, errors.As, 커스텀 에러 타입, 스택 트레이스를 활용한 Go의 효과적인 에러 핸들링 전략을 알아봅니다.
멀티스테이지 빌드로 Docker 이미지 크기를 줄이고, 빌드 속도와 보안을 개선하는 실전 전략을 알아봅니다.
LangChain과 LangGraph의 최신 API를 활용한 LLM 애플리케이션 및 에이전트 개발 실전 가이드입니다.
복잡한 Go 명령어들을 Makefile로 추상화하여 팀 전체의 개발 경험을 향상시킵니다. Façade 패턴의 CLI 버전입니다.
Micrometer, Winston에 익숙한 개발자를 위한 Go Observability 가이드. Grafana 대시보드와 Alert 연동까지 다룹니다.
JUnit, Jest에 익숙한 개발자를 위한 Go 테스트 생태계 가이드. Mock, 통합 테스트, BDD 스타일을 다룹니다.
Resilience4j, Polly에 익숙한 개발자를 위한 Go Resilience 패턴 가이드. Circuit Breaker, Retry, Rate Limiting을 올바르게 조합합니다.
Spring의 @Transactional처럼 편리하게 트랜잭션을 관리하는 Go 패턴을 다룹니다. 어노테이션 하나로 해결되던 것을 Go에서 어떻게 구현할까요?
ExecutorService, Worker Threads에 익숙한 개발자를 위한 Go 동시성 모델 가이드. Goroutine의 메모리 특성과 안전한 패턴을 다룹니다.
Java의 ThreadLocal, Node.js의 AsyncLocalStorage에 익숙한 개발자를 위한 Go Context 패턴 가이드입니다.
Spring MVC의 Filter/Interceptor, Express의 Middleware에 익숙한 개발자를 위한 Echo 미들웨어 설계 가이드입니다.
Kubernetes, Docker CLI, Prometheus, Hugo의 소스 코드를 분석하여 도출한 Go 프로젝트 구조 베스트 프랙티스를 소개합니다.
Turf.js를 사용하여 멀티폴리곤의 합집합, 차집합, 교집합 연산을 수행하는 방법을 알아봅니다.
Mapbox GL JS v3로 Earth2 스타일 격자 그리드와 네이버부동산 스타일 영역 레이어를 구현하는 방법을 알아봅니다.
Redis Streams와 Consumer Group을 활용하여 At-least-once 전달과 Dead Letter 처리를 지원하는 비동기 감사 파이프라인을 구축하는 방법을 알아봅니다.
PostGIS에서 GeoJSON 형식의 공간 데이터를 저장, 변환, 조회하는 핵심 함수와 인덱싱 전략을 알아봅니다.
MongoDB의 기본 스토리지 엔진인 WiredTiger의 아키텍처, 캐시, 체크포인트, Lock-Free 알고리즘까지 깊이 있게 알아봅니다.
MongoDB 샤딩의 개념부터 샤드 키 선택, 클러스터 구성까지 실전 가이드를 제공합니다.
go-ethereum의 Merkle Trie 구현을 활용하여 대량 데이터의 무결성을 효율적으로 검증하는 방법을 알아봅니다.
Go의 Functional Options 패턴을 활용하여 필수 파라미터와 선택적 설정을 명확히 분리하고, 합리적인 기본값 위에 유연한 커스터마이징을 제공하는 방법을 알아봅니다.
데이터 불변성과 완전한 감사 추적을 보장하는 Append-Only 문서 버저닝 아키텍처의 설계 원칙과 Go 구현 방법을 알아봅니다.
하나의 Proto 정의로 gRPC와 RESTful HTTP API를 동시에 제공하는 gRPC-Gateway 구현 방법을 알아봅니다.
Google의 Wire를 사용하여 Go 애플리케이션에서 컴파일 타임 의존성 주입을 구현하는 방법을 알아봅니다.
Go의 내장 프로파일링 도구 pprof를 활용하여 CPU, 메모리, 고루틴 병목을 분석하는 방법을 알아봅니다.
Ginkgo BDD 프레임워크와 Testcontainers를 결합하여 실제 데이터베이스를 사용하는 신뢰성 높은 통합 테스트를 구축하는 방법을 알아봅니다.
Go의 가비지 컬렉터 동작 원리와 프로덕션 환경에서의 GC 튜닝 경험을 공유합니다.
Buf v2를 활용하여 Protobuf 스키마를 체계적으로 관리하고, gRPC 서버/클라이언트, HTTP Gateway, OpenAPI 스펙을 자동 생성하는 방법을 알아봅니다.
티켓팅, 이벤트 응모, 플래시 세일 등 순간적으로 폭발하는 쓰기 요청을 처리하기 위한 아키텍처 전략을 다룹니다.
Locust를 활용하여 개발부터 프로덕션까지 환경별 E2E 테스트를 자동화하고 Kubernetes에서 실행하는 방법을 알아봅니다.
대용량 트래픽 서버에서 'Too many open files' 오류를 해결하기 위한 ulimit 설정 방법을 알아봅니다.
Helm Chart에서 공통 설정과 환경별 설정을 분리하여 GitOps 방식으로 관리하는 방법을 알아봅니다.
Mac OS Finder에서 사용자 루트 디렉토리로 이동하는 법 를 눌러보면 순간이동한다!...
Typescript 5.0 RC 발표에서 데코레이터 부분 요약 설치 방법 Decorators 데코레이터는 ECMAScript에 곧 추가되는 기능으로, 클래스와 멤버를 재사용 가능...
Mocha의 NODE_ENV는? 참조 https://github.com/mochajs/mocha/issues/185 23년 1월 24일 기준 확인해본 결과 `"mocha": "^10.2.0" 에서 undefined이다....
Enum 대신 사용할 수 있는 자세한 내용은 우아한형제들 기술 블로그 참고 부탁드립니다. 링크 ```typescript / const NodeEnv...
참고 Rust에서 OS CPU 갯수 찾기 태초의 방식 (deprecated) ```rs extern crate num_cpus; let num = num_cpus::get(...
비트 연산 활용 종류 비트 연산자 설명 &</...
C Overview Summary of the data types in C with example code snippets Value types bool: represents a Boolean value (true or false) ```cs b...
Dart Programming Language Hello world Variables The Var keywor...
MinIO의 힐링(Healing) 메커니즘 MinIO의 힐링 메커니즘은 분산 스토리지 환경에서 데이터 내구성을 보장하기 위한 핵심 기능입니다. 이 메커니즘은 디스크 장애, 손상된 메타데이터, 불완전한 쓰기 등을 감지하고 자동으로 복구합니다. 힐링 프...
MinIO의 이레이저 코딩 구현 MinIO는 분산 객체 스토리지 시스템으로, 데이터 내구성과 가용성을 위해 이레이저 코딩(Erasure Coding)을 구현했습니다. 이레이저 코딩은 데이터를 여러 조각으로 나누고 패리티 조각을 추가하여 일부 디스크 손실에도 데이...
MinIO의 손상 감지 알고리즘 MinIO는 분산 시스템에서 데이터 손상을 감지하기 위해 여러 계층의 검증 메커니즘을 구현하고 있습니다. 이 알고리즘들은 메타데이터부터 실제 데이터 블록까지 다양한 수준에서 작동합니다. 메타데이터 검증 File...
Ceph erasure-code 주요 구현 내용 핵심 인터페이스 (ErasureCodeInterface) 목적: 모든 이레이저 코드 구현의 표준화된 API 제공 주요 메서드: : 프로파일에 따라 코드 초기...
이레이저 코딩 용어 정리 기본 개념: 이레이저 코딩(Erasure Coding): 데이터 중 일부가 손실되더라도 복구할 수 있게 해주는 기술 청크(Chunk): 데이터를 분할한 단위, 각 청크는 별도의 저장소에 분산 저장됨 -...
리드-솔로몬 코드의 수학적 원리 개요 리드-솔로몬(Reed-Solomon) 코드는 데이터 무결성을 보장하고 오류 정정을 가능하게 하는 강력한 오류 수정 코드(Error Correction Code, ECC)이다. 본 문서에서는 리드-솔로몬 코드의 핵심...
--- 🔹 1. 데이터 원본을 리드솔로몬 인코딩 후 노드마다 샤드를 나누는 방식 🛠️ 개요 • 원본 데이터를 한 번에 큰 단위로 리드솔로몬(Erasure Coding, EC) 인코딩을 수행한 뒤, 생성된 데이터 블록(원본)과 패리티...
--- 개요 (Abstract) 이 문서는 Arweave 네트워크의 새로운 합의 메커니즘을 설명한다. 이 메커니즘은 최신 블록위브(blockweave) 상태에서 유추된 과거 데이터 청크를 찾는 경쟁 방식에 기반을 둔다. --- 동기...
“2024 Data Replication Design Spectrum” 요약 이 글에서는 데이터 복제(Data Replication) 알고리즘의 다양한 설계 방식을 소개하며, 특히 레플리카(replica) 장애를 처리하는 방식에 초점을 맞추고 있...
CRUSH (Controlled Replication Under Scalable Hashing) 기본 개념 CRUSH는 Ceph의 핵심 데이터 배치 알고리즘으로, 데이터 객체를 클러스터의 물리적 저장 장치에 분산 배치하는 방법을 결정합니다. 주요 특...
Ceph Erasure Coding 메타데이터 관리 메타데이터 종류 코딩 프로파일 정보: K, M 값 (데이터 청크 수, 코딩 청크 수) 사용된 이레이저 코딩 알고리즘 유형 특수 파라미터 (예: jerasure...
Ceph Erasure Coding 데이터 조회 흐름 클라이언트 요청 단계 객체 접근 요청: 클라이언트가 특정 객체 ID로 데이터 요청 CRUSH 계산: 클라이언트는 CRUSH 알고리즘을 사용해 객체의 청크들이 저장된 OSD...
Ceph Erasure Coding 데이터 저장 흐름 클라이언트 쓰기 요청 단계 객체 쓰기 요청: 클라이언트가 특정 풀에 데이터 쓰기 요청 PG(Placement Group) 결정: 객체 ID를 해시하여 속할 PG 계산 3....
분산 시스템에서 Redis를 활용한 분산 락 구현 방법과 Redlock 알고리즘을 알아봅니다.
AWS ElastiCache for Redis (OSS) - 샤딩과 마스터 Failover 정리 📌 핵심 개념 요약 Redis Cluster 모드에서는 데이터를 샤딩하여 여러 마스터...
Which is best isolation level for a common situation MySQL은 데이터베이스 엔진이 동시 트랜잭션을 처리하는 방법을 정의하는 여러 분리 수준을 지원합니다. 일반적인 상황에 가장 적합한 옵션은 응용프로그램의 특정 요구사항에...
MySQL 트랜잭션 쿼리 예시 ```mysql START TRANSACTION; SAVEPOINT A; INSERT INTO user(username, password, salt) VALUES ('testuser', 'testpassword',...
대량 데이터 인덱싱 작업에서 INSERT와 Upsert 패턴을 비교하고, 효율적인 배치 처리 방법을 알아봅니다.
ACID 정의 Atomic 트랜잭션의 연산은 모두 정상적으로 실패하거나 모두 실패해야 한다. Consistent 트랜잭션이 성공한 후에 데이터베이스의 제약조건을 포함한 일관성이 지켜져야 한다. Isolation 현재 진행중인...
Solana (SOL) 💡 Cheatsheet of SOL for web3 developers. 요약 중앙화를 벗어나지 못함. 재단에서 네트워크를 껐다 켰다 할 수 있음 노드가 엄청 잘 죽음 (올해만 몇 번 중지...
Tezos (XTZ) 💡 Cheatsheet of XTZ for web3 developers. 요약 노드에 좀만 요청보내도 헐떡대다가 죽음 최소 잔고 맞춰줘야 함 라이브러리 편하게 잘되어 있긴 한데 노드 개...
Stellar Lumens (XLM) 💡 Cheatsheet of XLM for web3 developers. 요약 리플 v2 protobuf같은 프로토콜인 xdr을 사용하는 특이사항이 있음 트랜잭션...
Ripple (XRP) 💡 Cheatsheet of XRP for web3 developers. 요약 국제 송금망을 타겟으로 한 블록체인 속도를 위해서 탈중앙을 포기한 사례 개발자 도구나 커뮤니티가 훌...
Istanbul Byzantine Fault This article refers to link below! [Link](https://steemit.com/kr/@kanghamin/istanbul-byzantine-fault-toleranc...
HD 지갑의 개념과 BIP-32/39/44 표준, 키 파생 경로 구조를 알아봅니다.
Harmony (ONE) 💡 Cheatsheet of ONE for web3 developers. 요약 이더리움 복제품 다만 샤딩 적용되어 있는데 현재는 4개 체인 이외 특이사항 딱히 없다...
Filecoin (FIL) 💡 애증의 파일코인 요약 트랜잭션 전파시에 타임아웃 나는거 고질병이라고 함 미리 txHash 만드는 방법있음. 아래 라이브러리 잘 찾으면 나옴 [https://docs.zondax.c...
Biance Smart Chain (BNB) 💡 Cheatsheet of BSC/BNB for web3 developers. 설명 이더리움 복사본. BNB체인과 BSC체인이 따로 있어서 유의 필요...
블록체인의 이해 _보험연구원의 연구보고서 '[권호 : 18-24] 보험 산업의 블록체인 활용'을 읽고 작성한 내용입니다. 개인 공부 목적이라 정리가 미흡한 점 양해 부탁드립니다._ 블록체인의 의미 블록체인이란 P2P(Peer to Peer) 네트...
롤업이란? 롤업은 L2에서 트랜잭션을 실행한 뒤, 실행한 트랜잭션 데이터들과 변경된 상태의 요약본을 L1에 저장하는 솔루션 일반적으로 L1에 배패된 롤업 컨트랙트에 스테이트 루트(상태요약본)가 저장되어 있음 롤업의 경우 L1의 상태 변경시 TX실행 결과...
"단순 해시 검증"의 한계와 데이터 가용성 문제 이것은 매우 핵심적인 질문입니다! 단순히 ODS의 해시만 검증하는 방식이 왜 부족한지, Celestia의 데이터 가용성 샘플링이 왜 필요한지 명확히 설명드리겠습니다. 단순 해시 검증의 근본적 문제 1...
Checksum What is checksum ? A checksum is small-sized block of data derived from block of digital data for the purpose of deecting errors tah m...
How Base Gas Works Aptos transactions by default charge a base gas fee, regardless of market conditions. For each transaction, this "base gas" amou...
Ethereum (ETH) 💡 이더리움은 월드 와이드 컴퓨터를 꿈꾼다 장점 개발자 커뮤니티 1등인듯, 어지간한 에러나 이슈는 이미 레퍼런스가 모두 있음. 디버깅 매우 편함 그러다보니 web3, ethers.j...
Namespaced Merkle Tree (NMT)란? Namespaced Merkle Tree (NMT)는 Merkle Tree의 변형된 구조로, 네임스페이스(namespace)를 기반으로 하는 인증 가능한 데이터 구조다. Cel...
Celestia의 데이터 저장 공간 사용량 Celestia의 EDS(Extended Data Square) 구조에서 저장 공간 사용은 다음과 같습니다: 전체 EDS 용량 (이론적인 값) 전체 EDS는 원본 데이터의 4배 크기를 차지합니다: -...
Celestia의 데이터 가용성 증명(Data Availability Proof) 메커니즘 Celestia는 블록체인 확장성 문제를 해결하기 위해 데이터 가용성 증명(Data Availability Proof) 메커니즘을 핵심으로 사용합니다. 이 메커니즘은 모든...
EDS(Extended Data Square)란? EDS는 Celestia의 데이터 가용성(Data Availability) 보장 메커니즘의 핵심 구조입니다. EDS는 원본 데이터를 2D 사각형으로 구성한 후, Reed-Solomon 오류 정정 코딩을 적용하여...
핵심 개념 Share (공간단위) Celestia의 기본 데이터 단위(512바이트) 네임스페이스 ID를 포함한 원시 데이터 저장 각 Share는 특정 네임스페이스에 속하며, 정보 바이트와 버전을 포함 Square (사각형) 데...
데이터 가용성 샘플링(DAS)에서 샘플 수량 결정 방식 라이트 노드의 샘플링 설정 share/availability/light/options.go 파일에서, 라이트 노드의 기본 샘플 수량이 16개로 정의되어 있습니다. ``` // D...
celestia-node 'file' 패키지 분석 Celestia-node repository의 패키지는 Exten Data Square(EDS)라는 데이터 구조를 파일 시스템에 효율적으로 저장하고 접근하기 위한 구현을 제공합니다. 이 패키...
비트코인 NFT와 BRC-20(FT) 연초에 비트코인에서 발행이 가능해졌다는 뉴스가 나왔다. 최근에는 트랜잭션 급증으로 비트코인 네트워크가 혼잡해지고 있다. 본 글에서는 단순했던 비트코인 네트워크에서 어떻게 이더리움같은 , `NF...
SPV (Simplified Payment Verification) SPV란? 거래에 대한 모든 블록체인을 저장하지 않고도 트랜잭션을 검증하는 방법입니다. 라이트 웨이트 노드 또는 경량노드라고도 불립니다. 특징 블록체인의 사본을 보관하지 않...
Bitcoin Segwit 비트코인에서, 거래는 입력(inputs)과 출력(outputs)을 포함합니다. 트랜잭션이 네트워크로 전송될 때 노드에서 트랜잭션의 유효성을 검사하여 트랜잭션이 합법적이고 입력이 이중으로 사용되지 않는지 확인해야 합니다. 원래 비트코인 프...
Bitcoin Script 비트코인은 트랜잭션에 스크립팅 시스템을 사용합니다. 스크립트는 단순하고, 스택 기반이며, 좌에서 우로 진행합니다. 이것은 의도적으로 튜링완전하지 않으며, 루프가 허용되지 않습니다. 스크립트는 본질적으로 각 트랜잭션에 기록된 지시어들의...
Address 비트코인 주소는 비트코인을 받는 데 사용되는 26-35개의 영숫자 식별자입니다. 서로 다른 사양을 기반으로 하는 여러 주소 형식이 있습니다. 사용자가 주소를 입력할 때 이러한 형식에는 특정 접두사가 있으므로 사용 중인 형식을 확인할 수 있습니다....
Upgrade Move code Move code (e.g., Move modules) on the Aptos blockchain can be upgraded. This allows code owners and module developers to update a...
Move on Aptos 앱토스 블록체인은 합의 프로토콜을 실행하는 밸리데이터 노드들로 구성됩니다. 합의 프로토콜은 Move Virtual Machine()에서 실행될 때 트랜잭션들의 순서와 출력()에 동의합니다. 각 밸리데이터 노드는...
Interact with the Move VM The Aptos blockchain uses the Move virtual machine (VM) for executing operations...
Aptos Whitepaper https://aptos.dev/aptos-white-paper/aptos-white-paper-in-korean...
Aptos Move Structure 여러분의 Move 코드를 어떻게 구성하는게 좋은지 이해하는 시간을 가져봅시다 Move의 구조체는 함수 클래스 역할을 하는 Rust와 같은 다른 프로그래밍 언어의 구조체와 비슷합니다. 원하는 만큼 구조체에 많은 필드를 가질 수...
Aptos Integration Guide https://aptos.dev/guides/system-integrators-guide...
확장 가능한 실시간 WebSocket 서버 아키텍처 설계
데코레이터 (Decorator) 정의 데코레이터는 클래스 선언, 메서드, 접근자, 프로퍼티, 또는 매개변수에 첨부할 수 있는 특수한 종류의 선언입니다. 사용 형식은 과 같으며, 여기서 은 데코레이팅 된 선언...
개체 지향 프로그래밍 (Object Oriented Programming) 개체 지향 프로그래밍 언어의 네가지 기본 원칙 추상화 - 관련 특성 및 엔터티의 상호 작용을 클래스로 모델링하여 시스템의 추상적 표현을 정의합니다. 캡슐화 - 개체의 내부...
개체 vs 객체 또는 라는 용어는 개발자, 특히 백엔드 개발자 사이에서 빼놓을 수 없다. 매체에 따라서 개체 또는 객체라고 표현하는 는 무엇일까? 객체 철학 의사나 행위가 미치는 대상. 언어 문장 내에서 동사의 행...
SOLID 원칙 Ref https://ko.wikipedia.org/wiki/SOLID_(%EA%B0%9D%EC%B2%B4_%EC%A7%80%ED%96%A5_%EC%84%A4%EA%B3%84)...
데코레이터를 이용한 Nest.js에서의 AOP 적용 데코레이터? [데코레이터](<obsidian://open?vault=seogyugim.coinone&file=Typescript%2F%EB%8D%B0%EC%BD%94%EB%A0%88%EC%9D%B4%ED%...
NestJS Dynamic Module 주의점 ```typescript export const databaseProviders = [ { provide: MysqlDatasourceKey, inject: [ConfigService, MysqlConfigS...
NestJS, Cache-Manager v5 사용시 문제 해결법 문제 공식문서에 나온대로 하면 발생 원인 가 로 올라가면서 사용법이 아예...
HTTP 쿠키 보안 설정 [세션 하이재킹과 XSS](https://developer.mozilla.org/ko/docs/Web/HTTP/Cookies%EC%84%B8%EC%85%98_%ED%95%98%EC%9D%B4%EC%9E%AC%ED%82%B9%EA%B...
Http 요청 최소화 기법 뭐가 있을까? 다른 공급자에 대해 HTTP 요구를 수행하는 것은 많은 크롤 프로그램이나 배치 프로그램에서 필요할 수 있지만, 요청 수를 최소화하여 성능을 향상시키고 오류나 타임아웃 위험을 줄이는 것이 중요합니다. HTTP 요청을...
HTTP Transfer 크기를 줄이는 법 종단 간 압축 !종단 간 압축 Accept-...
EADDRNOTAVAIL 문제 상황 node.js 서버 애플리케이션을 리눅스 환경에서 사용중이다. 아래와 같은 에러가 발생했다 ```json { "message": "request to aa failed, reason: connect EAD...
Trunk-Based Development 트렁크 기반 개발은 개발자들이 라고 부르는 단일 브랜치에서 공동 작업을 수행하는 소스 제어 브랜칭 모델이며, 수명이 긴 다른 개발 브랜치를 생성하지 않기 위한 방법입니다. 그러므로 이 방법을 사용하면 병합지옥...