일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Algorithm
- Refactoring
- 백준
- docker
- Fast API
- RabbitMQ
- 러스트
- fluent python
- dockerfile
- 플랫폼
- BlockChain
- IMAGE
- Kubernetes
- guru
- BAEKJOON
- 코어 이더리움 프로그래밍
- AWS
- 알고리즘
- Ethereum
- 블록체인
- Container
- 동시성
- Python
- 이더리움
- function
- 파이썬
- 전문가를 위한 파이썬
- Network
- Thread
- rust
- Today
- Total
글쓰기 | 방명록 | 관리 |
목록분류 전체보기 (99)
Victoree's Blog
이 페이지는 GURU 사이트 [what-is-refactoring] Clean Code의 번역을 담고 있습니다. Clean code Clean code The main purpose of refactoring is to fight technical debt. It transforms a mess into clean code and simple design. Nice! But what’s clean code, anyway? Here are some of its features: Clean code is obvious for other programmers. And I’m not refactoring.guru Clean Code 리팩토링을 하는 주 목적은 기술 부채와 싸우기 위함입니다. 리팩토링은 엉망인 코..
함수 플래그 인수는 추하다 왠만하면 잘못되었을 확률이 큼 join_funding_channel() 한 함수에서 두 가지 작업을 하고 있음 (채널 추가 && 채널 추가 여부 확인) id 값을 kakao_account_id, talk_user_id 두 가지를 지원하고 있는데, 하나만 지원하도록 kakao_account_id 인 경우는 함수 밖에서 처리하고 인풋으로 넘기면 되지 않을까.. 인수가 3개 이상이 되면,, 캡슐화 시키는 게 나을까요? 보통 같이 응집되어 붙어다니는 이유가 있음 클래스나 하나의 오브젝트로 감싸는 방법도 좋음 (케바케) core나 앱의 utils에 type을 만들어서 관리하는 방법도 있음 물고있는 컨넥션이 있을 때는 클래스로 구성해서 분리해도 좋음 굳이 특정 값을 들고 있을 필요가 없을..
코드 리뷰 시간을 줄이기 위해 클린코드라는 책을 읽고, 매주 책 내용에 대한 토의 및 개발한 코드 중 개선할 부분을 찾아보기로 하였다. 1장. 깨끗한 코드 Software 유연해서 소프트웨어라지만 아니다! models 같이 low한 영역일수록 고치기가 더 어려워짐 코드는 항상 클린한 상태를 유지하도록! 더러운 코드에 기능만 붙이다가 어느 순간 기능을 추가할 수 없는 코드로 변질 -> 몰락 넷스케이프 흥행과 몰락 추상화는 어려워 Minter 앱 개발 당시, Queue -> Serial Pool로 변형 클래스의 상속이나 캡슐레이션 같은 추상화말고 기능적인 측면에서 어떤 부분을 추상화시킬지는 항상 고민하면서 구현해야 한다 2장. 의미있는 이름 data라는 변수를 툭 사용하지 말것 # data = { not_v..
1. 도커 허브란 도커가 공식적으로 제공하는 이미지 저장소 docker create / run / pull 을 수행할 때, 도커 허브에서 해당 이미지를 검색한 후 내려받음 공식 라벨이 없는 이미지는 사용법을 찾을 수 없거나 제대로 동작하지 않게됨 $ docker search를 통해서 도커 엔진에서 이미지를 찾을 수 있음 2. 도커 이미지 생성 docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] 이미지 테그를 입력하지 않을 시, default는 latest docker commit \ > -a "victoria.k" -m "my_first_commit" \ > commit_test \ > commit:first a : author 이미지의 작성자를 나타내는 메타데..
1. Docker Logging 컨테이너의 표준 출력(StdOut)과 에러(StdErr) 로그를 별도의 메타데이터 파일로 저장하며 이를 확인하는 명령어를 제공함 $ docker logs [컨테이너명] 컨테이너 내부에서 출력을 보여주는 명령어 $ docker logs --tail n [컨테이너명] : 최근 n개의 줄의 로그만 보여줌 $ docker logs -f [컨테이너명] : 로그를 스트림으로 확인할 수 있음 로그 저장방식 컨테이너 로그는 JSON 형태로 도커 내부에 저장됨 --log-opt 옵션으로 컨테이너 Json 로그 파일의 최대 크기를 지정할 수 있음 docker run -it --log-opt max-size=10k --log-opt max-file=3 --name log-test ubuntu..
1. 도커 네트워크 구조 1) $ ifconfig 리눅스 시스템의 네트워크 관리를 위한 필수 유틸리티 현재 시스템에 설정되어 있는 네트워크 인터페이스를 설정 또는 확인하는 명령어 서버가 통신하기 위해서는 네트워크 인터페이스(NIC, 랜카드)가 있어야 함 이를 설정, 변경, 확인하는 명령어 확인가능한 NIC 상황 내역 MAC 주소 eth0에 할당된 IP 주소 브로드캐스트 서브넷마스크 MTU (Maximum Transfer Unit) RX packets (부팅 후 현재까지 받은 패킷수) TX packets (부팅 후 현재까지 보내진 패킷 수) Collisions Interrupt 주소 현재 up 되어 있는지. 특정 네트워크 인터페이스의 UP/DOWN 가능 2) 도커 네트워크 컨테이너 내부에 IP를 순차적으로..
1. Docker란 무엇인가 컨테이너를 사용하여 응용프로그램을 더 쉽게 만들고 배포하고 실행할 수 있도록 설계된 도구 컨테이너 기반의 오픈소스 가상화 플랫폼이며 생태계 컨테이너 In Server 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순하게 해줌 AWS, Azure, Google Cloud 등 어디서든 실행가능하게 해줌 컨테이너 코드와 모든 종속성을 패키지화하여 응용 프로그램이 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 빠르고 안정적으로 실행되도록 하는 소프트웨어의 표준 단위 이미지의 인스턴스이며 프로그램을 실행함 컨테이너 이미지 코드, 런타임, 시스템 도구, 시스템 라이브러리 및 설정과 같은 응용 프로그램을 실행하는데 필요한 모든 것을 ..
1. 도커 이미지와 컨테이너 1) 도커 이미지 컨테이너를 생성할 때 필요한 요소 여러 개의 계층으로 된 바이너리 파일로 존재 컨테이너를 생성하고 실행할 때, 읽기 전용으로 사용 [저장소 이름]/[이미지 이름]:태그로 구성 2) 도커 컨테이너 도커 이미지를 기반으로 컨테이너를 생성할 수 있음 해당 이미지의 목적이 맞는 파일이 들어있는 파일 시스템과 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립적 공간이 생성 이미지에서 변경된 사항만 컨테이너 계층에 저장 컨테이너에서 하는 작업은 원래 이미지의 영향을 받지 않음 생성된 컨테이너는 독립된 파일 시스템을 제공받으며 호스트와 분리되어 있음 특정 컨테이너에서 어플리케이션을 설치하거나 삭제해도 다른 컨테이너와 호스트는 변화없음 2. 도커 컨테이너 다루기 도커..
이번 포스트에서는 CloudFront에 대해 소개하겠습니다. CloudFront Cloud Front = Cache Server + CDN 클라우드 프론트는 캐시 서버와 CDN의 기능을 하는 서비스입니다. 캐시 서버와 CDN에 대해 소개할게요 🤓 1. Cache Server 란? 보통 어떤 웹페이지를 php나 Node.js로 만들어서 서비스를 제공하고 있을때, 사용자 요청이 들어오면 정적으로 html을 전송하는것이 아니라 어떤 일련의 작업들을 하고, html을 생성해서 응답해주는 방식으로 동작합니다. 이렇게 동적으로 html 파일을 생성해서 서비스하는 방식은 정적 파일을 바로 제공해주는 것 보다 더 많은 리소스를 사용하게 되죠. 웹페이지가 자주 변경되는 경우가 아닌데, 사용자의 요청이 들어올 때마다 같은..
이번 포스트에서는 S3와 Signed URL에 대해 소개하겠습니다. S3 S3는 Simple Storage Service의 약자로 파일 서버의 역할을 하는 서비스입니다. 주요 특징 1) Scale Up 일반적으로 파일 서버는 트래픽이 증가함에 따라서 장비를 증설하는 작업을 해야하는데, S3는 스케일업 작업을 대행해줍니다. 그래서 트래픽에 따른 시스템적인 문제는 걱정할 필요가 없어집니다. 2) 접근 권한 설정 파일에 대한 접근 권한을 지정 할 수 있어서 서비스를 호스팅 용도로 사용하는 것을 방지 할 수 있습니다. 중요한 개인정보와 관련된 파일은 private으로 설정해두는 것처럼 접근 제어를 할 수 있겠죠? 3) 최소 1바이트에서 최대 5TB의 데이터를 저장하고 서비스 제공 4) Pay As You Go ..