전체 글(175)
-
[Kafka_CDC]_Kafka CDC 구현_(1단계- 설계)
구축 목표 실시간으로 DB의 데이터가 변할 때 kafka 를 통해 consumer 에게 메세지 보내기. 구현 기술 CDC : Change Data Capture 실시간 데이터 캡쳐 CDC를 사용하기 위해서는 DB를 바라보는 Kafka connect가 필요하다. 구글링 결과 MongoDB 에서 지원하는 MongoDB Kafka Connector 가 있고 https://www.mongodb.com/docs/kafka-connector/current/ MongoDB Kafka Connector — MongoDB Kafka Connector Docs Home → MongoDB Kafka ConnectorThe MongoDB Kafka connector is a Confluent-verified connector..
2022.04.13 -
[Docker]_MongoDB 설치 후 Robo 3T 연결(feat. docker-compose)
1. MongoDB 설치] Docker 를 이용하여 MongoDB를 설치하였습니다. docker 설치는 다음 포스트 참고 https://yn971106.tistory.com/73?category=1003066 [Docker]_Infra 구축_(feat. Centos7, wsl2) 목표 ] Window 환경에서 CentOS7 을 WSL2 환경에 실행후 해당 CentOS7 안에 Docker 실행하기. Docker 란? 경량 가상화 기술이며 리눅스 컨테이너를 기반으로 이미지를 기준으로 프로세스를 격리하여 yn971106.tistory.com 도커 이미지 가져오기] $ docker pull mongo 지금 가져온 전체 이미지 확인하기] $ docker images container 생성 및 실행] $ docke..
2022.04.11 -
[Kafka]_실전 응용 환경 적용_(kafka 1대, consumer,producer 분리)
개발환경] 서버 : wsl2로 설치한 Centos , Window * virtual box 로 Linux 설치하여도 무방함 Zookeeper 실행 -> Centos 서버 Kafka 서버 실행 -> Centos 서버 Consumer, Producer -> window 서버 구상도] 위의 Ip 는 가상이며, Cluster 의 경우 서버가 총 3대 이상이 필요하다, 필자는 한대만 사용하였고, kafka 와 zookeeper 는 같은 Ip 주소를 가지는 Centos 에서 실행함. Consumer 와 Producer 도 같은 Ip를 가지는 window 환경에서 접근한다 , Consumer 와 Producer 는 다른 Ip 여도 접근방법은 동일함. wsl2 로 window 환경에서 설치하는 방법은 다음 포스트 참고..
2022.04.06 -
[Kafka]_설치 와 메세지 전송 테스트
개발환경] 서버 : wsl2로 설치한 Centos * virtual box 로 Linux 설치하여도 무방함 zookeeper , kafka , producer , consumer 전부 하나의 centos 에서 실행함 wsl2 로 window 환경에서 설치하는 방법은 다음 포스트 참고 https://yn971106.tistory.com/73?category=1003066 [Docker]_Infra 구축_(feat. Centos7, wsl2) 목표 ] Window 환경에서 CentOS7 을 WSL2 환경에 실행후 해당 CentOS7 안에 Docker 실행하기. Docker 란? 경량 가상화 기술이며 리눅스 컨테이너를 기반으로 이미지를 기준으로 프로세스를 격리하여 yn971106.tistory.com ----..
2022.04.06 -
[Kafka]_Kafka 의 개념과, 사용 의의
Kafka 소개] 2011년 LinkedIn에서 개발된 분산 메시징 시스템이며 2014년 아파치를 통해 오픈 소스화 주요기능] Producer : 메시지를 보내는 자 consumer : 메시지를 받는자 의 모델로 이루어저 있다 고가용성& 안정성 -> 파일시스템에 메시지를 저장하기 때문에 별다른 설정 없이 영속성 보장 확장성 -> 3대의 브로커로 시작해 수십대의 브로커 확장 가능 디스크 순차 저장 및 처리 분산 처리 -> 메시지 분산 처리로 인해 단일 시스템보다 높은 성능 특징] 메시지를 메모리에 저장하지 않고 파일 시스템에 저장 TCP 기반의 Protocal을 사용하여 오버헤드 감소 컨슈머 그룹이라는 개념을 도입하여 큐와 발생/구독 모델을 모두 지원함 스트리밍 플랫폼을 구성하는 노드에 문제가 생기더라도 ..
2022.04.06 -
[포트폴리오 페이지]_8단계_로그인 기능구현_(feat.oracleDB)
[환경] 개발툴 : IntelliJ DB : oracle 프레임워크 : spring , mybatis ---- 개발 목표 : 로그인 기능 만들기 해당 화면에서 데이터베이스에 저장되어있는 아이디와 비밀번호를 가지고 있을 시 해당 화면으로 전환되도록 함. 또한 로그아웃 버튼 클릭시 로그아웃되는 처리까지 진행 JSP 부분] logout.onclick = function(){ $globalStorage.setValue("loginUser",""); location.reload(); } $('.submit-btn').click( async function (){ let id =idtext.value; let pw =pwtext.value; let result = await fetch('/join/authlogin..
2022.04.03 -
[포트폴리오 페이지]_10단계_CRUD 게시판 구현_(feat.등록기능 구현)
[환경] 개발툴 : IntelliJ DB : oracle 프레임워크 : spring , mybatis ---- 개발 목표 : 오라클 디비를 이용해서 게시판 CRUD 중 C(create) 만들기 [완료화면] 등록 버튼 클릭시 메뉴 1의 게시판에 새로운 항목이 생성 한국어는 깨지는 현상이 발생-> 추후 해결예정 [디렉토리] CRUD는 같은 파일에 작성 [JSP 파일] 등록 fetch 를 사용하여 해당 url을 호출하고, 데이터는 json으로 가공하여 전달, 데이터들은 입력 폼 안에 적힌 text, globalstorage에 저장된 사용자 명을 받아서 전달한다. [Controller] @RequestMapping("/board/register.do") @ResponseBody public String boar..
2022.04.03 -
[포트폴리오 페이지]_9단계_CRUD 게시판 구현_(feat.목록 조회기능 구현)
[환경] 개발툴 : IntelliJ DB : oracle 프레임워크 : spring , mybatis ---- 개발 목표 : 오라클 디비를 이용해서 게시판 CRUD 중 R(read) 만들기 [완료 화면] [디렉토리] [설명] board에 관한 controller 와 VO 객체 (DTO 로 해도 무방함) Serivce, mapper 부분 파일 생성. 1. jsp 파일 CRUD 등록 번호 제목 글쓴이 작성일자 조회수 fetch 를 사용하여 controller 호출하며, 응답받은 데이터는 list 구조로 이루어져 있으며 그 ArrayList 구조를 forEach를 사용하여 각각의 index 순회를 하며 html 태그를 만들고 해당하는 데이터를 td 안에 넣고 이를 append 를 이용해서 tablebody에 ..
2022.04.03 -
[포트폴리오 페이지]_7단계_회원가입 구현(feat.oracle)
[환경] 개발툴 : IntelliJ DB : oracle 프레임워크 : spring , mybatis ---- 개발 목표 : 오라클 디비를 이용해서 회원가입 기능 만들기. 완성화면] 회원가입 버튼 클릭시 팝업창 오픈] 팝업창 기능] 1. 아이디 중복확인 -> DB 조회 2. 패스워드 일치 확인 3. 가입버튼 클릭시 DB insert 및 팝업창 닫힘 입력된 DB 모습] 소스코드 및 설명] 팝업창 오픈 코드] $('.authjoin').click(function(){ window.open('auth/authjoin.do', 'windowPop', 'width=400, height=600, left=400, top=400, resizable = yes') }); open 메소드 사용 첫번째 파라미터로 열릴 u..
2022.03.31 -
[Spring-boot]_8차 순수 JDBC, JDBC Template, JPA
환경 : spring-boot DB : H2데이터베이스 --- 1. 순수 JDBC 과거에는 순수 JDBC로 데이터베이스 연결을 하였다고 한다. repository 부분에 db 커넥션부터 끝까지 설정이 되어있는 특징이 있다. DriverManager 을 사용하여 각 드라이버를 로딩 , 해제한다. package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.jdbc.datasource.DataSourceUtils; import javax.sql.DataSource; import java.sql.*; import java.util.ArrayList; import java.util.Li..
2022.03.22 -
Springboot 에 H2 데이터베이스 연결하기
환경 : IntelliJ DB: h2 빌더 : gradle 1. 설치는 다음 포스트 참고 https://yn971106.tistory.com/72 [Spring-boot]_7차 H2 데이터베이스 설치(feat.window) 1] 해당 링크에서 1.4.200 버전을 다운받습니다. https://www.h2database.com/html/download-archive.html Archive Downloads www.h2database.com 해당 Platform-Independent zip을 다운받아야 합니다. 2] 압축을.. yn971106.tistory.com 설치가 완료된 시점으로부터 설명하겠습니다. 2. build.gradle 수정 dependencies { implementation 'org.spr..
2022.03.22 -
[Docker]_Infra 구축_(feat. Centos7, wsl2)
목표 ] Window 환경에서 CentOS7 을 WSL2 환경에 실행후 해당 CentOS7 안에 Docker 실행하기. Docker 란? 경량 가상화 기술이며 리눅스 컨테이너를 기반으로 이미지를 기준으로 프로세스를 격리하여 실행시킬 수 있게 해줍니다. 이미지 파일만 있으면 어디서든지 똑같이 동작하는 컨테이너를 만들 수 있습니다. 이미지 파일은 최조에 한번 로드 되며, 이를 컨테이너에 올리고 컨테이너를 실행시킴으로써 이미지파일에는 어떠한 영향을 끼치지 않습니다. 수정과 배포가 용이합니다. Docker 를 윈도우에서 사용하기 위해서는 Docker Desktop을 설치해서 Docker를 사용할 수 있습니다. 조건] 1. window 최신버전이여야 합니다. Docker Desktop은 hyper-v 의 기능을 ..
2022.03.15