본문 바로가기

전체 글84

Smart Contract Best Practices Revisited: Block Number vs. Timestamp 재검토된 스마트 계약 모범 사례: 블록 번호 대 타임스탬프 Last November, Spankchain, a blockchain for the adult entertainment industry, they informed investors that they had extrapolated the end date two days ahead. The culprit? With the assumptions that block confirmations typically run 15 seconds, they extrapolated the estimated block.number with auction_complete 지난 11월 성인 연예계 블록체인 스팽크체인은 투자자들에게 종료일을 이틀 앞당겼다고 알렸다. 그 범인? 블록 확인이 일반적으로 15초 동안 실행된다는 가정 하.. 2022. 5. 18.
IT지식 ) 컨텐츠 주소 지정 저장소(CAS) 📙 컨텐츠 주소 지정 저장소(CAS) : 위치(URL)가 아닌 콘텐츠를 기반으로 검색할 수 있도록 정보를 저장하는 방법입니다. 기존의 데이터는 중앙화된 서버에 보관되어, 주소(URL)을 통해 접근하여 데이터를 볼 수 있었습니다. 이런 방법을 위치 주소(location-addressed)라고 합니다. ex) https://n.news.naver.com/article/032/ 네이버 뉴스 페이지에서 기사 032를 가져오는 URL입니다. 말 그대로 네이버 뉴스 페이지라는 위치에서 기사032라는 데이터를 갖고 오는 방식입니다. 이러한 방식이 지금까지도 보편적으로 많이 볼 수 있는 방법이죠. 📙 컨텐츠 주소 지정 저장소(CAS)는 데이터를 Chunk화 시켜 헤시 암호화 합니다. 그리고 그 데이터를 저장하고, 데이.. 2022. 4. 29.
P2P(Peer-to-Peer) 란? 📄 P2P(Peer-to-Peer) 란? *Peer : 또래, 동료 P2P는 네트워크로 같이 연결되어 있는 컴퓨터들이 클라이언트와 서버의 기능을 하는 네트워크를 의미합니다. 기존에는 중앙에 서버를 두고 통신하는 Server-based 방식으로 통신을 구현했다면, P2P는 클라이언트 컴퓨터끼리 직접적으로 통신하는 방식입니다. 처음에는 인터넷 속도가 느려, 널리 사용되는 방법은 아니였지만, 인터넷속도가 점점 빨라짐에 따라, 상용가능한 스펙을 갖게되며, 다시 주목을 받게 되었습니다. 양방향 통신을 통해 파일을 전송하는 시스템이지만, 반드시 파일 전송에만 쓰이는것이 아니라 중앙 서버 없이도, 서로가 서로를 연결하여 데이터를 공유하기도 합니다. 📄 P2P(Peer-to-Peer) 사용하는 이유 : 예를 들어, 미.. 2022. 4. 29.
DevOps) CI/CD 구현하기 Jenkins(젠킨스) 자동 베포 구현하기 (10) 이전 실습을 통해 Docker에 Node.js로 구축한 백엔드 서버를 이미지로 만들어 서버에 베포 했습니다. 하지만, 코드가 수정됬을 때, 자동으로 합쳐지고, 다시 베포되는 과정이 아직 불편하기에, 이를 자동으로 해주는 Jenkins를 구현해보겠습니다. (1) /home/ubuntu sudo docker pull jenkins/jenkins Docker Hub에는 Jenkins 이미지가 저장되어 있어서, pull 명령어를 통해 가져와 설치 할 수 있습니다. docker run -d -p 8080:8080 -v /home/jenkins:/var/jenkins_home --name jm_jenkins -v /var/run/docker.sock:/var/run/docker.sock -u root jenkins.. 2022. 4. 18.
DevOps) CI/CD 구현하기 AWS RDS MySQL와 Node.js 연동하기 후 도커 이미지 만들기 (9) 전 실습 때, AWS RDS 서비스를 통해 MySQL DB를 새로 만들었습니다. 이번 실습의 백엔드는 Node.js를 이용하기로 했으니, Node.js와 DB를 연동한 후, Docker로 이미지를 만들어 베포해보겠습니다. Node.js와 MySQL 연동은 시퀄라이즈(sequelize)를 이용하여 연동시켜보겠습니다. (1) npm i express sequelize sequelize-cli mysql2 npx sequelize init 먼저 mysql 패키지 설치 후 사진처럼 템플릿을 만들어 진행하겠습니다. ※ 본 실습은 Node.js 실습이 아닌 서버 구축 실습이기에, 설명없이 진행하며, 백엔드 코드는 더미코드로 간단하게만 이용할 수 있는 내용을 넣었습니다. app.js ▼ 코드 복사 보기 더보기 con.. 2022. 4. 15.
DevOps) CI/CD 구현하기 AWS RDS로 MYSQL 구축하기 (8) 원래는 Docker에 MySQL 이미지를 사용하려고 했는데, 실습을 진행하던 중, AWS RDS를 알게 되었습니다. 기존의 서버에 DB를 구축하는 방식이 아닌 AWS에서 DB 전용 서버를 제공해주는 서비스입니다. 이 방법의 장점은, 서버가 샷다운되거나, 리셋이되면, 서버에 구축되어 있는 DB의 데이터 또한 전부 리셋됩니다. 그 외에, 서버를 옮겨야 하는 경우, 다량의 데이터를 다른 서버로 옮기기엔 시간과 비용이 많이 들기에, RDS는 이런 부분을 해결해 주기 위해 DB를 위한 서버를 제공하는 AWS의 서비스중 하나입니다. (1) AWS 검색창에 RDS 입력후 해당 서비스에 접속해주세요. "데이터베이스 생성"을 눌러 RDS DB를 만들어주세요. (2) 설정 과정은 사진 순서대로 눌러주세요. DB인스턴스 식.. 2022. 4. 14.
DevOps) CI/CD 구현하기 Docker에 MySQL 설치하기 (7) 이번에는 Docker에 MySQL을 설치해 보고 MySQL Workbench와 연결해보겠습니다. 사실 DB는 Docker과 잘 연결하지 않습니다. 그 이유는 컨테이너를 쉽게 삭제하고 이미지를 쉽게 내릴 수 있기 때문에, 실수로 DB가 실행중인 컨테이너를 없애기라도 하면, 기존의 데이터가 전부 없어지기 때문입니다. Ubuntu 서버에 직업 MYSQL을 설치하고 싶으신분은, 해당 내용을 구굴해보시면 쉽게 찾을 수 있습니다. 저는 이번에 Docker를 이용해서 하는 방법을 실습해보겠습니다. docker ps -a // 실행중인 컨테이너 전부 삭제 docker rm -f `docker ps -a -q` docker images // 실행중인 이미지 전부 삭제 docker rmi -f `docker images`.. 2022. 4. 14.
DevOps) CI/CD 구현하기 Docker에 Node 설치 (6) 저번 시간에는 구축했던 우분트 서버에 도커를 설치 했습니다. 이번에는 노드로 하여금 웹 애플리케이션을 만들고, 그거를 도커 이미지로 만들고, 컨테이너로 실행하는 과정을 해보겠습니다. 먼저 쥬피터로 접속하여 /home/ubuntu/ 폴더 위치에 nodeExample 폴더를 만들겠습니다. 여기에 Dockconfig(도커 환경 설정파일)과 Node.js app.js를 넣어두겠습니다. const express = require("express"); const app = express(); app.set("port", process.env.PORT || 3000); app.use('/',(req,res,next) => { res.send('hello express!!') }) app.listen(app.get(".. 2022. 4. 14.
DevOps) CI/CD 구현하기 우분투에 Docker(도커) 설치 (5) 저번 시간에 구축한 우분투 서버에 Jupyter를 포트 8888에 구동시킴으로써, 터미널에 따로 접속하지 않고, 쥬피터를 통해 서버로 쉽게 접근 할 수 있게 만들어 놨습니다. 지금부터는 터미널이 아닌, 쥬피터를 통해 서버에 접근하여 서비스를 구축해보겠습니다. 이번 시간은 도커를 Ubuntu서버에 설치하겠습니다. ※ 사진을 옮기면서 화질이 깨진거 같습니다.. 클릭하면 큰화면으로 볼 수 있고 , 아래 필요한 코드를 적어 놨습니다. df -h // 현재 서버 메모리 및 용량 상태 // 순서대로 진행 sudo apt update sudo apt install apt-transport-https sudo apt install ca-certificates sudo apt install curl sudo apt in.. 2022. 4. 14.
반응형