전체 글 94

집에서 서비스를 오픈 해보자 (5) | upptime 모니터링, status 페이지 추가하기

집에서 서비스를 오픈 해보자 (1) | 개요집에서 서비스를 오픈 해보자 (2) | 서버 세팅하기집에서 서비스를 오픈 해보자 (3) | dns 연결하기집에서 서비스를 오픈 해보자 (4) | CI/CD 연동하기집에서 서비스를 오픈 해보자 (5) | upptime 모니터링, status 페이지 추가하기   1. 소개Upptime은 Github(Github Actions)기반의 되어있는 uptime 모니터링, status 페이지를 제공하는 오픈소스입니다.3가지의 기능을 제공하고 있습니다. 1. Github Actions를 기반으로 workflows를 통해 웹 사이트를 호출합니다. x분(최소 5분)마다 실행합니다.2. 지정된 endpoint가 죽으면 Upptime은 Github repository에서 자동으로 새..

self-hosted 2024.11.17

집에서 서비스를 오픈 해보자 (4) | CI/CD 연동하기

집에서 서비스를 오픈 해보자 (1) | 개요집에서 서비스를 오픈 해보자 (2) | 서버 세팅하기집에서 서비스를 오픈 해보자 (3) | dns 연결하기집에서 서비스를 오픈 해보자 (4) | CI/CD 연동하기집에서 서비스를 오픈 해보자 (5) | upptime 모니터링, status 페이지 추가하기  이전 포스팅에서는서비스를 오픈하여User가 서비스에 접근하는 부분까지 구현을 완료했습니다. 이번 포스팅에서는개발자가 Github에 코드를 push한 뒤Github Actions을 활용하여 CI/CD를 진행하도록 하겠습니다.   이 사진에서 developer가 GitHub에 코드를 push 했을 때 일어나는 일들을 구현할겁니다.코드를 push 하면 Raspberry Pi 안에 설치되어있는 Github Actio..

self-hosted 2024.07.18

집에서 서비스를 오픈 해보자 (3) | dns 연결하기

집에서 서비스를 오픈 해보자 (1) | 개요집에서 서비스를 오픈 해보자 (2) | 서버 세팅하기집에서 서비스를 오픈 해보자 (3) | dns 연결하기집에서 서비스를 오픈 해보자 (4) | CI/CD 연동하기집에서 서비스를 오픈 해보자 (5) | upptime 모니터링, status 페이지 추가하기 이전 포스팅에서는Docker와 NPM(Nginx Proxy Manger)를 설치하여실행 테스트를 진행해봤습니다. 이번 포스팅에서는다음에는 let's encrypt, free dns를 사용하여서비스 -> nginx로 reverse proxy를 거는npm 세팅을 하겠습니다.  0. 사전 작업서버에 service container가 띄워져있어야 합니다.포스팅 주제와는 조금 거리가 있으므로 넘어갔습니다. 필요한 경우h..

self-hosted 2024.07.09

집에서 서비스를 오픈 해보자 (2) | 서버 세팅하기

집에서 서비스를 오픈 해보자 (1) | 개요집에서 서비스를 오픈 해보자 (2) | 서버 세팅하기집에서 서비스를 오픈 해보자 (3) | dns 연결하기집에서 서비스를 오픈 해보자 (4) | CI/CD 연동하기집에서 서비스를 오픈 해보자 (5) | upptime 모니터링, status 페이지 추가하기   이전 포스팅에서는간단한 개요에 대해 적었습니다. 이번 포스팅에서는Docker와 NPM(Nginx Proxy Manger)를 설치하여아래 다이어그램 중 Raspberry Pi(우측 파랑색부분) 부분을 세팅할 예정입니다. Raspberry Pi가 아니어도 되고linux 기반의 서버면 충분합니다.  1. Docker 설치https://docs.docker.com/engine/install/ubuntu/요 사이트에..

self-hosted 2024.07.07

집에서 서비스를 오픈 해보자 (1) | 개요

집에서 서비스를 오픈 해보자 (1) | 개요집에서 서비스를 오픈 해보자 (2) | 서버 세팅하기집에서 서비스를 오픈 해보자 (3) | dns 연결하기집에서 서비스를 오픈 해보자 (4) | CI/CD 연동하기집에서 서비스를 오픈 해보자 (5) | upptime 모니터링, status 페이지 추가하기    Web : https://klassic-quote.vercel.app/API : https://klassic-quote-api.mooo.com/v1/random-quote취미로 만들었던 서비스에서활용한 방법을 작성하였습니다.  집에서 서비스를 오픈하는 이유클라우드 비용을 사용하고 싶지 않았습니다. 사용자가 거의 없어서..그리고 집에 남는 컴퓨터가 있었습니다. 😁  집에서 서비스를 오픈하기 위한 준비물1...

