그림은 좋은 소통수단이다. 문자보다 더 역사가 깊은 만큼 현대 사회에서도 그림은 강력한 소통수단이 된다.특히, 개발자들에게 있어서 그림은 중요하다고 생각한다. 개발자가 사용하는 그림 중 UML은 복잡한 시스템을 쉽게 이해할 수 있도록 표준화한 방식이다. 필자는 UML을 통해 협업에서 큰 도움을 얻었기에 지금도 팀원들과 소통할 때 많이 사용한다. (주로 개발 초기단계에 많이 사용) 필자의 경험을 기반으로 그림(UML)을 활용했을 때 좋은 점을 소개해보겠다.1. 서로가 다르게 이해하고 있는 부분을 초기에 빠르게 확인할 수 있다.당시에는 개발 초기단계였고, 웹 서비스의 흐름이 어떻게 동작하며 로직이 어떻게 수행되는지를 모두가 이해할 수 있기를 바랐다. 로직이 옳고 그름을 떠나서 일단 팀원들이 생각하는 그림이 ..
목차브라우저에 URL을 입력했을 때1. 로컬 PC의 hosts 파일 검색hosts 파일이란?디도스2. 로컬 DNS 캐시3. DNS 서버 쿼리로컬 DNS 서버상위 DNS 서버에 질의참고 자료브라우저에 URL을 입력했을 때크롬 브라우저에서 www.naver.com을 입력하면 어떠한 일이 벌어질까?우리에게는 1초도 안되는 시간이지만 그 사이에 많은 일들이 일어난다.먼저 https://whxogus215.tistory.com/126 에서 호스트 네임과 도메인 네임을 정리하였다.따라서 우리는 naver.com이라는 도메인 네임으로 접속을 하며, 그 중 www라는 이름을 갖는 서버의 리소스를 요청하게 되는 것이다.웹 서비스에서 서버에 리소스를 요청하는 HTTP 통신의 근간은 TCP/IP다. 따라서 사용자는 서버의 ..
목차스택(Stack)주의할 점큐(Queue)스택과 큐의 메서드 정리양방향 큐(Deque)ArrayDeque와 LinkedList의 성능 차이LinkedList의 특징ArrayDeque의 특징ArrayDeque와 LinkedList 비교 정리스택과 큐를 사용할 때는 Deque(ArrayDeque)를 사용하자스택과 큐의 활용스택의 활용큐의 활용참고 자료스택(Stack)스택의 핵심 키워드는 LIFO(Last In First Out)이다. 마지막(최근)에 들어온 값이가장 먼저 나가는 특징을 갖는 자료구조이다.refs) https://www.programiz.com/dsa/stack해당 그림만으로도 모든 흐름을 알 수 있다. 가장 나중에 들어온 3번이 pop(스택에서 값을 제거하는 연산)을 했을 때, 가장 먼저 ..
Network - 웹 서비스 구조 확장목차Network - 웹 서비스 구조 확장HTTP 1.0 시절 웹 서비스 통신클라이언트와 서버의 통신의 근간정적인 문서에 동적 요소를 추가 - JavaScriptJavaScript는 서버에서 생성되지만 클라이언트에서 실행된다(중요)CORS에 대해서WAS(Web Application Server)와 MVC 아키텍처의 등장서버에서 View 의존성이 제거되다참고 자료HTTP 1.0 시절 웹 서비스 통신버너스리가 고안한 HTML 문서는 화면에 필요한 정보를 구조화하여 보여줄 수 있는 최초의 기술이었다. 이를 통해, 사람들은 데이터를 문서에 작성하고, 이후에 이미지가 추가되며, 디자인을 입히는 CSS가 추가되기도 하였다. 어쨌든, 이러한 정적 파일을 사용자가 요청하면 반환할 ..
목차컨텍스트 스위칭이란CPU와 스레드의 비율에 따라 발생할 수 있는 상황들CPU 6개, 스레드 3개CPU 6개, 스레드 200개CPU 6개, 스레드 6개스레드가 처리하는 작업CPU-바운드 작업I/O-바운드 작업웹 어플리케이션에서의 스레드정리CPU 바운드 작업I/O 바운드 작업참고 자료컨텍스트 스위칭이란우리는 멀티 코어 환경에서 하나의 프로세스에서 여러 스레드가 동작하는 환경에 익숙해져있다.하지만 실제 스레드를 실행하는 실질적인 주체인 CPU(코어)에 비해 스레드가 더 많다면,결국 CPU 자원을 할당받지 못한 스레드는 대기 상태가 되어야 한다.하지만 운영체제의 스케줄링에 의해 대기 중이던 스레드는 다시 CPU에 의해 코드를 실행할 수 있다.이 일련의 과정을 통해 스레드들은 번갈아 가며 수행된다는 사실을 알..
Network - 웹 서비스 구조목차Network - 웹 서비스 구조URL과 URIURL의 특징호스트 네임과 도메인 네임호스트 네임도메인 네임서브 도메인과 호스트 네임참고 자료URL과 URI웹 기술을 사용하여 통신하는 웹 서비스의 흐름에 필요한 개념 중 하나이다.URL : Uniform Resource IdentifierURI : Uniform Resource Locator우리가 웹 서비스를 사용할 때, 변하는 모든 것들은 자원(Resource)이라고칭할 수 있다.마이페이지 조회 : 서버에게 내 정보라는 자원을 요청한다.콘서트 좌석 예매 : 서버에게 내가 보고 싶은 공연의 좌석이라는 자원을 저장할 것을 요청한다.결론부터 말하자면, URL은 URI이지만, URI는 무조건 URL이라 할 수는 없다.refs)..