Web 3.0이란 무엇인가? CES 2023에서 메타버스와 함께 주요테마로 주목받은 Web3.0은 인공기능과 블로체인을 기반으로 모든 정보가 분산화 된 차세대 웹 아키텍처로 거대한 관리자 없이 개개인이 네트워크로 연결된 분산형 웹을 의미한다. 다시 말해서 Web3.0은 기존에 사용하던 웹서비스에 인공지능을 통해 개인 맞춤형 정보를 제공하고, 블룩체인을 통해 개인의 정보 소유 및 보안을 강화하는 차세대 지능형 웹 기술이다. 중앙화된 서버와 클라이언트 아키텍처를 기반으로 하는 현재의 인터넷 활용 방식에서는 데이터가 중앙화 된 Storage에 저장되기 때문에 데이터에 대한 신뢰성의 문제가 야기된다. 또한 예측할 수 없는 데이터의 손상을 방지하고 복구하는데에도 한계가 있어 분산된 자료구조 설계의 필요성이 대두 ..
오늘날의 세계에서, 거의 모든 사람들이 스마트폰과 같은 IT기기, Tistory, 쿠팡 등 IT서비스, 클라우드 서비스 등을 사용하면서 원하든원하지 않든 디지털 발자국을 남기고 있다. 하지만 우리 중 극소수만이 그 발자국을 관리하고 보호하기 위해 일한다. 우리가 죽고나면, 우리가 남기는 디지털 발자국은 어떻게 해야 하는가? 우리가 남긴 디지털 발자국은 우리가 떠난 후 가족, 친구 및 지역 사회를 위해 남기는 디지털 유산이며 우리의 이야기이다. 그것은 우리가 누구인지, 우리의 삶의 이야기, 그리고 우리가 그들에게 미친 영향을 기억하는 그들의 방법일 것이다. 과거에, 사람들은 그들의 유산을 인쇄된 사진, 물리적 기념품, 그리고 파일 캐비닛과 아카이브 상자에 종이 파일로 보존했다. 기념품 상자 대신, 디지털 ..
⑴ Node.js의 개요 Google의 chrome V8 JavaScript 엔진을 기반으로 하는 고성능 프레임워크로, JavaScript를 브라우저 밖에서도 실행할 수 있도록 하는 JavaScript Runtime이다. Node.js는 비동기(Asynchronous) 이벤트 주도(Event-Driven) JavaScript Runtime으로써, Node.js는 확장성 있는 네트워크 애플리케이션을 만들 수 있도록 설계되었다. Node.js는 싱글 스레드 논블로킹 모델로 구성되어 있다. 하나의 스레드이지만, 비동기 입출력을 통해 각각의 요청들을 서로 블로킹하지 않는다. 그래서 동시에 많은 요청들을 비동기로 수행함으로써 싱글 스레드지만 논블로킹이 가능하다. 또한, Node.js는 클러스터링을 통해 프로세스를..
Tendermint 개요 Tendermint은 분산 컴퓨터 시스템과 블록체인 네트워크를 구축하고 운영하기 위한 개발 프레임워크 및 핵심 기술 중 하나로, 불록체인 네트워크를 구성하는 노드들의 분산 구조로 인해 발생할 수 있는 네트워크 분할 상황이나, 악의적 의도를 가진 Byzantine 노드에 의한 공격 등의 상황에서 일정 요건을 충족하면 생성된 블록의 절대적 Finality를 보장하는 분산합의 알고리즘이다. Tendermint는 블록체인 애플리케이션을 개발하고 실행하기 위한 오픈 소스 프로젝트로 시작되었다. 이는 Cosmos Network라는 생태계에서 사용되는 핵심 기술이다. 또한, Tendermint는 Bitcoin과 같이 Availability를 우선하는 확률적 합의 알고리즘과는 달리 Consis..
Event란 무엇인가? 프로그램 소스에서 Event를 HTTP, AMQP, MQTT, SMTP, Kafaka와 같은 프로토콜 안에 캡슐화한 메시지를 생성하고, 프로토콜을 통해 목적지에 도착한 Event는 Event 데이터 안에 정의되어 있는 Action을 트리거 하는 방식으로 Event가 처리된다. 즉, Action이 특정 소스로부터 생성하여 트리거된 특정 행동이나 효과를 정의한 Event를 처리하게 된다. Event를 생성하는 목적은 다른 시스템이 소스에서 발생한 변화에 쉽게 대응할 수 있도록 하기 위해서이다. 일반적으로 소스와 액션은 서로 다른 개발자에 의해서 생성되며, 소스는 매니지드 서비스이며, 액선은 Serverless Function내 커스텀 코드인 경우가 대부분이다. Event는 어디에나 존..
Flask란 무엇인가? Flask는 2024년 오스트라아의 오픈소스 개발자인 Armin Ronacher가 만든 웹 프레임워크이다. Python기반 개발되어 REST API 서버 처럼 요청과 응답이 매우 확정적인 경우 사용성이 우수한 가벼운 WSGI(Web Service Gateway Interface) 마이크로 웹 어플리케이션 프레임워크라 할 수 있다. Flask의 특징 첫째, Flask는 직접 원하는 라이브러리 및 패키지를 선택하고 추가해가면서 개발할 수 있고, 별도의 관리자 기능 등이 필수적인지 않은 경우 활용할 수 있는 등 기본 제공 사항이 없어도 자유도가 높다. 둘째, Flask는 타 Framework 기능에 종속되지 않고 자체 Framwork를 구현할 수 있으며, Core기능을 심플하게 유지하여..