self-hosted 2024.06.06

GraalVM 으로 SpringBoot 시작 시간 줄이기 (맛보기)

TL;DRGraalVM(지랄VM)은 Java 어플리케이션을 미리 컴파일하여 바로 시작될 수 있게 합니다. 시작 시 워밍업이 필요하지 않으며, 더 적은 리소스를 사용합니다. 대신 빌드가 느립니다. 자세한 정보는 https://www.graalvm.org/latest/docs/getting-started/ 시작시간 비교하기Spring Batch를 사용하였습니다. (아주 간단한 Job을 실행하였습니다.) 2.474s -> 0.114s 예시 코드 https://github.com/GHGHGHKO/migration-v3-with-graal migration-v3-with-graal/src/main at main · GHGHGHKO/migration-v3-with-graalMigrating from Spring B..

SpringBoot 2024.03.27

palworld 서버 만드는 법, dedicated server, 광고 없음, difficulty

https://tech.palworldgame.com/dedicated-server-guide Palworld tech guide tech.palworldgame.com palworld에서 제공해주는 글을 토대로 진행하였습니다. Windows OS 에서 진행하였습니다. 꼭 위 사양이 되지 않아도 되긴 하지만 예전에 묵혀뒀던 노트북에서 서버를 파니 두 세명만 들어와도 서버가 원활하지 않더라구요. 서버를 오픈하기 위한 Dedicated Server 만들기 steam에서 사진과 같은 설정을 한 뒤에 palworld를 검색합니다. Palworld Deicated server를 설치하고 실행하면 됩니다. 실행하면 이 중 원하는 Server를 설정하면 됩니다. commumity server로 설정 한 뒤에 Play..

취미 2024.01.25

Locust 부하 테스트, REST API에 부하 주기 (2)

이전 글에서는 로컬 환경에 Locust를 설치하고 버전 확인까지 진행했습니다. 이번 글에서는 Locust를 실행하고 REST API에 부하를 준 뒤 결과를 확인해볼 예정입니다. 전체 코드 https://github.com/GHGHGHKO/sample-locust 테스트 코드 작성 우선 부하를 주기 위한 첫 테스트 코드를 작성합니다. HTML 삽입 미리보기할 수 없는 소스 코드를 하나씩 분해해보겠습니다. import time from locust import HttpUser, task, between locust package는 python 모듈로 다른 파일이나 패키지에서 사용 할 수 있습니다. class QuickstartUser(HttpUser): 이 클래스는 HttpUser를 상속받습니다. HttpU..

테스트 2023.11.18

Locust 부하 테스트, 개요 및 설치 (1)

이 글에서는 Locust로 REST API를 호출하여 아주 간단한 부하 테스트만 진행해볼 예정입니다. OS : Windows 11 Python : 3.11.4 IDE : IntelliJ 전체 코드 https://github.com/GHGHGHKO/sample-locust Locust 개요 Python으로 테스트 시나리오 코드를 작성할 수 있습니다. -> 이 글에서 사용 할 방법입니다! 분산 및 확장이 가능합니다. -> 이벤트 기반으로 수십만 명의 동시 사용자 지원이 됩니다. https://github.com/gevent/gevent 사용 웹 기반 UI -> 테스트 상황을 실시간으로 보여줍니다. -> 테스트가 실행되는 동안 부하를 변경 할 수 있습니다. -> UI 없이 cli 결과로도 사용할 수 있습니다!..

테스트 2023.11.16

Apache JMeter 사용해보기, REST API 부하주기 (2)

1) JMeter 설치하기: https://pepega.tistory.com/86 2) REST API 부하주기: https://pepega.tistory.com/87 이전 글에서는 JMeter를 설치하고 실행까지 해봤습니다. 이번 글에서는 JMeter를 사용해서 api endpoint를 호출하고 부하를 주겠습니다! API 정보 사용할 REST API 는 아래와 같습니다. API 정보 https://goose-auth.synology.me/swagger-ui/index.html#/Health-check/healthCheck 관련 소스코드 https://github.com/GHGHGHKO/goose-auth-api-server 부하주기 전 JMeter 세팅하기 Thread Group 세팅하기 Test Pl..

테스트 2023.11.11