반응형 대외활동19 nGrinder 설치하기 오늘은 부하 테스트 툴인 nGrinder에 대해 설치해보겠습니다. 저는 로컬 MacOS 환경과 Kakao I Cloud VM Linux ubuntu 모두 동일하게 적용했습니다. 1. nGrinder 설치 wget을 사전에 설치해야 한다. sudo wget https://github.com/naver/ngrinder/releases/download/ngrinder-3.5.6-20221007/ngrinder-controller-3.5.6.war 2. nGrinder 실행 기본 포트가 8080 포트이다. 본인은 8081 포트로 실행했다. sudo java -jar ngrinder-controller-3.5.6.war --port=8081 아래와 같이 정상적으로 실행된다. 3. nGrinder 접속 이제 loc.. 대외활동/카엔프 SW 아카데미 2023. 8. 18. 카프카 커넥트란? 카프카 커넥트란? 카프카 커넥트는 카프카 오픈소스에 포함된 툴 중 하나로 데이터 파이프라인 생성 시 반복 작업을 줄이고 효율적인 전송을 이루기 위한 애플리케이션이다. 카프카 커넥트는 커넥트와 커넥터로 이루어진다. 커넥트는 커넥터를 동작하도록 실행해주는 프로세스다. 파이프 라인을 생성할 때 프로듀서, 컨슈머 애플리케이션을 만드는 것은 좋은 방법이지만 반복적인 파이프라인 생성 작업이 있을 때는 매번 프로듀서, 컨슈머 애플리케이션을 개발하고 배포, 운영해야 하기 때문에 비효율적이다. 반면, 커넥트는 특정한 작업 형태를 템플릿으로 만들어 놓은 커넥터를 실행함으로써 반복 작업을 줄일 수 있다. 파이프라인 생성 시 자주반복되는 값들(토픽 이름, 파일 이름, 테이블 이름 등)을 파라미터로 받는 커넥터를 코드로 작성하.. 대외활동/카엔프 SW 아카데미 2023. 3. 31. 카프카 스트림즈 카프카 스트림즈란? 카프카 스트림즈는 토픽에 적재된 데이터를 상태기반 또는 비상태기반으로 실시간 변환하여 다른 토픽에 적재하는 자바 라이브러리다. 스트림즈는 카프카에서 공식적으로 지원하는 라이브러리다. 자바 기반 스트림즈 애플리케이션은 카프카 클러스터와 완벽하게 호환되면서 스트림 처리에 필요한 편리한 기능들(신규 토픽 생성, 상태 저장, 데이터 조인 등)을 제공한다. 비상태 기반 처리 필터링이나 데이터를 변환하는 처리다. 데이터가 들어오는 즉시 처리하고 바로 프로듀스한다. 따라서 유실이나 중복이 발생할 염려가 적고 개발이 쉽다. 상태 기반 처리 상태 기반 처리는 직접 구현이 너무 어렵다. 윈도우, 조인, 취합과 같은 처리는 이전 받았던 데이터를 프로세스가 메모리에 저장하고 있으면서 다음 데이터를 참조해 .. 대외활동/카엔프 SW 아카데미 2023. 3. 30. 카프카 기초 카프카란? 아파치 카프카(Apache Kafka)는 분산 스트리밍 플랫폼으로, 대용량의 실시간 데이터 스트림을 처리하기 위해 설계되었다. 카프카는 대량의 데이터를 안정적이고 빠르게 처리할 수 있으며, 대규모 분산 시스템에서 확장성과 내결함성을 보장한다. 소스애플리케이션과 타겟 애플리케이션의 결합도를 낮추기 위해 등장했다. 카프카 토픽 카프카에서 데이터가 들어가는 공간을 토픽이라고 부른다. 토픽은 여러 개를 생성할 수 있다. 목적에 따라 이름을 명확하게 적어야 유지보수가 편리하다. 데이터베이스 테이블과 파일 시스템의 파일과 유사하다. 카프카 프로듀서가 토픽에 데이터를 넣고, 카프카 컨슈머가 데이터를 가져간다. 하나의 토픽은 여러 개의 파티션으로 구성된다. 파티션 파티션은 0번부터 시작한다. 파티션은 큐와 .. 대외활동/카엔프 SW 아카데미 2023. 3. 29. 10주차 스터디 드디어 대망의 10주 서버 스터디가 마무리 되었습니다. 10주차 스터디 복습을 조금 늦게하는 감이 있으나, 마무리를 지어보려고 합니다. 그러면 시작하겠습니다! 10주차 스터디는 로그인 방식(Jwt, Cookie and Session) OAuth, 페이징, 트랜잭션에 대해 학습했다. 먼저 트랜잭션은 최근에 많이 공부했기 때문에 이에 대한 내용은 생략하려고 한다. 트랜잭션에 대한 글은 아래 포스팅에서 확인할 수 있다. https://devdebin.tistory.com/205?category=1028513 트랜잭션 본 게시글은 인프런 김영한 선생님 강의 스프링 DB 1편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/.. 대외활동/UMC SERVER 2022. 6. 22. CMC 해커톤 10기 후기 (2022.05.21 ~ 2022.05.22) Spring 서버 스터디 8주차, 9주차는? Spring 서버 스터디 8주차, 9주차는 그냥 API 작성(JdbcTemplate 쿼리 작성, 컨트롤러, 서비스, 레포지토리 코딩)이라 포스팅을 생략하기로 했습니다. 그래도 8주차, 9주차에 빅 이벤트 CMC 해커톤을 경험했기에 이에 대한 기록을 남겨보려고 합니다!!!! 벌써 이틀이 지나서 기억이 흐릿하지만 최대한 느낀점을 작성하려고 합니다. 해커톤은 서울특별시 공덕역 프론트원에서 진행 되었습니다. 참여 동기?? 저는 UMC 2기 서버 Spring 파트를 진행하고 있습니다. UMC가 대학교 연합 동아리로, 6개월 활동으로 앱 런칭을 목표로 합니다. CMC는 수익형 앱 동아리로 직장인, 대학생들 많은 분들이 참여하는 것 같습니다. 또한 기간은 3개월입니다. 어.. 대외활동/UMC SERVER 2022. 5. 24. 7주차 실습 - API 코딩 후 배포하기 이번 시간에는 7주차에 진행한 API 코딩 진행과정과 배포 진행 과정에 대해 정리해보겠습니다. 연합 동아리 주최자인 컴공 선배 레포지토리를 클론 했으므로 모든 아키텍쳐를 서술하기는 어려워서 작성한 API와 사용한 클래스 위주로 정리하겠습니다. 이제 본격적으로 시작하겠습니다!! API 코딩 코딩할 API는 유저 삭제 API다. 먼저 논리적인 삭제(상태 컬럼을 변경)가 아니라 실제로 행을 삭제하는 물리적 연산을 진행했다. 따라서 DELETE 메소드를 사용했다. 먼저 Controller, Service, Dao 순으로 나열하겠다. 정말 기초적인 수준의 API로 Validation도 가볍게 진행했다. 우선은 사용할 DTO와 사용자 정의 Exception, 최종 응답 DTO에 대해 알아보자. @Getter @Se.. 대외활동/UMC SERVER 2022. 5. 6. 7주차 실습 - API 사용하기 드디어 본격적으로 Spring Boot를 사용하기 시작했다. 툴은 인텔리제이를 사용한다. 본인은 아래 사이트에서 프로젝트를 생성하고 다운로드 받을 줄 알았는데 컴공선배 깃허브에 있는 레포를 다운받았다. 보통 웬만한 스프링 프로젝트는 아래 사이트에서 생성해서 다운로드 받는다. https://start.spring.io/ 이제 본격적으로 시작해보자. 우선은 이전 시간에 만든 우리의 RDS와 Spring Boot를 연동시켜야 한다. Maven이 아닌 Gradle 프로젝트다. 따라서 application.yml 파일을 아래와 같이 작성하자. server: port: 9000 spring: application: name: demo datasource: platform: mysql url: jdbc:mysql:/.. 대외활동/UMC SERVER 2022. 4. 28. 6주차 공부 - API와 FrameWork 이번 주차에는 코딩 실습이 없고 API작성과 FrameWork에 대한 기초적인 내용을 학습했습니다. 시험기간으로 한 주 휴식!!! 그러나 아직 저는 시험이 끝나지 않았습니다... 그래서 주말 이전에 빠르게 모두 정리하기로!!!!! 본격적으로 시작하겠습니다. API란 무엇인가? 본인은 노마드코더 React 챌린지를 진행하면서 TMDB API를 사용한적이 있다. 또한 기상청의 API를 사용해 본 적도 있습니다. 그래서 API가 무엇인지, 개념은 가지고 있으나 막상 말과 글로 풀어 설명하려고 하니 꽤 쉽지 않습니다. 일단 정리해보겠습니다. API란 Application Programming Interface의 약어다. 위키백과의 정의는 다음과 같다. 'API는 컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 일종의.. 대외활동/UMC SERVER 2022. 4. 28. 5주차 실습, 과제 후기 : ERD 작성 및 SQL 쿼리 실습 이번 5주차에는 관계형 데이터베이스 실습을 진행했습니다. 먼저 테이블을 만들기 전, 인스타그램 기능을 간단하게 ERD 다이어그램으로 만들었습니다. 이후 실습, 과제가 목표로 하는 데이터를 DB에서 가져오기 위해 쿼리(SQL)문 작성을 연습했습니다. 개인적으로 SQL 부분이 부족하다고 느꼈는데 여실히 드러났습니다.. SQL 쿼리문을 더 열심히 공부해야겠다고 느낄 수 있는 좋은 기회였습니다. 그럼 이제 본격적으로 포스팅 시작하겠습니다!!! 1. ERD 작성 (인스타그램) 작성한 인스타그램 ERD 다이어그램은 아래와 같다. 릴스, 스토리, 피드 2명이서 공유 등 훨씬 많은 기능이 있지만 제일 중요하다고 생각하는 인스타그램 특유의 SNS 기능만 작성해보았다. 아래는 작성한 ERD 이미지다. 이제 본인이 생각한 .. 대외활동/UMC SERVER 2022. 4. 17. 4주차 챌린지 과제 : AWS EC2와 RDS 연동하기 이번 4주차 챌린지 과제는 RDS를 생성하고, 우리가 생성한 EC2 인스턴스와 RDS를 연동하는 것입니다. 본격적으로 시작하겠습니다!!!! 그럼 먼저 RDS란 무엇인가?? 먼저 RDS는 아래 AWS 공식 페이지를 통해 알아볼 수 있었다. https://aws.amazon.com/ko/rds/ 데이터베이스 관리 시스템 | 관계형 RDS | Amazon Web Services aws.amazon.com 공식 페이지 정의는 아래와 같다. RDS는 "Amazon Relational Database Service(RDS)는 클라우드에서 간편하게 데이터베이스를 설치, 운영 및 확장할 수 있는 관리형 서비스 모음"이다. 쉽게 말해 클라우드에서 데이터베이스를 운영하는 것이라고 생각할 수 있겠다. 그럼 RDS는 어떤 상.. 대외활동/UMC SERVER 2022. 4. 2. 3주차 챌린지 과제 : HTTPS 적용하기(Ubuntu, Let's Encrypt, Certbot) 이번 3주 차 챌린지 과제는 HTTPS를 적용하는 것이다. 우리의 EC2 인스턴스 서버는 아직 HTTPS를 적용하지 못했다. 챌린지 과정은 Let's Encrypt를 이용해 인증서를 구입하면 발급받은 인증서를 설치해 서버 쪽 세팅을 하고 SSL을 적용하는 것이다. ec2 ubuntu 18.04 Let's Encrypt로 검색을 해 많은 레퍼런스를 참고하라고 강의에서 알려줬다. 우선 Let's Encrypt에 대해 알아봤다. 아래는 Let's Encrypt 소개 페이지다. https://letsencrypt.org/ko/getting-started/ 시작하기 - Let's Encrypt - 무료 SSL/TLS 인증서 마지막 업데이트:2019. 12. 21. 참고: 번역 이후 영어 버전이 업데이트되었습니다 .. 대외활동/UMC SERVER 2022. 3. 30. 이전 1 2 다음 반응형