Functional Programming
함수형 프로그래밍의 요소들. 고계 함수. 일급 함수. 자기 자신만을 부르는 함수를 꼬리 재귀라고 한다. 멱등성 -> 같은 입력에 대해서 계속 동일한 출력이 나온다. 기존의 자바 코드는 선언형보다는 명령형.즉 코드를 어떻게 할거냐가 포커스고, 무엇을 할거냐가 아니다. 그래서 가독성도 함수형 프로그래밍 언어가 높다. 무엇을 할거냐를 보이기 때문에.
함수형 프로그래밍의 요소들. 고계 함수. 일급 함수. 자기 자신만을 부르는 함수를 꼬리 재귀라고 한다. 멱등성 -> 같은 입력에 대해서 계속 동일한 출력이 나온다. 기존의 자바 코드는 선언형보다는 명령형.즉 코드를 어떻게 할거냐가 포커스고, 무엇을 할거냐가 아니다. 그래서 가독성도 함수형 프로그래밍 언어가 높다. 무엇을 할거냐를 보이기 때문에.
packaging - jar, warwar 는 자바 웹어플리케이션 구조로 구축된 형태. WEB-INF 디렉토리를 가지고 있고 등등.. jar - java archive war - web application archive jar, war 차이점 찾아보기. spring boot 가 제공하는 첫번째 기능-> 프로젝트를 생성하기가 간편하다. dispatch
정적 팩토리 메서드 패턴을 활용할 때 나는 일반적으로 도메인 클래스 안에 다가 넣어두었다. 그렇게 하면 코드를 읽을 때 훨씬 심플하기 때문이였다. 1Response.from(Something something) {} Something 으로 부터의 Response 객체 라고 확 읽혀진다. 근데 문제점이 있었으니. 기본적으로 static으로
도커 활용하여 elasticsearch 설치 1docker run -d -p 9200:9200 -p 9300:9300 -it -h elasticsearch --name elasticsearch elasticsearch:7.9.3 버전 명시를 안하니까 docker hub 에서 이미지가 pull 이 안되었다. 1docker search elasticsear
Program.명령어, 코드 및 정적인 데이터의 묶음 Process실행 중인 Program운영체제로부터 시스템 자원을 할당 받는 작업의 단위. 프로세스의 4개의 메모리 영역stack -> 매개변수, 지역변수heap -> 동적으로 할당되는 메모리data -> 정적 변수, 상수 (jvm에서 method 영역)text -> 프로그램의 코드
TCP (Transfer Controler Protocol)UDP (User Datagram Protocol)전송계층 - 엔드 포인트간에 신뢰성있는 데이터 전송을 담당하는 계층.신뢰성 - 데이터를 순차적, 안정적인 전달. 전송 - 포트 번호에 해당하는 프로세스에 데이터를 전달.포트 번호에 맞는 프로세스를 찾아준다는 것. 이게 전송계층이 해주는 일이였구나.
튜닝의 시작 XPLAN을 통해서 실행 계획 일기. 12345SELECT *FROM HR.EMPLOYEESWHERE EMPLOYEE_ID LIKE '2%';SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(null, null, 'ALLSTATS LAST')); -> 이거가
데이터 베이스 -> 로그 스태쉬 -> 엘라스틱 서치 -> 키바나 엘라스틱서치는 jvm 위에서 동작하기 때문에 jdk 8 이상 있어야한다. 엘라스틱서치는 역색인 기능 덕분에 검색의 기능 관점에서는 RDB보다 훨씬 빠르다. 123456Elastic Search Relational DBIndex
캐쉬의 구조 2가지 형태 Look aside Cache메인은 DB이고 DB에서 캐쉬로 데이터를 가져와서 저장. 캐쉬에 데이터가 있으면 캐쉬 데이터를 사용하여 성능을 개선하고 없으면 디비에서 가져와서 다시 캐쉬에 저장.일반적인 구조 Write back캐쉬에 데이터를 특정기간 동안 먼저 저장하고 캐쉬에 있는 데이터들을 디비에 저장.휘발할 수 있는 가능성 있