[9/9 프로젝트]

DID, 빅체인 DBMS 활용도가 높다. (아직은  안쓰지만) 이를 통해서 블록체인 상용화

 

ㅁ오늘   (G.coffee 회의)

1) 프로젝트  파일공유 위한 깃허브 레포짓 사용.

 ㅇ이제는 깃허브를 이용한 팀프로젝트가 가능할  같아요-

  -우리깃허브(응사이트): https://github.com/dmdsite/dmdsite

 

dmdsite/dmdsite

2019.09. 1st Project : ejc(bootstrap), blockchain, dapp etc - dmdsite/dmdsite

github.com

  -유용한사용을 참조: https://milooy.wordpress.com/2017/06/21/working-together-with-github-tutorial/

  -소스트리 사용: https://www.sourcetreeapp.com/

 

Sourcetree | Free Git GUI for Mac and Windows

A Git GUI that offers a visual representation of your repositories. Sourcetree is a free Git client for Windows and Mac.

www.sourcetreeapp.com

 

2) DID 알아보기.

 Oauth 먼저 보라고 하심 : 프로토콜의 종류. 이것을 활용해서 DID기술 구현.

  -https://minwan1.github.io/2018/02/24/2018-02-24-OAuth/

  -https://oauth.net/core/1.0/

 

OAuth Core 1.0

[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, “Hypertext Transfer Protocol – HTTP/1.1,” RFC 2616. [RFC2617] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach, P., Luotonen, A., and L

oauth.net

 

3) defi 디파이: https://cobak.co.kr/community/3/post/173263

 

크립토 업계의 화두 '디파이(DeFi)' - 코박

탈중앙화에 대해 이해하기 쉽게 설명한 글입니다ㅎㅎ한 번씩 읽어보셔도 좋을 듯 싶네요^^(오현석의 블록체인 생태계 읽기)크립토 업계의 화두 '디파이(DeFi)' 기...

cobak.co.kr

 

4) 빅체인 DB 정리.

ㅁ빅체인 DB (블록체인 DBMS)_강사님 수업자료.

 NoSQL DB  종류.

 ㅇ블록체인과 접목하여 현재 가장 적합한 솔루션

  - 빠르고 많은 트랜잭션 처리를 위한 솔루션.

  - 가스비, 컴퓨팅파워, 너무 많은 노드에 전파  경제적 부담을 커버할 솔루션.

 

 ㅇ기존 DB와의 차이점 : Owner Controlled Assests.

 - 허브 -  개념. 이더리움도 붙이고 비트코인 붙이고 다른 사이드 체인도 필요하다면 붙임. ‘Interchain’ 개념.

 - 블록체인 끼리 통신하고 블록체인끼리 스테이트를 교환할  있도록 하는 기술이 인터체인.

 - 가장 먼저  기술을 표방했던 것이 cosmos(Jaekwon).

 - 빅데이터 DB 쓰고 싶은데 가장 산업화  것이 몽고DB. 그런데 블록체인에 쓰려면 한명에게 컨펌받아야 했고

 - POW블록체인은 안되고, POS 부적합했음.

 - Owner Controlled Assests.(1인컨펌) . 가장 적합한 것이 tendermint(텐더민트, cosmos) BFT 였음.

 

 ㅇ기존 mySQL 와는 다르게 스케일 아웃하는 모델에 아주 적합한 것이 몽고디비.

  - 몽고DB NoSQL DBMS.

  ㆍ개발자 친화적 데이터 교환  BSON(Binary JSON) 문서형태로 저장, 여러 서버에 분산 저장과 확장에 용이함.

  ㆍ방대한 데이터 신속 처리. 윈도우, 리눅스, OS  다양한 운용체계(OS) 지원.
  ㆍ개발자가 온프레미스, 클라우드  어느 환경에서든 어플을 빠르게 개발·구축하고 데이터 기반 인사이트를 도출하도록 도움.


  ㆍ기업은 몽고DB '아틀라스' 활용해 주요 클라우드 플랫폼에 DB 배포하고 운영가능.

  ㆍ아틀라스는 아마존웹서비스(AWS) 서울리전, 마이크로소프트(MS) 서울·부산리전을 기반으로 서비스.
  ㆍ몽고DB 채택한 기업 다수는 오라클 DB 병행 사용한다.

 

 ㅇ업체가 많이 쓰는 것이 다중접속 퍼포먼스가 뛰어난 NginX    (아파치 말고)

 ABCI(Application BlockChain Interface) : 외부체인과 연결하기 위한 규격을 맞추는 기능. 기술명.

 

 

ㅁ빅체인데이터서비스 = 몽고디비 + 텐더민트. 강사님 수업자료.

1) 몽고디비 : 백엔드DB 사용. 빅데이터에 최적화된 DB. Scaleable.스케이러블리티 (스케일 이슈해결)

ㅇ몽고DB 특장점인 2가지 기술 “이것 때문에 쓴다” :: 샤딩과 리플리케이션.

