분류 전체보기 (212) 썸네일형 리스트형 [Coursera Google] The Network Layer - Routing 모든 인터넷 네트워크에 걸쳐 통신이 이루어지는 방법은 라우팅을 통해서다. 목표 라우팅의 기본과 라우팅 테이블의 작동 방식 이해 라우팅 프로토콜의 일부와 프로토콜이 수행하는 작업을 정의 매우 기본적으로는 라우터는 트래픽의 대상 주소에 따라 트래픽을 전달하는 네트워크 장치다. 라우터는 그 두 개의 네트워크에 연결 되어야 하기 때문에 적어도 두 개의 네트워크 인터페이스를 가지고 있는 장치다 기본 라우티의 단계는 이렇다 라우터 인터페이스들 중 하나가 데이터 패킷을 수신한다. 라우터는 이 패킷의 대상 IP를 검사한다. 라우터는 라우팅 테이블에서 이 IP 의 대상 네트워크를 찾는다 라우터는 원격 네트워크에 가장 가까운 인터페이스에 패킷을 포워드 한다. 이 단계들이 목적지에 도달 할 때 까지 반복된다. 두 네트워크에.. [Coursera Google] The Network Layer - Subnetting Subnetting 은 큰 네트워크를 많은 소규모 서브넷으로 분할하는 광정이다. 목표 서브넷이 필요한 이유 서브넷 마스크가 네트워크와 호스트 ID 만으로 가능한 것을 어떻게 확장시키는지 CIDR 기술이 어떻게 일반 서브넷보다 많은 유연성을 제공하는지 클래스 A 의 9 아이피 주소를 IBM 사가 가지고 있다고 했을때 9.100.100.100.100 과 통신하려면 네트워크 ID 를 보고 네트워크를 담당하는 게이트웨이 라우터로 메시지를 라우트한다. 일단 패킷이 9.0.0.0 클래스 A 네트워크를 위한 게이트웨이 라우터에 도달하면, 그 라우터는 이제 호스트 ID 를 보고 데이터를 적절한 시스템으로 가져가야 한다. 하지만 클래스 A 에는 너무 많은 네트워크 장치들이 있다. 그래서 여기서 서브넷팅이 이루어 진다. .. [Coursera Google] The Network Layer LAN 에서 노드는 MAC 주소를 통해 서로 통신을 할 수 있다. 스위치가 서로 연결 된 MAC 주소를 알고 있어 전송을 적절하게 전달 할 수 있기 때문이다. 하지만, 특정 MAC 주소가 어느 시점에 어느 위치에 있는지 알 수 있는 방법이 없기 때문에 장거리 네트워크에서는 이상적인 방법이 아니다. 그래서 필요한게 네트워크 계층이다. 네트워크 계층과 함께 오는 IP 를 알아보자 목표 IP 주소를 식별 할 수 있다. 이더넷 프레임의 페이로드 내부에 IP 데이터그램이 캡슐화 된 방법을 알 수 있다. IP 데이터그램의 필드를 설명 할 수 있다. IP 주소는 4개의 octets 으로 구성된 32 비트 길이의 숫자다. 각 octets 은 십진수로 설명이 되고 8비트 데이터는 0부터 255 까지의 숫자를 나타낸다. .. kubernetes - kubernetes 란? 컨테이너화 된 오프로드와 서비스를 관리하는 오픈소스 플랫폼이다 쿠버네티스를 이해하기 위해 전통적인 방식의 서버 배포와 vm 을 이용한 서버 배포와 컨테이너를 이용한 서버 배포방식을 비교해 보자 전통적인 방식은 물리 서버에서 어플리케이션을 올려서 사용하는 방식인데 여러개의 어플리케이션을 동시에 한 물리 서버에서 올릴 경우에는 한 어플리케이션이 리소스를 많이 사용하고 있으면 다른 어플리케이션에 성능 저하가 발생한다. 이걸 해결 하기 위해선 여러 물리서버를 둬서 각 서버마다 하나의 어플리케이션을 두는건데 이 경우엔 리소스가 낭비가 되고 서버 비용이 많이 발생하게 된다. vm 을 이용한 방식은 리소스를 더 효율적으로 사용할 수 있다. 단일 물리서버에서 여러 vm 을 열 수 있고 어플리케이션 끼리 공유 할 수 없.. ElasticSearch - 텍스트 정렬 엘라스틱 서치에서 Text 필드를 정렬 하려고 하면 Set fielddata=true on ' ' in order to load fielddata in memory by uninverting the inverted index. 와 같은 에러가 발생을 한다. 대부분의 필드 들은 doc_values 를 인덱스 로 사용하지만, text 필드는 doc_values 를 지원하지 않고 fielddata라는 인 메모리 구조의 쿼리 타임을 사용한다고 한다. 이 field data는 디스크의 세그먼트의 역 색인을 읽어 결과를 JVM 힙 메모리에 저장을 하는데 이 비용이 굉장히 커서 기본적으로 false 로 되어있다. 따라서 text 필드로는 정렬을 하기 힘든데, 이 부분을 해결하기 위해선 Multifield 를 사용 하.. 스프링 MVC - 그 외 다양한 어노테이션들 DataBinder - @InitBinder InitBinder 를 사용하면 바인딩 설정, 포메터 설정, Validator 설정을 할 수 있는데, 바인딩 설정을 하면, 원하는 값을 허용하거나 거부하거나 설정을 할 수 있다. Validator 는 객체 위에 @NotBlank 이런 어노테이션으로는 할 수 없는 커스텀한 검증을 하고 싶을때 커스텀 Validator 를 생성 할 수 있다. 이런식으로 커스텀한 Validator 를 만들 수 있다. supports 에 커스텀할 객체를 설정하고, validate 에 실제 검증할 로직을 적어준다. addValidators 에 넣어주면된다. 아니면 , Validator 자체를 빈으로 등록하고 , (@Component) 이런식으로도 검증할 수 있다. 이런식으로 쓸 경우에는.. 핸들러 메소드 - 응답 데이터 @RequestBody 요청 본문에 있는 데이터를 메시지 컨버터를 이용해서 변환된 타입으로 받을 수 있다. 요청 Body 로 들어온 데이터를 Event 객체로 컨버트 를 하려고 한다 이때 사용되는게 HttpMethod Converter 기본적으로 여러개 가 등록 되어 있다. 핸들러 어댑터가 메시지 컨버터를 이용해서 아규먼트를 요청을 컨버팅 한다 HttpEntity HttpEntity 를 쓰면, RequestBody 와 다른 점은 요청 헤더 정보도 얻을 수 있다는 것 데이터 검증과 BindingResult로 에러도 받아 올 수 있다. @ResponseBody 핸들러에서 return 하는 값을 http 응답 본문에 담아 준다. requestBody 처럼 응답할때 메시지 컨버터를 이용해서 응답한다. Respo.. 핸들러 메소드 - 세션 데이터 @SessionAttributes row 하게는 HttpSession 을 이용해서 사용할 수도 있다. 만약 SessionAttributes 를 쓰면 이름에 해당하는 model attribute 를 세션에 넣어준다. (SessionAttribute 와는 굉장히 다르다) 세션을 왜 넣어서 사용하냐 하면 여러 페이지에 걸쳐서 요청을 받았을때, 세션에 있는 값도 @ModelAttribute 를 통해서 객체에 값이 들어가게 된다. @SessionAttribute 세션으로 저장되어 있는 데이터를 가져 올 수 있다. HttpSession 과 다른 점은? HttpSession 으로 받은 데이터는 데이터 타입이 Object 로 나오게 된다. 타입 변경 하기가 훨씬 쉽다. @RedirectAttributes Redirec.. 이전 1 ··· 13 14 15 16 17 18 19 ··· 27 다음 목록 더보기