Programming/기초

Frame : HTTP/2의 통신상 가장작은 정보, ( Header, Data ) Message : 요청과 응답, 다수의 Frame으로 이루어져 있다 ( Request, Respond ) Stream : 클라이언트와, 서버간의 주고 받는 여러개의 Message
러닝커브란?지식의 실제 활용성 러닝커브의 의미러닝 커브가 높다 :- 조금 배워도, 활용 할 수 있는 부분이 많다.러닝 커브가 낮다 : - 많이 배워도, 활용 할 수 있는 부분이 적다 결론러닝 커브가 높은 일에 노력을 기울여야,적은 노력으로 많은 효과를 볼 수 있다.
리팩토링이란? 이미 만들어진 프로그래밍 코드를, 결과의 변경없이 수정하는 것 리팩토링의 필요성 "더 알아보기 쉽게" 코드를 바꾼다. - 나중에 새로운 기능을 추가하거나, 수정할때 더 빠른 작업이 가능하다. 프로그램이 "더 빠르게 작동하도록" 코드를 바꾼다. - 프로그램의 성능 향상이 가능하다.
해싱 알고리즘 (Hash) 1. MD5 일반적으로 파일의 무결성을 확인하는데 사용된다. 충돌 방지 기능이 없다. SSL인증, 디지털 서명 같은 앱에는 사용하지 않는다. 2. SHA-1 SHA 함수 중의 가장 많이 쓰인다. 충돌 방지 기능이 있으나, 약하다. 2. SHA-2 SHA 함수의 두번째 버전. 4가지 변형 버전이 존재한다. * SHA-256 : SHA-1 보다 더 강한 보안 * SHA-512 : SHA-256의 64bit 버전 * SHA-224 : SHA-256의 파생 버전 * SHA-384 : SHA-512의 파생 버전 2. SHA-3 SHA 함수의 세번째 버전. ( 5년간의 해시함수 발전의 결과 ) 해시값의 길이를 224, 256, 384, 512 로 설정할 수 있다. 암호 알고리즘 1. AE..
CDN 이란? 콘텐츠(Contents) 전송(Delivery) 네트워크(Network) 웹 콘텐츠들을 여러개의 서버에 나누어서 보관하는 네트워킹 CDN의 필요성 웹 콘텐츠를 사용자와 가까운 곳에 배치하므로, 전송속도가 빠르다.
레인보우 테이블이란? 해시 함수의 모든 입력값에 대한 결과를 표로 정리한 것 레인보우 테이블이 사용되는 곳 현재 대부분의 암호화는 해시 함수를 통해 이루어지고 있다. 이 해시 함수는 결과값으로 입력값을 찾아내기가 매우 어려우므로, 이를 이용해 정보를 안전하게 보관한다. 해커는 정보를 탈취하기 위해, 해시 함수에 0~최대값 을 전부 넣어 결과값을 구하고, 표에 정리한다. 이제 해커는 결과값을 가지고 입력값을 찾아낼 수 있고, 이 표를 레인보우 테이블이라고 부른다. 레인보우 테이블에 대비하는 법 해커의 레인보우 테이블에 대비하는 법은 의외로 쉬운데, 오직 개발자만 알 수 있는 임의의 정보를 입력값에 추가하는 것이다. (보호할 정보) + (개발자 임의 정보) >==해시함수==> (결과값) 이로 인해 해커는 결..
인프라스트럭처 배포 빌드 전처리 > 컴파일 > 링크 과정 앱개발 과정 소스코드 작성 > 전처리 > 컴파일 > 링크 > 실행 > 에러발생 > 디버깅 > 소스코드 작성 소스코드 작성 텍스트 편집기를 사용해, 프로그래밍 언어를 사용해 코드를 작성한다. 전처리 사람이 작성한 코드를 컴파일 하기 위한 코드로 바꾼다 - 주석제거 - 다른 파일 불러옴 ( include, require ... ) - 소스코드 수정 ( define ... ) 컴파일 프로그래밍 언어를 사용해 작성된 코드를, 기계어 (바이너리)로 번역한다 릴리즈
메인보드 CPU, 메모리, 그래픽카드를 장착하는 기판 1. 메인보드-케이스 호환성 일반-ATX = 미들 케이스 이상 M-ATX (Micro) = 슬림, 미니 케이스 이상 2. 메인보드-CPU 호환성 CPU 소켓 지원 여부를 확인 인텔(소켓1151v2) = 인텔 8세대 / 9세대 커피레이크 AMD(소켓AM4) = AMD 라이젠 3. 메인보드-메모리 호환성 메인보드가 지원하는 DDR 버전 확인 4. 메인보드 네이밍 ( 인텔 1151v2 ) 400 세대 Z490 : CPU, RAM 오버클럭 지원 H470 > B460 > H410 500 세대 Z590 : CPU, RAM 오버클럭 지원 H570, B560 : RAM 오버클럭 지원 H510 : 오버클럭 미지원 5. 메인보드 네이밍 ( AMD AM4 ) 400 세대..
로드밸런싱이란? 컴퓨터의 하나의 작업을, 여러개의 장치에게 나누어 시키는 것 로드밸런싱의 장점 작업이 걸리는 시간을 최소화 할 수 있다. 로드밸런싱 방법과 한계 1. 하나의 DNS로 들어오는 요청을, 여러개의 IP주소로 나누어 주는 것 클라이언트에서 캐싱하므로, 부하분산이 균등하게 되지 않는다. 특정 서버에 장애가 발생하더라도 장애여부가 감지되지 않는다. 2. L4, IP주소와 포트를 기반으로 로드밸런싱하는 하드웨어 비싸다 ㅠㅠ VIP (가상IP) 단위로만 로드밸런싱하기 때문에 반드시 하나의 VIP에 연결된 서버의 수가 비슷해야 한다 - 하나의 IP의 문제가, 다른 IP의 문제로 연쇄적으로 번질 수 있다.
MOONCO
'Programming/기초' 카테고리의 글 목록 (6 Page)