ㅇ샤드(Shard) “샤딩 용량 분할 저장. 스케일아웃. 스케일 문제 해결 “샤드 = 쪼가리

 -1 데이터에 대해서 3번의 리플리케이션. 3 이상 있어야 찾기, 복사하기 좋다. 그래서 3 이상 세트 구성.

 -1TB 256GB 나누는 것을 ‘샤딩이라고 .

 -(1TB)데이터를 똑같이 (최소 3개로) “복사하는 것을 ‘리플리케이션이라함.

 -해쉬 기능이 없는  뿐이지, 분산저장으로서는 블록체인과 같다.

 -피씨 안에 여러 샤딩을 시뮬레이션   있지만, ”몽고스라는 인터페이스를 만들고 이를 통해 접속을 한다.

ㅇ샤딩하고 리플리케이션을 묶은 다음에 몽고스.

 

< 트러스트팜 안규태 강사님 교육자료 참고필요 >

2) 텐더민트 : 블록체인 인터페이스

(유명 블록체인, 재권님 논문도 있음, DPOS 방식=이오스 방식인데 이오스 보다 먼저 나옴)

아톰. 대표적으로 코스모스코인에서도 사용중.

(  코스모스코인 : http://wiki.hash.kr/index.php/%EC%BD%94%EC%8A%A4%EB%AA%A8%EC%8A%A4%EC%BD%94%EC%9D%B8  )

 

코스모스코인 - 해시넷

코스모스코인(Cosmos Coin) 로고 코스모스코인(Cosmos Coin) 로고와 글자 코스모스코인(Cosmos Coin, 宇宙币) 또는 간략히 코스모스(Cosmos)는 서로 다른 블록체인을 연결하는 인터체인을 위한 암호화폐이다. 코스모스체인은 각각 독립적으로 존재하는 여러 블록체인들이 서로 통신할 수 있도록 네트워크로 연결해 마치 블록체인 인터넷(internet of blockchain)처럼 상호 연계되어 작동하도록 하는 역할을 한다. 코스모스 네트워

wiki.hash.kr

 

EJS  발달된 HTML

 ㅇ사용하기 위해 환경설정이 필요 : npm install ejs, express

 ㅇ익스프레스를 진행할 때에 ejs 모듈을 활용하는 방법으로 진행해야함.

'2019' Blockchain developer class > Jo_roject' 카테고리의 다른 글

[dmdsite] #6. Fin.  (0) 2019.11.25
[dmdsite] #4. library  (0) 2019.11.25
[dmdsite] #3. opensource  (0) 2019.11.25
[dmdsite] #2. fail & reboot  (0) 2019.11.25
[dmdsite] #1. brainstorming  (0) 2019.11.25

1. 배경.

자바스크립트라는 장벽이 낮은 언어는 많은 초보 개발자들의 유입을 불러왔고,

여전히 많은 사람들이 즐겨 찾기에 다른언어로 대체될 수 없었습니다.

그래서 이 언어에서 파생되는 기술도 늘어났고- 그것들이 익스프레스(웹)나 노드(서버) 같은 것 입니다.

익스프레스는 루비(언어) 기반 프레임워크 '시나트라'의 영향을 받아 제작되었습니다.

 

2. 익스프레스 시작. https://expressjs.com/ 

express는 node.js의 신속한 웹개발을 위한 프레임워크로써 확장이 유연하여 필요한 기능을 추가할 수 있습니다.

기존의 프레임워크 들과는 다르게 불필요한 기능들이 최소화되어 있습니다.

 

웹사이트, 웹페이지 같은 웹 어플의 프레임워크로써 기능을 할 수 있으며,

단일 페이지 웹 어플을 만들 때에도 적용하기 쉽습니다.

일반적 웹사이트는 사용자의 페이지 이동 마다 네트워크 요청을 보내지만,

단일 페이지 웹어플은 사이트 전체를 클라이언트 브라우저로 내려 받습니다.

때문에 초기 다운로드가 끝나면 서버와 통신이 불필요하기에 페이지 간 빠른 이동이 가능합니다.

다중페이지/ 하이브리드 웹 어플은 전통적 웹사이트 방식으로 단일과 다중 페이지는 융합해서 사용가능한 옵션입니다.

 

3. 노드는 웹서버, 구글엔진사용.

노드는 자바스크립트 언어를 사용하여 구현한 기능으로 서버의 역할을 할 수 있습니다.

익스프레스와 마찬가지로 최소한의 웹서버로 시작하며, 설정옵션이 단순하고 이해가 용이합니다.

단일스레드로 운영되는 노드는 웹어플 만들기가 쉬우며 노드 인스턴스를 늘리면 멀티스레드도 가능합니다.

노드가 사용하는 자바스크립트 엔진인 구글V8이 자바스크립트를 네이티브 기계코드로 컴파일 하지만

워낙 빠르게 컴파일 하기에 인터프리터와 유사해 보입니다. 또한 노드 어플은 플랫폼을 가리지 않습니다.

가볍게 이용가능합니다.

 

4.

노드는 자바스크립트가 브라우저를 벗어나 서버에서 동작하게 해주는 소프트웨어로

익스프레스 처럼 자바스크립트로 작성된 프레임워크를 사용가능하게 해줍니다.

노드와 익스프레스 그리고 몽고DB(데이터베이스)가 한쌍으로 어울립니다.

 

주요관계형 데이터베이스는 mySQL, 마리아DB, PostgreSQL, 오라클, SQL 서버가 있으나,

노드 이용자가 늘어나자 noSQL 데이터 베이스 27

+ Recent posts