본문 바로가기

전체 글

(351)
[Docker] 1. 도커(docker) 설치하기 도커 이미지에 대한 내용 https://hoon93.tistory.com/48 도커 컨테이너(Container)와 이미지(Image)란? 도커(Docker)는 Immutable Infrastructure Paradigm 이라는 개념을 기반으로 하기 때문에, 서비스 환경(서비스 인프라) 부분을 이미지화(실행파일화)하여 배포한 뒤 가급적 변경하지 않고 사용한다고 이전 hoon93.tistory.com 먼저, 본인은 GCP 환경에서 도커를 설치하였습니다. 도커 설치하기 도커 (Docker) 는 리눅스 컨테이너 기술이므로 macOS나 windows에 설치할 경우 가상머신에 설치가 됩니다. Linux 리눅스에 도커를 설치하는 방법은 자동 설치 스크립트를 이용하는 것이 가장 쉽습니다. 다음 명령어를 입력하면 roo..
[GCP] 터미널 ssh 원격 접속 에러 (WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!) 메타데이터에 ssh 공개키를 저장 후, 터미널을 켜서 해당 인스턴스에 ssh 접속을 시도중 이슈가 발생했다. 해결 방법 일단 해결 방법은 이렇다! ssh-keygen -R {ip or DomainName } # ssh-keygen -R 34.64.45.79
[GCP] VM 인스턴스 생성 먼저, 여러 클라우드 플랫폼이 있겠지만 현재 무료로 사용할 수 있는 클라우드 플랫폼이 구글인점 양해바랍니다. 인스턴스는 하나의 VM (Virtual Machtine) 라고 생각하면 좋습니다. 이 VM인스턴스의 장점은 물리적 자원을 가상화해서 여러 개로 쪼개서 쓸수 있다는 것입니다. 먼저, 상단의 '인스턴스 만들기'를 클릭 합니다. 인스턴스의 원하는 이름을 작성. '리전(Region)은 Server의 물리적 위치이다. 원하는 나라를 선택해도 상관은 없지만 본인은 서울을 선택할 것이다. 차이는 없는듯..? '영역(Area)' 또한, 아무거나 선택해 주면 된다. 서버의 중요한 분인 성능을 결정하는 부분이다. 간단한 웹서버를 띄우는 것이기에 N1을 선택했다. 그 다음은 부팅디스크... Linux 계열을 사용할 ..
[Django] ContentType 모델링을 설계하다보면 ManyToMany 필드처럼 클래스 모델을 추가로 생성하지 않고, 한 모델이 여러 개의 모데로가 관계를 맺어야 하는 경우가 있다. 예를 들어, 댓글이나 좋아요와 같은 기능을 구현할 때 주로 사용된다. class Post(models.Model): # 생략 class Comment(models.Model): # 생략 class Like(models.Model): post = models.ForeignKey(Post, on_delete=models.CASCADE) comment = models.ForeignKey(Comment, on_delete=models.CASCADE) 다양한 모델링이 있지만, Like 를 PostLike 와 CommentLike 로 나눌 수 있고 방법은 다양하다...
[CS] 백엔드 (추가중) - Django, Python CRUD 본적인 데이터 처리 기능인 Create(생성), Read(읽기), Update(갱신), Delete(삭제)를 묶어서 일컫는 말이다. MTV와 MVC MVC -> Model, View, Controller 로써 각 요소들이 서로 영향을 미치지 않게 하는 패턴 Model -> DB관련 어플리케이션의 데이터를 나타내고 백그라운드 로직들을 처리함 View -> 사용자가 보게 될 화면 Controller -> 사용자의 입력과 요청에 관한 처리를 Model에 의뢰함 MTV -> Model, Template, View Model -> 유저가 사용할 데이터를 정의하고 관리하는데 DB에 저장되는 데이터를 의미. 모델은 클래스로 정의되며 하나의 클래스가 하나의 DB Table가 됩니다. 또한, SQL 대신 장고의..
[CS] 백엔드 (추가중) - 데이터베이스 ※ Development common sense RDBMS와 NOSQL RDBMS -> 데이터베이스를 이루는 객체들의 릴레이션을 통해서 데이터를 저장하는 데이터베이스. SQL을 사용해 데이터의 저장, 질의, 수정, 삭제를 할 수 있으며 데이터를 효율적으로 보관하는 것을 목적으로 한다. NOSQL -> RDBMS에 비해 자유로운 형태로 데이터를 저장. 수평확장을 할 수 있고 분산처리를 지원. 다양한 형태의 NOSQL 데이터베이스가 있고, 대표적으로 key-value store, bigtable, dynamo, document db, graph db 등이 있습니다.
[CS] 백엔드 (추가중) - 운영체제 ※ Development common sense 프로세스와 스레드 프로세스 -> 실행중인 프로그램을 의미. 운영체제로부터 자원을 할당받는다. 스레드 -> 실쟁 제어만 분리한 것. 프로세스로부터 자우너을 할당받고, 프로세스의 코드, 데이터, 힙영역을 공유하기 떄문에 좀 더 효율적으로 통신할 수 있다. 캐시메모리를 비우지 않아도 되는 스레드 쪽이 빠르다. 한 프로세스 안에 여러개의 스레드가 생성될 수 있다. 동기와 비동기 동기 방식 -> 메서드 리턴과 결과를 전달받는 시간이 일치하는 명령 실행 방식. 한 함수가 끝나는 시간과 바로 다음의 함수가 시작되는 시간이 같다. 비동기 방식 -> 여러 개의 처리가 함께 실행되는 방식. 동기 방식에 비해 단위시간 당 많은 작업을 처리할 수 있다. CPU나 메모리를 많이 ..
[CS] 백엔드 (추가예정) - 네트워크 ※ Debelopment Common Sense 좋은 코드란? 읽기 쉬운 코드 중복이 없는 코드 테스트가 용이한 코드 객채지향언어 ? 프로그램을 다수의 '객체'로 만들고, 이들이 서로 상호작용을 통해 만들어지는 방식의 언어. 간단히 말해서, 각 기능의 역할을 각각의 독립된 부품(객체)로 만들어서 유지보수하기에 용이하도록 하는 것. 객체지향언어의 특징 ? 캡슐화 상속 다형성 추상화 객체지향언어의 장점 및 단점 ? 장점 -> 재사용서 생상성 향상 자연적인 모델링 유지보수의 우수성 단점 -> 개발속도가 느림 실행속도가 느림 고딩난이도 상승 종류 -> 본인이 사용하는 언어 == 파이썬 파이썬[Python] : 인터프리터식, 객체지향적, 동적 타이핑 대화형 언어 Rest API 와 Restful API REST ..