[연재] 이더리움 dApp을 개발하기 위한 기초 지식 - 구조 2

[연재] 이더리움  dApp을 개발하기 위한 기초 지식 - 구조 2


자 이제 웹서버에 대해 얘기해보자.

데이터베이스만 있다고 애플리케이션을 만들 수는 없다. 이는 dApp도 마찬가지다.

Smart Contract를 통해 데이터를 저장하고, 불러오고 하는 것을 할 순 있지만, 아무래도 사용자에게 제대로된 UI/UX를 제공하려면 웹 서버가 있어야 한다.


이 웹서버는 우리가 일반적으로 알고 있는 어떤 웹 서버도 괜찮다.

단지 클라이언트에서 Blockchain Database와 통신할 수 있는 web3.js라는 모듈을 웹 페이지 상에 포함하여야 한다.


Blockchain Database와 통신은 보통 JSON RPC 통신을 하는데 이를 담당하는 것이 web3.js이다.



물론 web3.js만 포함하는 로컬 html 파일만 만들면 되기 때문에, 굳이 웹서버가 없어도 된다.

실재 이더리움 안드로이드 앱 개발 시에는 web3.js 의 역할을 하는 web3j 라는 것이 있다.


하지만 다수를 위해 공개 서비스를 하기 위해서는 웹서버가 필수이다.

다음 장에서는 Local BlockChain DB를 생성하고 JSON RPC 서비스를 제공하는 클라이언트 툴에 대해 설명하겠다.