일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- EUREKA
- 스프링
- 비동기
- 코딩테스트
- spring boot
- leetcode
- 유레카
- map()
- IntelliJ
- 스프링 클라우드
- map
- Java
- GIT
- Spring Cloud
- 프로그래머스
- JavaScript
- STS
- 자바스크립트
- OAuth
- JS
- jQuery
- gitlab
- 스프링부트
- spring security
- 도커
- 자바
- Spring
- SpringBoot
- date
- docker
- Today
- Total
목록전체 글 (110)
RATSENO
TreeSet은 이진 트리(binary tree)를 기반으로한 Set 컬렉션 입니다. 하나의 노드는 노드값인 value와 왼쪽과 오른쪽 자식노드를 참조하기 위한 두 개의 변수로 구성됩니다. TreeSet에 객체를 저장하면 자동으로 정렬되는데 부모값과 비교해서 낮은 것은 왼쪽 자식노드, 높은 것은 오른쪽 자식노드에 저장합니다. TreeSet을 생성하기 위해서는 저장할 객체 타입을 파라미터로 표기하고 기본 생성자를 호출하면 됩니다. TreeSet treeSet = new TreeSet(); String 객체를 저장하는 TreeSet은 다음과 같이 생성할 수 있습니다. TreeSet treeSet = new TreeSet(); Set 인터페이스 타입 변수에 대입해도 되지만 TreeSet 클래스 타입으로 대입한..
HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션입니다. HashMap의 키로 사용할 객체는 hashCode()와 equals() 메서드를 재정의해서 동등 객체가 될 조건을 정해야 합니다. hash값이란? hash는 '으깨다'라는 뜻으로, Hash는 Hash Table을 이용하여 데이터를 저장한다. 각 객체가 다른 코드값을 int로 생성해 인덱스로 사용하는데 이 알고리즘을 구현한 메소드를 Hash Method라고 하며 Hash Method에 의해 반환된 데이터 고유의 숫자 값을 Hash Code 라고 한다. 자바의 모든 클래스가 상속하고 있는 Object에는 hashCode()라는 메소드가 있다. (객체의 주소값같은 데이터라고 생각하자) 그래서 문자열의 hashCode() 메소드는 같은 ..
Map 컬렉션은 키(key) 와 값(value)으로 구성된 Entry 객체를 저장하는 구조를 가지고 있습니다. 여기서의 키와 값은 모두 객체입니다. 키는 중복 저장될 수 없지만 값은 중복 저장될 수 있습니다. 만약 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대치됩니다. Map 컬렉션에는 HashMap, Hashtable, LinkedHashMap, Properties, TreeMap 등이 있습니다. 다음은 Map 컬렉션에서 공통적으로 사용 가능한 Map 인터페이스의 메소드들입니다. 키로 객체들을 관리하기 때문에 키를 매개값으로 갖는 메소드가 많습니다. 기능 메소드 설명 객체 추가 V put(K key, V value) 주어진 키와 값을 추가, 저장되면 값을 리턴 객..
이전 포스팅 [Spring] Spring Cloud Netflix - Eureka[1] [Spring]Spring Cloud Netflix - Eureka[2] [Spring]Spring Cloud Netflix - Eureka[3] 를 토대로 Neflix API GATEWAY 인 Zuul에 대해서 알아보겠습니다. API GATEWAY란? Microservice Architecture(이하 MSA)에서 언급되는 컴포넌트 중 하나이며, 모든 클라이언트 요청에 대한 end point를 통합하는 서버입니다. 마치 프록시 서버처럼 동작합니다. 그리고, 인증 및 권한, 모니터링, logging 등 추가적인 기능이 있습니다. 모든 비즈니스 로직이 하나의 서버에 존재하는 Monolithic Architecture와 ..
이전 포스팅 [Spring]Spring Cloud Netflix - Eureka[1] [Spring]Spring Cloud Netflix - Eureka[2] [Spring]Spring Cloud Netflix - Eureka[3] 에 이어서 클라이언트 로드 밸런서인 Ribbon에 대해서 알아보겠습니다. 로드 밸런싱(load balancing)이란? 간단하게 설명하면 한대의 서버에 몰리는 부하를 분산시키는 것입니다. 기존의 서버 사이드 로드 밸런싱은 L4스위치(H/W)를 이용합니다. 4계층의 Port를 이용하여 트래픽을 여러 서버에게 분산해줍니다. 하지만 위에 구조는 몇가지 문제점이 있습니다. 서버사이드 로드밸런서를 위해 L4 스위치와 같은 장비 H/W가 필요합니다 위의 이유 때문에 비용과 유연성의 부담..