[CS] 컴퓨터와 문자 인코딩
·
공부중
텍스트 데이터와 문자 인코딩 데이터트랜지스터를 통해 0과1의 이진수를 표현가능하다. 꺼지면0 켜지면1트랜지스터의 모음 - RAM현대의 컴퓨터 메모리는 RAM은 초당 수십억번의 데이터를 사용가능하다.1bit를 추가할 때 마다 표현할 수 있는 숫자는 두배가 된다. 2 4 8 16 … (8bit = 1바이트)8비트 기준 양수라면 0~255, 음수표현이 되어야한다면 -128 ~ 127 까지, 표현은 256가지만 가능하다.컴퓨터와 문자 인코딩문자 인코딩: 문자 집합을 통해 문자->숫자 변환문자 디코딩: 문자 집합을 통해 숫자->문자 변환ASCII 문자집합서로다른 컴퓨터 간의 문자집합을 가지면 일관적이지 못하기 때문에 표준을 가지고 호환성 문제를 해결하기 위해 표준 문자집합인 ASCII가 만들어짐American S..
[System Design] 서버 확장, 로드밸런서, 그리고 무상태 아키텍처로 성능 최적화를 하는 방법
·
공부중
많은 애플리케이션의 확장 전력으로 수평적 확장을 많이 사용한다. 수평적 확장(Scale-out) 이란?수평적 확장은 수직적 확장과 반대되는 개념으로 수직적 확장은 하나의 서버를 사용하며 서버에 고사양 자원을 추가시켜 서버가 받을 수 있는 트래픽의 양을 늘린다. 예를 들면 RAM 추가 CPU 업그레이드 등과 같은 행위가 수직적 확장의 예시이다. 수평적 확장은 서버의 성능을 업그레이드 하지 않고 서버의 갯수를 증식시켜 더 많은 부하와 트래픽을 견디게 하는 방법이다.기존 1대의 서버를 운영하던 것을 더 많은 부하를 견디기 위해 물리적인 서버를 한대 더 추가하여 분산 트래픽을 이용해 서버의 부하를 줄이는 방식이다. 예를 들어, 서버가 초당 100만건의 트래픽을 받아 성능이 저하되는 경우, 수평적 확장을 고려하여..
[CS] 운영체제의 역할과 목표
·
공부중
운영체제 소개임베디드 시스템은 성능이 낮고, 메모리 크기가 작으며, 디스플레이 크기가 작아 특정 작업만 수행하는데, 여기에 사용하는 운영체제를 임베디드 운영체제 라고 부르며, 애플워치의 watchOS, 갤럭시 워치의 wearOS가 임베디드 운영체제에 해당한다.컴퓨터는 데이터로 이루어지고 이 데이터를 처리하고 출력 및 저장을 한다.컴퓨터가 데이터를 처리하면 의미있는 자료가 되는데 이를 정보라고 부르며, 데이터를 가공하여 가치있는 정보로 만드는 모든 기술을 IT라고 부른다 Information Technology운영체제는 모든 소프트웨어의 맨 위에 존재하는 최고의 소프트웨어이다.= 검사 디스크 조각 모음, 압축 프로그램과 같이 운영체제의 작업을 보조하는 역할의 소프트웨어가 등장하였고 이를 유틸리티 라고 부른..
[Git] Git에 대한 이해와 형상 관리 도구란?
·
공부중
Git 이란?Git은 간단하게 얘기하면 형상 관리 소프트웨어이다.명령어 단위로 이루어진 프로그램이다.Git 특징Git은 빠른 속도, 단순한 구조를 가지며 직관적이고 명확하다.분산형 저장소를 지원하며, 비 선형적 개발이 가능하다.많은 사람이 Git을 어렵게 느끼는 이유중 가장 큰 점은 협업에서 발생한다.Git을 단순 소스코드 버전관리 및 저장소 느낌으로 사용한다면 크게 어렵지 않다.Github기준으로 그냥 git add -> commit -> push해서 사용하면 크게 문제가 없을 것이다.이후 생성된 repository에서 그냥 clone하고 사용하거나 fork하거나 하면 되니까..단순하게 혼자 소스코드를 관리할래 라면 그냥 대충 찾아보고 써도 된다.하지만, Git은 위에도 말했듯이 형상 관리 도구 이다...
[CS,코딩테스트] 코딩테스트의 시간 복잡도에 관하여
·
공부중
시간 복잡도 표기법 알아보기 알고리즘에서 시간 복잡도는 주어진 문제를 해결하기 위한 연산 횟수를 말합니다. 일반적으로 수행시간은 1억 번의 연산을 1초의 시간으로 간주하여 예측합니다. 빅-오메가: 최선일 때의 연산 횟수를 나타낸 표기법 빅-세타: 보통일 때의 연산 횟수를 나타낸 표기법 빅-오: 최악일 때의 연산 횟수를 나타낸 표기법 예로, for loop를 0~100 까지 반복하는 코드가 있고, if 문을 통해 return하는 함수가 존재할때, 최선일 때 - 1회만에 바로 성공 - 빅-오메가 보통일 때 - 50회에 성공 - 빅-세타 최악일 때 - 100회 마지막에 성공 - 빅-오 코딩 테스트에서 사용하는 시간복잡도 유형 코딩 테스트에서는 빅-오 표기법을 기준으로 수행 시간을 계산하는 것이 좋습니다. 왜냐..
[CS] HTTP 메서드의 속성 및 활용 설계 예시
·
공부중
모든 개발자를 위한 HTTP 웹 기본 지식 | 김영한 - 인프런 김영한 | 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., [사진] 📣 확인해주세요!본 강의는 자바 스프링 완전 정복 시리즈의 세 번째 강의입니다. 우아한형제들 최연 www.inflearn.com HTTP 메서드 API URI 설계 가장 중요한 것은 리소스 식별이다. 회원을 등록하고 수정하고 조회하는게 리소스가 아니다. 회원이라는 개념 자체가 바로 리소스이다. 리소스는 어떻게 식별하는게 좋을까? 회원을 등록하고 수정하고 조회하는 것을 모두 배제 회원이라는 리소스만 식별하면 된다 → 회원 리소스를 URI에 매핑 리소스를 바탕으로 구현한 api는 어떻게 구분해야 할까? URI는 리소스만 식별한다. 리소스..
[POSTMAN] Access Token을 환경 변수로 설정하는 법
·
공부중/API
개발을 진행하는 중 바보처럼 ACCESS TOKEN이 만료되면 Refresh Token으로 새로운 ACCESS TOKEN 을 받아오는것 보다 우선순위의 개발이 있었다 보니 테스트시에 ACCESS TOKEN 을 직접 발급받아 사용하였습니다. 근데 모든 api 에 기본적으로 ACCESS TOKEN 검사를 하다보니 postman 요청할때 계속 새로받아서 입력하는게 귀찮아서 변수로 등록해놓고 사용하기 위해 찾아본 결과 POSTMAN 에서 자체적으로 변수설정이 가능하다는 걸 알게되었습니다. POSTMAN 환경변수 설정 1. 우측상단 눈모양 아이콘 클릭 2. 우측상단 Add 클릭 3. 필요한 변수 등록해서 사용 저는 ACCESS TOKEN이 필요해서 입력 여기서 type이 default랑 secret 두개가 있는데..
SSR과 CSR?
·
공부중/WEB
SSR( Server Side Rendering ) SSR - Server Side Rendering의 약자로 웹 페이지의 랜더링을 서버에서 처리하는 방식입니다. SSR의 랜더링 방식 SSR의 랜더링 방식은 다음과 같습니다. 1. 클라이언트, 사용자가 서버에 웹 페이지를 요청합니다. 2. 서버는 요청을 받고 필요한 데이터를 수집합니다. 3. html, css, javascript를 사용하여 웹 페이지를 랜더링합니다. 4. 랜더링된 html 페이지를 클라이언트에게 보냅니다. 5. 클라이언트는 받아온 완성된 html을 화면에 표시합니다. SSR의 장,단점 - 장점 서버 사이드 랜더링은 CSR에 비해 랜더링 속도가 빠릅니다. (이유는 마지막에) 그리고 검색 엔진이 콘텐츠를 쉽게 인덱싱하며, 검색 결과에 표시 ..