목록공부한 내용정리/기타 (11)
JinHee's Board

개요 Nifi에서 특정 기능을 활용해야 하는 일이 생겼으나 해당 기능은 Nifi에서 Processor로 제공하지 않는것 같다 Custom Processor를 직접 만들어 해당 기능을 구현하고 내용을 기록하고자 한다 참고한 링크 GitHub - apache/nifi: Apache NiFi Apache NiFi. Contribute to apache/nifi development by creating an account on GitHub. github.com Nifi Processor 프로젝트 생성 및 배포 (feat. Maven) Maven Archetype으로 NiFi Processor 프로젝트 생성하기 Maven Archetype은 Maven 프로젝트 템플릿을 생성하는 tookit입니다. 이 툴킷으로 ..

Project - Socket과 ElasticSearch 를 활용한 채팅 사이트 개발일지 [3] 구현 결과 로그인시 현재 참여중인 채팅방 목록 표시 사용자간의 채팅 구현 채팅방 목록 표시 Elastic Index 생성 ( 채팅방 목록 ) 채팅방 구분에 필요한 키와 그 외의 데이터를 담을 인덱스를 생성한다. 인덱스 생성에 필요한 매핑을 설정한다. ( 필드 타입 지정 등.. ) PUT chat_room { "mappings" : { "properties" : { "room_date" : { "type" : "date", "ignore_malformed" : true }, "room_id" : { "type" : "text", "fields" : { "keyword" : { "type" : "keyword" ..

Project - Socket과 ElasticSearch 를 활용한 채팅 사이트 개발일지 [2] 구현 결과 메인 화면 및 로그인 , 회원 가입 기능 구현 프로젝트 개발 ( Front ) React App(Front) 에 Router를 적용하는 작업 수행 - React Router 설치 npm i react-router-dom@5.3.0 - App.js 파일 수정 import React from 'react'; import io from "socket.io-client"; import { BrowserRouter as Router, Switch, Route, Link } from "react-router-dom"; import Login from "./routes/Login" function App() {..

Project - Socket과 ElasticSearch 를 활용한 채팅 사이트 개발일지 [1] 구현 결과 메인 화면 및 로그인 , 회원 가입 기능 구현 채팅방 하나를 임시로 만들고 두 사용자 간의 채팅 구현 (우선 Node로 구현 예정) React 프로젝트와 Node 프로젝트 연동 기존의 Node 프로젝트 하나에 Back단과 Front단이 모두 하나의 프로젝트에 있었지만 이번 프로젝트에서 React 프로젝트를 생성하면서, Back단과 Front단을 분리했다. 프로젝트 개발 - React 프로젝트 생성 및 NPM 설치 ( Front ) npx create-react-app eschat-react-project(프로젝트명) npm install socket.io npm install socket.io-cl..

개요 교육받는 기간에 파이널 프로젝트로 제출했던 그룹웨어 프로젝트에서 개발한 채팅 기능을 좀더 정리하여 기록한다. 프로젝트 변경 목표 - Node.js 로 개발된 채팅기능을 React.js로 새로 개발한다. - Oracle DB와 연동하여 활용했던 채팅기능을 ElasticSearch로 변경하여 적용한다. - 개발완료된 부분은 git command로 항상 commit 한다. 프로젝트 생성 및 준비 NPM 설치 npm init npm install express npm install http npm install fs npm install elasticsearch npm install socket.io npm install app-root-path GIT remote git init git add * git..

개요 Apache Spark와 OpenSearch 자바로 연동시 발생하는 문제를 해결하는 과정을 기록하고자 한다. 문제확인 Opensearch는 엘라스틱에서 서비스하는 Elasticsearch 오픈소스를 포크(코드를 복사)하여 만든 AWS판 ElasticSearch 다. Spark와 Elasticsearch를 Java를 통해 연동하는 과정에 있어 사용하던 Elasticsearch를 Opensearch로 교체해야 할 일이 생겨 교체했는데 이후 잘만 실행되었던 Spark가 실행되지 않는 문제가 생겼다. 오류메시지 Elasticsearch를 연동하고 있었을때는 오류가 없었으나 Opensearch로 연동한 다음 이와 같은 오류가 발생했다. 눈여겨볼점은 (No search type for [scan]) 이라는 메..

개요 대용량의 CSV 파일을 Elasticsearch에 적재하고자 할때 Logstash를 사용하여 적재작업을 했는데 이때 CSV 파일의 데이터를 일부 변환하는 Logstash의 ruby플러그인에 사용되는 키워드들을 기록한다. 준비 - ELK Stack (Elasticsearch, Logstash, Kibana) 설치 - 적재할 데이터 (csv) 사용된 데이터 링크 한국교통안전공단_사업용차량 Trip단위 위험운전운행데이터(샘플)_20191227 한국교통안전공단에서 수집관리하고 있는 트립단위의 위험운전행동데이터 샘플입니다. (운행일자, 운수회사코드 등) 운행기록과 관련된 데이터는 대용량데이터로 샘플데이터만 업로드 www.data.go.kr 과정 Logstash 정상 작동 테스트 1. Elasticsearch..

개요 OpenApi를 사용하여 데이터들을 추출하고 추출한 데이터를 파싱 및 데이터베이스에 삽입해야 할 일이 생겼다. Nifi에서 OpenApi를 어떤식으로 사용해야 데이터를 추출할수 있는지 등을 알아보고 그 내용들을 기록하고자 한다. 참고한 링크 Apache Nifi HTTP/HTTPS 연결. SSL 연결하기 | Apache Nifi로 작업을 하다보면 웹 사이트에서 컨텐츠를 가져 오거나 다양한 REST API를 통해서 JSON, XML, TXT 형태로 데이터를 가져와야 하는 일이 있다. 이러한 방법에 대해서 알아 보며 brunch.co.kr Nifi에서 OpenApi를 활용하는 방법들을 설명한 위 링크를 참고했다. Nifi에서 Api 호출하여 데이터 불러오기 - 사전준비 호출하고자 하는 OpenApi의 ..

개요 nifi를 서버에 올려서 사용할 때 http://아이피:포트/nifi 만으로 접속이 가능한데 이 접속을 조금더 까다롭게 하기 위해 nginx를 사용하여 접속링크를 바꾸는 방법을 기록한다. 사전준비 - NGINX 설치 [CentOS 7] CentOS 7 - NGINX 설치 방법 CentOS 7 버전에 Nginx 설치 방법 정리 요약 yum 외부 저장소 추가 yum install 방화벽 포트 개방 nginx 포트 설정 nginx 데몬 실행 실행 1. yum 외부 저장소 추가 yum 저장소에는 nginx가 없기 때문에 외부 저장.. holjjack.tistory.com 더보기 yum 저장소에는 nginx가 없으므로 직접 추가 필요 # cd etc/yum.repos.d/ # vi nginx.repo ngi..

--2018.11.25년도에 작성되었던 글을 옮겨왔습니다-- 학교에서 보안수업을 듣는데 얼마전에 RSA 암호화를 파이썬으로 직접 코딩해보고 간단하게 예시를 통해 암호화 과정을 설명하라는 과제가 나왔습니다. RSA 암호화는 암호화 하는데 사용하는 키와 복호화하는데 사용하는 키가 서로 다른 비대칭 암호화 방식이라 합니다. 즉 공개키로 암호화한 문서는 공개키로 복호화 할 수 없고, 대신 개인키로만 복호화 가능한 암호화 방식입니다. 먼저 암호화 과정에서 쓰이는 알고리즘들을 정의해 보았습니다. def encrypt(pk, text): key, n = pk cipher = [(ord(char) ** key) % n for char in text] return cipher (암호화(encrypt) ..
디자인 패턴 소프트웨어의 개발 방법을 공식화 한 것, 규칙, 구현자들 간의 커뮤니케이션 효율성을 높이는 기법 MVC(Model - View - Controller) 웹 어플리케이션을 개발할때 각각의 역할 별 작업이 가능하도록 분담하는 설계 패턴을 의미 MVC MODEL1, 2의 차이와 요청처리 과정 MODEL1 View와 데이터 처리과정이 모두 JSP파일 하나에서 실행됨 장점: 구조가 단순하여 익히기 쉽다. 단점: 화면 출력과 데이터 처리가 모두 한 페이지에 담겨있어 코드가 복잡해진다 MODEL2 사용자가 Controller를 조작하면 Controller는 Model을 통해서 테이터를 가져오고 그 정보를 바탕으로 View에서 시각정보로 처리한다 요청이 들어오면 요청에 대한 로직처리는 Model의 Serv..