기존에 약간 애매했던게 immutable 은 객체변화 감지를 단순화하게 하기 위해서 하는 목적도 있는데 그럼 store 가 매번 immutable 하게 갈아치워지는건가? 생각했었다. 하지만 그런 것이 아니라 redux 구현체의 원리를 보니 reducer 마다 합쳐서 combine reducer 를 해서 각 reducer 단위로 state 라는 녀석의 변화 감지를 하도록 되어 있다고 한다. 결국은 store 는 하나의 상태 저장소 라는 개념이고 단일 책임 원칙과 각 리듀서들을 통합해서 단순화한 하나의 상태 저장소라는 개념이다. 따라서 불변성이 지켜져야 하는 부분은 store 의 state 즉, reducer 마다 할당된 state 들 각각이 immutable 해야 한다. NGRX 는 service 단을 두..
Logstash 가 mysql 이나 csv, mongodb, Hadoop 같은 저장소로 부터 ElasticSearch 로 데이터를 필터링하여 저장해주고 Kibana 를 통해 이를 쉽게 분석 할 수 있다. Filebeat 는 tomcat log 나 db log 에서 값의 변화가 있을 때 마다 logstash 로 이를 전송해준다. Curator 는 ElasticSearch 에 크기 나 기간에 따라 과거 데이터를 삭제해주고 또한 백업 및 복구를 해줄 수 있도록 한다. https://www.elastic.co/downloads/beats/filebeat sudo vim /etc/filebeat/filebeat.yml # Paths that should be crawled and fetched. Glob base..
https://www.elastic.co/kr/downloads/logstash touch logstash_simple.conf input { stdin { } }output { stdout { }} sudo /usr/share/logstash/bin/logstash -f logstash_simple.conf touch logstash.conf input { file { path => "/home/thewavelet/populationbycountry19802010millions.csv" start_position => "beginning" sincedb_path => "/dev/null" }}filter { csv { separator => "," columns => ["Country","1980","..
https://www.elastic.co/kr/downloads/kibana sudo vim /etc/kibana/kibana.yml server.host: "localhost"elasticsearch.url: "http://localhost:9200" sudo service elasticsearch start sudo /usr/share/kibana/bin/kibana log [17:29:05.172] [warning][admin][elasticsearch] No living connections log [17:29:05.174] [warning][admin][elasticsearch] Unable to revive connection: http://localhost:9200/ netstat -a -n..
sudo add-apt-repository -y ppa:webupd8team/java sudo apt-get update sudo apt-get -y install oracle-java8-installer java -version https://www.elastic.co/downloads/elasticsearch sudo systemctl enable elasticsearch.service sudo apt install curl sudo service elasticsearch start curl -XGET localhost:9200 { "name" : "DZ7aqFh", "cluster_name" : "elasticsearch", "cluster_uuid" : "7RglH_kDQGaDcjEVlH1JMA"..
Estonia e-residency [등록방법] https://e-resident.gov.ee : 이곳이 홈페이지 이다. http://www.koreain.eu : 이곳은 한국말도 되어 있어 사용하기 편리하다. 등록시 이곳을 사용하자. 필요한 정보를 다 입력 후 결제를 하면 3주 정도 뒤에 발급되었다고 이메일로 연락이 올 것이다. 2017년도 말에 새로이 생긴 서울 사무소에서 수령이 가능하다. 한국 수령시 28.5 유로의 수수료가 있으니 추가 납입 준비가 필요.전 세계 에스토니아 대사관 및 영사관, 혹은 공식 지정 수령처에서 직접 수령하셔야 하며, 한국 내 지정 수령처는 VFS KOREA LLC-서울시 중구 소월로 10 단암빌딩 5층입니다. 단, 국내 수령 시 28.5 유로의 수수료가 발생됩니다. [최초..
spring boot jsp mybatis mariadb basic gradle with intellij ultimate https://start.spring.io/ 이곳에서 제공하는 스프링 부트 2.0.4, gradle, java, 웹, 시큐리티 등이 적용된 프로젝트 생성. IntelliJ 나 eclipse 에서 New > Project 시에 Spring Initializr 를 통해 생성할 수 있다. controller / domain / repository / service 의 패키지 명을 사용한다. controller 는 웹요청을 처리하는 컨트롤러 이다. domain 은 스프링 자바 프로그램 안에서 사용될 모델을 정의한 클래스 이다. repository 는 mapper 의 mybatis 매퍼 xml..
mariadb 공식 사이트 https://mariadb.com/ 이곳에서 pkg 를 다운받아 설치할 수도 있지만 (현재 기준 가장 최신버전은 맥용은 없어 한단계 낮은 버전) 설치하고 나서 동작도 손쉽게 제대로 안되고 .bash_profiles 도 수정해주어야 하고 나중에 삭제할 때도 파일을 일일이 지워야 하는 방식이라 추천하지 않는다. * homebrew 를 통해서 설치하면 깔끔하고 삭제도 깔끔하며 동작도 잘 된다. ruby 는 기본적으로 깔려있으므로 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 이 명령어를 통해 homebrew 를 설치한다. (홈브류 공식 사이트에 내용이 ..
nodejs 와 npm 이 설치되어 있다는 전제 하에 아래를 진행. npm install -g yarnnpm install -g @angular/cli@latestyarn global add @angular/cli@latest ng config -g cli.packageManager yarn ng new ng-yarn-test-project cd ng-yarn-test-project ng serve 참고: yarn global lsyarn --versionnpm --versionng --version 참조: https://medium.com/@beeman/how-to-do-x-in-angular-cli-v6-db7530c23066ng get / set 명령어가 ng config 로 변경되었다. get 은..
GIT 커밋 메시지 컨벤션 (이대로 할 필요는 없다. 대충 이런 방식이 있다는 정도 알아두면 된다.) AngularJS commit conventions1 AngularJS commit conventions2 type(scope): short summary BLANK LINE body BLANK LINE footer (Breaking Changes, Referencing Issues 올 수 있다) feat : 새로운 기능 추가 fix : 버그 수정 docs : 문서 관련 style : 스타일 변경 (포매팅 수정, 들여쓰기 추가, …) refactor : 코드 리팩토링 test : 테스트 관련 코드 build : 빌드 관련 파일 수정 ci : CI 설정 파일 수정 perf : 성능 개선 chore : 그 ..
http://www.eclipse.org/downloads/packages/ 이곳에서 JavaEE 버전을 다운로드 받는다. https://tomcat.apache.org/download-90.cgi 이곳에서 9 버전을 다운로드 받는다. spring 5 버전이 나오면서 최소 java 버전이 8 이상으로 되었다. 그리고 servlet 버전도 4.0 이 되었다.그에 맞는 tomcat 버전은 9 이다. 이렇게 legacy 된 것이지만 스프링 프로젝트를 생성한다. 하고나면 DescriptionResourcePathLocationTypeCannot read lifecycle mapping metadata for artifact org.apache.maven.plugins:maven-deploy-plugin:mave..
노드 제이 에스 공식 홈페이지의 다운로드 링크 중에 패키지 쪽 nvm 으로 설치하기 부분 https://nodejs.org/en/download/package-manager/#nvm To install nvm, use this script. 라고 된 링크를 클릭 시 다음으로 이동한다. https://github.com/creationix/nvm#install-script 해당 스크립트의 메뉴얼을 보면 아래와 같이 nvm 을 설치하라고 설명해준다. 다음 명령어를 통해서 nvm 설치 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash 현재 시점 (2021-03-20) 아래와 같이 버전업이 되었다. 아래에 ~/..