목록전체 글 (531)
개발놀이터
프로세스와 스레드의 차이에 대한 면접질문은 신입 개발자에게 단골 질문이라고 알려져 있습니다. 이 둘은 다른 듯 비슷해 보여서 헷갈리기 쉬운데 이번 포스팅에선 이 둘의 차이와 더 나아가 멀티프로세싱, 멀티스레딩과 더불어 이 둘을 언제 사용하면 좋을지까지 포스팅합니다. Process 프로세스는 실행된 프로그램의 인스턴스입니다. 우리가 프로그램을 실행할 때 이 프로그램이 직접적으로 실행되는 것이 아니라 프로그램을 실행하기 위해 필요한 스텝들을 거친 뒤 실행이 됩니다. 이렇게 실행을 위해 필요한 스텝들이 바로 프로세스 즉 과정입니다. 프로세스는 한번에 여러개의 일을 수행하기위해 다른 프로세스를 만들 수 있습니다. 이렇게 만들어진 프로세스들은 클론 프로세스 혹은 자식 프로세스라고 부르죠. 메인 프로세스는 부모 프..
https://coding-review.tistory.com/345 여태까지 공부한 데이터베이스 면접질문 / 답변 https://coding-review.tistory.com/344 여태까지 공부한 Spring 면접질문 / 답변 https://coding-review.tistory.com/343 여태까지 공부한 Java 면접질문 / 답변 4부터 시작하는 것은 넘어가주시길 바랍니다... 따로 정리 coding-review.tistory.com 위의 포스팅과 이어집니다. 58. TCP와 UDP의 차이 TCP는 연결 지향형 프로토콜이고 UDP는 데이터를 데이터그램으로 전송하는 프로토콜입니다. TCP는 연결형 서비스를 지원하고 가상회선 연결을 지원하기 때문에 전송이 양방향으로 이루어질 수 있는 전이중 방식과 각..
https://coding-review.tistory.com/344 여태까지 공부한 Spring 면접질문 / 답변 https://coding-review.tistory.com/343 여태까지 공부한 Java 면접질문 / 답변 4부터 시작하는 것은 넘어가주시길 바랍니다... 따로 정리하면서 공부한거라 Java 면접질문이 아닌 123번을 제외하고 4번부터 수 coding-review.tistory.com 위의 포스팅과 이어집니다. 46. 데이터베이스 인덱스에 대해서 설명해주세요. 데이터베이스 인덱스는 조회 성능을 향상시켜주는 데이터베이스 튜닝 방식 중 하나입니다. 하지만 실질적인 성능 향상을 위해서라면 인덱스가 사용된 컬럼인지 카디널리티나 셀렉티비티같은 구성 요소들이 고려된 인덱스인지 확인해야합니다. 47...
https://coding-review.tistory.com/343 여태까지 공부한 Java 면접질문 / 답변 4부터 시작하는 것은 넘어가주시길 바랍니다... 따로 정리하면서 공부한거라 Java 면접질문이 아닌 123번을 제외하고 4번부터 수록했습니다. 꼬리질문에 대한 답변도 수록했기 때문에 조금 길게 coding-review.tistory.com 위의 포스팅과 이어지는 내용입니다. 1. 스프링이 어떻게 트랜잭션을 추상화했나요? / 왜 추상화 했나요? 트랜잭션이 데이터 접근 기술마다 다른 현상이 발생했습니다. 예를 들어서 JDBC에서 JPA로 기술을 확장하기 위해서 그에 따른 모든 트랜잭션 코드들을 바꿔야했습니다. 이를 해결하고자 스프링에서는 플랫폼트랜잭션매니저 라는 것으로 모든 트랜잭션 코드들을 추상화..
4부터 시작하는 것은 넘어가주시길 바랍니다... 따로 정리하면서 공부한거라 Java 면접질문이 아닌 123번을 제외하고 4번부터 수록했습니다. 꼬리질문에 대한 답변도 수록했기 때문에 조금 길게 느껴질 수 있습니다. 이 글을 보고 면접질문을 공부하실 분들은 우선 질답을 외우고 (저와 똑같이 안외워도 됩니다) 따로 찾아서 공부하시고 꼬리질문도 생각해보시면 좋을 것 같습니다. 4. OOP가 뭔가요? OOP는 객체지향 프로그래밍의 약자로서 데이터를 객체로 취급하여 프로그램에 반영하고, 순차적으로 프로그램이 동작하는 것이 아니라 객체와 상호작용을 통해 프로그램이 동작하는 것을 말합니다. 이렇게 객체를 연결시켜 프로그래밍하게 되면 캡슐화, 다형성, 상속을 통해 코드의 재사용성을 높이고 유지보수를 줄여준다는 장점이 ..
나는 이 책을 유튜버인 '너 진짜 똑똑하다' 님의 영상을 보고 추천받아서 읽기 시작했다. 이 책의 첫 인상은 생의 1/4 승강장에 도착한 어린 어른을 위한 심리학이라는 표제이다. 20대 / 40대 / 60대 / 80대 사회에 던져진 후 겪게 되는 네개의 단계 중 첫 번째 단계에 들어선 어린 어른들을 위한 심리학이라는 뜻이다. 저자는 도입부에서 가장 힘든 세대는 어디일까? 에 대한 대답으로 자신있게 20대라고 피력한다. 그러고보니 20대는 갑자기 사회에 툭 하고 떨어진 세대이다. 기성세대는 의무교육이라는 이름아래 청소년들을 가르치지만 시험에서 높은 점수를 받는 방법이나 사회성을 길러줄지언정 정말로 사회에서 필요한 기술들은 가르쳐주지 않는다. 예를 들어서 부모로부터 독립할 때 부동산은 어떻게 처리해야 하는지..
이번 포스팅에선 흔히 SSL handshake로 알려져있는 프로토콜에 대해서 알아보도록 하겠습니다. 여러분이 HTTPS URL을 사용한 적이 있으시다면 SSL handshake를 반드시 진행했을겁니다. SSL handshake의 목적은 서버와 클라이언트간 통신에서 데이터 무결성과 클라이언트의 프라이버시를 지켜주기 위한 것입니다. 포스팅에 진행하기 앞서 공개키 암호화에 대한 내용을 알고 계시면 더 나은 이해가 될 것 같습니다. 아래의 링크를 통해 공개키 암호화에 대한 내용을 확인하시면 됩니다! https://coding-review.tistory.com/329 공개키 암호화 이번 포스팅에서는 공개키 암호화에 대해서 알아보도록 하겠습니다. 공개키 암호화는 개인키 암호화와 묶여서 설명이 가능한데요. 보통 공개..
이번 포스팅에서는 TCP 3 way handshaking에 대해서 알아보도록 하겠습니다. TCP 3 way handshake는 두개의 장치가 연결을 수립하고 해제하는 단계인데요. 이렇게 통신 하는 것이 통신에대한 신뢰성이 올라가기 때문입니다. 이름이 handshake인 이유는 두 사람이 지인으로 발전하게 되는 첫 단계가 악수이기 때문이지 않을까 하는 개인적인 생각입니다. 그럼 시작해보죠! TCP 3 way handshake 3 way handshake는 서버와 클라이언트가 연결하는 TCP / IP 네트워크 매커니즘입니다. 실제 데이터가 오가기 전에 클라이언트와 서버가 Synchronization과 Acknowledgment 패킷을 주고받는 과정이라고 생각하시면 됩니다. TCP Segment 구조 모든 T..
Q. 검색창에 google.com을 검색하면 벌어지는 일을 OSI 7계층 / TCP 4계층와 연관지어 설명해주세요 A. google.com을 검색하면 브라우저는 TCP 4계층인 애플리케이션 계층의 DNS 캐시 레코드에서 URL과 상응하는 IP 주소를 찾습니다. 만약 요청된 URL이 캐시에 없으면 ISP의 DNS서버는 google.com을 호스팅하고 있는 서버의 IP 주소를 찾기위한 DNS쿼리를 날립니다. 그리고 그 후 브라우저는 TCP 3계층인 전송계층의 TCP 연결을 시작합니다. 연결이 끝난 후 브라우저는 HTTP 요청을 보내고 서버는 요청과 돌아오는 응답을 핸들링합니다. 웹 서버는 HTTP응답을 보내고 브라우저는 HTML문서 결과를 보여줍니다.