최신 글
-
[Spring] Gateway - 해외 IP 차단(필터링)
Spring Cloud Gateway - 해외 IP 차단이전 포스팅에서 홈서버로 들어오는 Request 중 해외 IP 로 요청한 경우는 차단(Block) 했었다고 언급만 했었다. 도메인과 Reverse Proxy Server 를 연결 한 이후부터 서버 IP 가 공격자들에게 노출되었는지 매시간 수많은 공격들이 들어오고 있던 상황이었다. (SQL Injection, Brute Force, IDOR(Insecure Direct Object Reference 등등 ....)나의 서버의 경우 해외에서 수요가 있는것도 아니고, 국내에서만 유효하면 됬기에 해외 IP 차단을 계획했다. 홈서버 아키텍처 확인하기 GeoIP2 라는 국가별 IP 를 확인할 수 있는 오픈소스솔루션을 사용할 예정이다.Reverse Prox..
2025.04.02
-
홈서버 구축 - 보안, 관리, 아키텍처(2)
홈서버 구축 - 보안, 관리, 아키텍처(2)홈서버에 관한 보안, 관리, Application 아키텍처에 대해서 포스팅을 이어 나가도록 하겠다.이전글에 이어서 서버의 보안 및 애플리케이션 레벨 아키텍처, 사용 까지 포스팅하도록 하겠다.홈서버에 관한 개요는 아래의 링크에서 확인하도록 하자! 홈서버 구축 시리즈홈서버 구축 - 개요, 설계, 네트워크(1)홈서버 구축 - 보안, 관리, 아키텍처(2) 목차보안관리최종 아키텍처 1. 보안이전글에서 보안을 설정을 해도 무차별적인 공격(Brute force)이 들어온다는것을 확인했을것이다.서버를 관리하는 직무, Linux 에 익숙한 사람들은 이미 알고있을만한 내용이고, 더 좋은 보안 방법들을 가지고 있을것이다.필자또한 관리가 너무 복잡하지 않은선에서 계속해서 보안요소를..
2025.04.01
-
홈서버 구축 - 개요, 설계, 네트워크(1)
홈서버 구축 - 개요개발자 혹은 IT 에 관심이 많은 사람이라면 한번쯤은 생각해보는 홈서버 구축에 대해서 포스팅 해보려고 한다.우선 필자는 홈서버를 구축한지 거의 2년가까이 되었느데 이제서야 포스팅 하게되었다.많은 블로그들을 보면 OS 설치, 각 통신사별 포트포워딩 정도만 포스팅이 많이 되어있는것 같다해당 글에서는 자세한 설치 과정보다는 홈서버 구축시 하드웨어 선정, 아키텍처, 보안, 네트워크 구성 등 더 큰그림에서 포스팅할 예정이다. 생각보다 긴 글이 될것 같다,, 다만 홈서버 구축을 생각하는 사람들에게 대략적인 아키텍처 구상을 제공하고자 노력해보겠다.하나의 칼럼처럼 가볍게 슥슥 읽으면 좋을것 같다. 홈서버 구축 시리즈홈서버 구축 - 개요, 설계, 네트워크(1)홈서버 구축 - 보안, 관리, 아키텍처(..
2025.03.28
-
[Docker] Docker Registry(Private Repository, Http)
Docker Private Registry사내에서 사용되는 Docker Image 같은 경우, Public 하게 관리되어서는 안되는 경우들이 존재한다. 백엔드 서버 라던지 OS정보, 네트워크, 설정 정보와 같은것들이 Image 파일안에 전부 들어가 있기 때문이다.Docker Hub 에도 Private 하게 image push 할 수 있지만, 무료계정의 경우 제한이 존재한다(용량, 횟수) Docker Registry는 사내 서버, 혹은 서버중 하나에 프라이빗한 자체 Docker Hub 를 구축한다고 생각하면 될것 같다.외부에 공개되지 않으면서, 사내에서 자체적으로 제한 없이 관리할 수 있기에 자체적인 Infra 를 구축하는데 있어서 좋은 선택지 인것 같다.필자의 경우, 홈서버에서 테스트할 서버들 Imag..
2025.03.26
-
Nginx SSL(HTTPS) 적용 - Certbot(Let's encrypt)
Nginx SSL(HTTPS) 적용 - Certbot(Let's encrypt)기존에 사용하던 도메인이 저번달부로 만료되어, 새로운 도메인을 구입했다. 새로운 도메인 연결할겸 ,,, 미뤄왔던 작업을 하려고 하던중 기록해둘겸 포스팅한다.. 어떤 작업들을 계속 진행할건지는 추후 포스팅 작성후 링크를 걸어두도록 하겠다. 일단 제목대로 Oracle Cloud 서버에 기동중인 Nginx 에 SSL 을 적용하여 HTTPS 로 통신할 수 있도록 하겠다. 1. 개념 확인우선 알고 넘어가면 좋은 개념들에 대해서 간략하게 설명 이후 진행하도록 하겠다. 굳이 왜 HTTPS 로 전환하려고 하는가?필자의 경우는 Nginx 를 Reverse Proxy 로 사용중이다. 목적지는 홈서버이기에 중간에 공격자로부터 데이터를 보호하기 ..
2025.03.26
-
[Spring Cloud] Spring Cloud Gateway - 개념 & 예제(로깅, 모니터링)
Spring Cloud GatewaySpring Cloud Gateway 의 기본 개념과, 간단한 예제로 사용해보도록하자. 1. Gateway 란?Gateway, 단어 그대로의 의미로 '관문', '통로' 라는 의미를 가지고 있다. 네트워크 개념에서의 Gateway 란데이터(패킷)이 지나가는 통로이며, 출발지 Network 에서 도착지 Network 에 도달하기 까지 거쳐야하는 필수적인 통로(관문)이다.즉 서로다른 네트워크간 통로의 역할을 수행하는것이다. 일상생활에서 흔하게 볼 수 있는 Wifi 공유기를 보자면 이는 Router 라고 하며, Gateway 의 개념과는 조금 다른 부분이다.Gateway 는 특정 장비, 기기가 아닌 IP 주소를 기반으로 찾아가며Router 는 외부 네트워크(WAN)를 내부 ..
2025.03.18
-
[Redis] (STOMP + pub/sub) 채팅 기능(서버 다중화)
Redis - STOMP + Redis Pub/Sub 채팅 기능(서버 다중화)채팅 기능에서 많이 사용하는 프로토콜인 STOMP 와 Redis 의 pub/sub 기능을 활용해 보는 포스팅입니다.평소에 채팅 기능에 대한 많은 호기심은 가지고 있지만, 실제 애플리케이션에서 사용할만한 채팅 기능은 고도화를 해본적이 없었다.그러던 와중 우아한기술블로그 포스팅을 접하게 되었고, 평소 궁금했던 영역의 비지니스에 대해서 생각해보면서 구현하게 되었다(해당 블로그는 2021년 작성이다,, 꽤나 늦게 봤다) https://lucas-owner.tistory.com/68 [Redis] Spring Boot - Redis Pub, Sub 구현&응용목차 Spring Boot - Redis 환경 구성 테스트 개요 서버간 데이터를 ..
2025.03.04
-
[Linux] iPad 로 서버 콘솔 접속(Termius), ssh key 인증 접속방법
iPad 로 서버 콘솔 접속, ssh key 접근 방법서버를 관리하거나, 급하게 대응이 필요한 경우가 종종 생기고는 한다.(이런 대응이 급하게 필요한 사람들의 경우 노트북을 들고다니는 분들도 존재한다. 필자또한 그러했다..)하지만 노트북을 두고 나온경우 급하게 재기동 및 간단한 작업을 아이패드에서 할 수 있는 앱이 존재한다. Termius 라는 앱이다.https://termius.com/ Termius – Modern SSH Client for Desktop and Mobile devicesConnect with one click from any mobile and desktop device. No re-entering IP addresses, ports, and passwords.termius.com이..
2025.02.13
-
[Spring Boot] @Qualifier 무시 오류(Lombok @RequiredArgsConstructor)
@Qualifier 무시 오류(Lombok @RequiredArgsConstructor)라이브러리 개발도중 발생한 문제이다. 우선 Bean 과 의존성 주입에 대해서 간략하게 살펴보도록 하자. Spring IoC Container 는 Bean 을 생성,관리 하여 의존성 주입을 대신 해준다.다만 Bean 으로 등록하게 될 타입이 여러개가 존재한다면 개발자가 어떤 Type 을 사용할 것인지 명시해 주어야 한다. // Interfacepublic interface ServiceTarget{}// Impl 1@Servicepublic class TargetImpl implements ServiceTarget {}// Impl 2@Servicepublic class TargetImpl2 implements Serv..
2025.02.05
-
[Java] POJO - Cache 구현
Java(POJO) Cache 구현개발을 하다보면 Cache, Caching 과 같은 단어들을 들어보고는 했을것이다.Spring framework 의 경우 기본적으로 캐싱을 지원하는 기능들을 지원한다, 또한 다양한 캐시 구현체들을 제공한다(Redis, Encache, Caffenine) 해당 구현체들로 더 많은 기능들을 사용할 수 있다. 1. Cache(캐시)란?그렇다면 Cache(캐시)란 무엇일까? Cache 는 데이터에 빠르게 접근하기위해 빠른 저장공간(Memory)을 활용하는 기술이다.Application 에서 자주 사용하는 데이터를 Memory 와 같이 빠른 저장소에 데이터를 임시로 저장하고,이후 데이터가 필요할 때 캐시 데이터에 접근하여 바로 사용한다. 캐시에서 데이터를 가져오는 이유는 DB나,..
2025.01.08
-
[Spring boot] Spring Boot 라이브러리(Library) 개념 및 만들기(1)
Spring Boot 라이브러리(Library) 개념 및 만들기(1)web, application 을 개발하다보면 라이브러리(Library) 라는 말을 자주 듣게 되고, 거의 필수적으로 사용하게 된다.필자는 여러가지 모듈들에 반복적이고 공통적으로 들어가는 기능을 대체하기 위해 라이브러리를 만들기 위해 공부했던 내용들을해당 글에 담았다. 그럼 라이브러리가 어떤 개념인지, 어떤방법으로 만들고 적용 할 수 있는지에 대해서 아래에 설명하겠다. 1. 라이브러리(Library) 란?라이브러리(Library) 는 공통적인 기능을 재사용하기 위해 별도로 분리된 코드 모음(모듈)이다.여러개의 프로젝트, 모듈에서 공통적으로 쓰이는 코드를 반복적으로 작성하지 않고, 공통 모듈로 만들어서 필요한 모듈에서 의존성 형태로 가져..
2024.12.27
-
[Spring Boot]OAuth2: Authorization-Server (Custom 인증 서버 구축)(2)
OAuth2: Authorization-Server (Custom 인증 서버 구축)(2)지난 포스팅에 이어서, Spring Security에서 제공하는 spring-oauth2-authorization-server 를 나의 Application에 맞게 수정해 볼 예정이다. Spring Security 에서 제공하는 기본적인 Security Config 라던지, 기본적인 개념은 아래의 글을 참고하는 것을 추천한다. https://lucas-owner.tistory.com/79 [Spring boot] OAuth2: Authorization-Server (인증 서버 구축)(1)OAuth2: Authorization-Server (인증 서버) 개요요즘 사용하는 대부분의 web, app 에서는 사용자를 인증 ..
2024.11.20
-
[Spring boot] Spring Boot 3.x^ - Swagger 적용(2)
Spring Boot 3.x 버전 Swagger 적용 Spring boot 3.x 이전 버전에서의 Swagger 적용 및 Test 관련 사항은 아래 링크에서 확인하세요! https://lucas-owner.tistory.com/28 [SpringBoot] Swagger API 문서 자동화 간단 연동, 테스트하기Swagger-ui 를 활용한 문서 자동화 - 개발한 Rest API 들의 목록을 확인하고 테스트 할 수있는 Swagger-UI를 Spring Boot 프로젝트에 연동(설정)하고 사용 하는 방법을 알아보자. ○ Swagger란 ? Swagger는 개발한lucas-owner.tistory.com Spring Boot 를 3.x 이상 버전에서는 이전버전의 Swagger 와 별도로, Springdoc O..
2024.11.14
-
[Spring boot] OAuth2: Authorization-Server (인증 서버 구축)(1)
OAuth2: Authorization-Server (인증 서버) 개요요즘 사용하는 대부분의 web, app 에서는 사용자를 인증 하고 그에 맞는 권한을 부여하여 자원에 접근가능하게 한다.이러한 인증, 인가는 보안에 있어서 가장 핵심적인 문제이고 설계부터 신경을써서 해야한다. 애플리케이션만의 고유한 인증, 인가 체계가 존재한다면 좋겠지만, 필자의 경우에는 여러개의 앱,웹 애플리케이션에 독자적인 인증,인가 기능 구현에 시간을 쏟는것보다는 독자적인 Auth Server 를 통해 비지니스에 집중하기 위해 서버를 만들기로 결정했다. 또한 이렇게 구현했을때의 장점도 존재한다 SSO(Single Sign on) 을 통해 한번의 로그인으로 여러개 사이트에 접속하여 이용할 수 있다는것이다. 그렇다면 비슷한 역할을 해..
2024.11.13
-
[Spring Boot] WireMock - API Test
WireMock을 이용한 API 서버 Test- 다양한 프로젝트를 진행하다보면 Server To Server 통신을 진행해야만 하는 상황들이 발생한다(소셜로그인, MSA 아키텍처구조 ...)이럴때 테스트 대상이되는 모든 서버를 Local 에 구동시킨채 Test 를 진행하기에는 많은 자원낭비, 많은 시간소요 등 불편한점이 많다.특히 Test Code 를 작성해서 테스트마저 자동화를 많이 하고 있는 추세이기 때문이다. WireMock 이란- Http 기반의 API 서비스를 Mocking 하기 위한 라이브러리이다.즉, 외부 서비스에 의존하는 테스트를 진행할때, 외부 서비스의 Response(응답)을 Mocking 하여 테스트를 진행할 수 있게 해준다.(외부 서비스에서 받아올 응답을 미리 지정해둔 형태로 Te..
2024.10.29
-
[ElasticSearch] 버전별 Spring Boot 설정 변화 및 정리
[ElasticSearch] 버전별 Spring Boot 설정 정리- 최근의 IT 를 보게되면 고성능 고효율의 하드웨어, 그리고 고수준의 소프트웨어들이 사용됨에 따라 수많은 데이터들이 생성되게 되었다.이런 빅데이터를 실시간으로 처리하고 검색, 분석하는 능력이 중요해짐에 따라 수많은 솔루션들이 나오게 되었다. 그 중 ElasticSerach 는 빅데이터 처리, 실시간 로그분석 및 텍스트 검색에 중점을 두었다. ElasticSearch는 이런 장점을 기반으로 APM(애플리케이션 성능 모니터링), 데이터 분석, 검색어 실시간 자동 완성 등장점을 살린도구로 자리잡았다. 그렇기에 ElasticSearch 를 적용하기위해서 공부를 하는 사람들이 많이 보이는 추세이다.다만 필자가 Spring boot 와의 연동을 위..
2024.10.17
-
[Linux] Ubuntu - OOM(Out Of Memory) 메모리 부족과 대응
목차대응방안 및 개요메모리 확인Cache/buff 메모리 정리CronTab 으로 자동화Linux - OOM 과 대응방안 개요- Linux 서버를 운영하다 보면 수많은 장애와 오류를 마주할 수 있다. 그 중 제일 무섭다고 생각되는 장애중 하나는OOM(Out Of Memory) 일 것이다. 해당 장애는 `시스템 메모리 부족` 상태를 의미하며, 서버에서 가용가능한 메모리가 없는 상태를 뜻한다. 해당 장애가 발생했을때 무서운점은 모든 프로세스(OS, APP)가 멈출뿐 아니라, 대응하기도 쉽지 않다는점이다. 필자의 경우, 홈서버에서 실행중인 Process(Memory 많이 사용)가 많은 상황에서 발생하였으며, 수동으로 Server를 재시작하였다.추후 확인해보니 Cache Memory의 사용비율이 너무 높았다..
2024.09.18
-
[Spring Boot]Jasypt 원리 및 사용방법(yml 설정 암복호화, Boot 3.x^) +String Util Class
Jasypt 암복호화 라이브러리프로그래밍 공부를 하고 있는 사람들이라면, 보안에 관련된 수많은 얘기들을 듣고는 한다. 각종 정보들은 보안에 신경써야 한다고 말이다. (DB 접속정보, 사용자 정보, 파라미터 등등)서버간 통신시 암호화가 필요한 경우 라이브러리를 사용하기도 하고, 직접 암복호화 유틸을 만들어서 사용하기도 한다. 우리는 yml 의 DB 정보에 대해서 암호화를 진행해보고, 원리를 간단하게 살펴 보도록 하겠다. 공식문서를 살펴보며 유틸이나, 다른 활용방법에 대해서도 보면 좋을것 같다. 해당글에서는 다루지 않겠다.http://www.jasypt.org/general-usage.html 암호화에 대한 정보는 아래의 글에서 확인!https://lucas-owner.tistory.com/70 AES-25..
2024.08.14
-
[JPA] Java로 JPA 설정시 주의할점(.yml 설정 무시)
프로젝트 설정중, application.yml 파일의 JPA 설정이 무시되는 상황이 발생했다. @Entity 기준으로 Table 을 생성하게 해주는 옵션인 ddl-auto 를 Create 로 변경 후 Server 를 실행 시켰는데Create table 쿼리 출력 X, DB에 table 생성 X 상황이 발생한것. 프로젝트에 Multiple Datasource 설정과, 다른 몇몇 설정들을 추가하기전엔 잘 동작하고 있었던 설정이었다. 프로젝트 구조는 대략적으로 아래와 같다.1. Multi module 환경 - core (Entity, service, Repository) - api (Controller)api 모듈은 core 모듈을 의존하고, scan 하여 사용중. 문제없었음.2. Multiple..
2024.08.12
-
[Docker] NextCloud - 홈서버 나만의 무료 클라우드 만들기
NextCloud - 나만의 무료 클라우드 만들기클라우드 기술이 널리퍼져있고 유용하게 쓰이는 시대에, 다들 Cloud 하나씩은 사용하고 있을것이다. (iCloud, Google Cloud, One Drive, ...) 사실 월 구독료가 부담되는 금액은 아니지만, 더 많은 용량을 사용하게 될수록 금액적인 부담이 발생한다. NextCloud 는 오픈소스이기 때문에, 누구든 무료로 사용할 수 있다. 특히나 홈서버가 존재한다면 활용가치는 더욱더 높다.(개인적으로 파일 공유가 주 목적인 NAS 보다 효율성이 높다고 생각한다) 홈서버가 없더라도 평생 무료로 쓸 수 있는 Oracle Cloud 서버를 구축뒀다면, 100Gb 가량의 나만의 무료 클라우드 서비스를 만들 수 있다. 위에서 서술했던대로, 오픈소스이고 나만..
2024.08.03
인기 글
-
[SpringBoot] Swagger API 문서 자동화 간단 연동, 테스트하기(1)
Swagger-ui 를 활용한 문서 자동화 - 개발한 Rest API 들의 목록을 확인하고 테스트 할 수있는 Swagger-UI를 Spring Boot 프로젝트에 연동(설정)하고 사용 하는 방법을 알아보자. Spring Boot 3.x^ 버전에서의 적용 방법은 아래 링크를 참고하세요https://lucas-owner.tistory.com/80 [Spring boot] Spring Boot 3.x^ - Swagger 적용(2)Spring Boot 3.x 버전 Swagger 적용 Spring boot 3.x 이전 버전에서의 Swagger 적용 및 Test 관련 사항은 아래 링크에서 확인하세요! https://lucas-owner.tistory.com/28 [SpringBoot] Swagger API..
2023.01.18
-
[Spring boot] Spring Boot 3.x^ - Swagger 적용(2)
Spring Boot 3.x 버전 Swagger 적용 Spring boot 3.x 이전 버전에서의 Swagger 적용 및 Test 관련 사항은 아래 링크에서 확인하세요! https://lucas-owner.tistory.com/28 [SpringBoot] Swagger API 문서 자동화 간단 연동, 테스트하기Swagger-ui 를 활용한 문서 자동화 - 개발한 Rest API 들의 목록을 확인하고 테스트 할 수있는 Swagger-UI를 Spring Boot 프로젝트에 연동(설정)하고 사용 하는 방법을 알아보자. ○ Swagger란 ? Swagger는 개발한lucas-owner.tistory.com Spring Boot 를 3.x 이상 버전에서는 이전버전의 Swagger 와 별도로, Springdoc O..
2024.11.14
-
[Linux]Ubuntu 설치 (Docker 컨테이너) 및 테스트(Ubuntu 초기 설정 Shell Script 제공)
Docker 컨테이너를 통한 Ubuntu 설치 및 테스트 ○서론 - 개발을 하다보면 Linux 환경에서의 작업을 해야할 경우가 생긴다 (혹은 테스트), 그럴 경우 공부 목적이나, 테스트 목적으로 리눅스 환경을 구성하여, 진행 하는 경우가 생기게 되는데 docker 를 사용하기 이전에는 VMware(유료), VirtualBox(무료) 와 같은 가상화 소프트웨어를 사용했었다. 필자가 사용했던 Virtual Box를 예를 들자면, 설정 -> 설치 -> 실행 까지 시간이 꽤 오래 걸림, 설치 및 설정을 위해 신경써야할 것 많음. 위와 같은 이유로 매번 새로운 가상환경 설정을 하기가 여간 귀찮은 작업이라고 생각되었다. (시간적 소요 + 파일 크랙으로인한 실행 불가 등등) 최근에 Linux 환경에서 테스트 할 일이..
2023.08.12
-
[IntelliJ] IntelliJ Git 사용법 (2) - (commit, push, merge, checkout)
IntelliJ Git 사용법 (1) - commit, push, merge, checkout - IntelliJ 에서 Git을 사용해서 협업을 진행 하게 된다면, 터미널(Mac)이나 cmd(Windows)를 통해 명령어를 사용하지 않고 진행 할 수 있다. (필자는 커맨드를 입력하는것이 좀더 편한것 같다 외우는것이 어려울뿐.. ) 이 글에서는 commit, push, merge, checkout 에 대해서 다루고 차차 이어서 Git 사용법을 적어 보도록 하겠다. 또한 IntelliJ에 Git이 연결되있다고 가정하고 진행한다. 연동하는 방법은 아래의 링크에서 확인 해보자. https://lucas-owner.tistory.com/31 - 장점 GUI 를 통해 직관적이다. Git 커맨드(명령어)를 사용하지 ..
2023.01.21
-
AES-256 - Encrypt(암호화) For Java
얼마전, 외부 서비스 업체에서 제공하는 데이터를 DB 에 적재해야 하는 신규 기능 개발이 있었고,필수 요구사항중에서 'AES256 암호화 필수 (Base64)' 항목이 존재 했고 설계,분석,개발 과정에서 알게된 내용을 정리한다. 해당 글에서는 AES/CBC/PKCS5Padding 방식으로 Java 테스트 코드를 구현했다. 요구사항 및 Flow 1. 외부 업체 -> 관리서버 API 요청 (필수 파라미터 3개, 전부 암호화) 2. 요구 데이터 응답(암호화) 3. 응답 데이터 기반, 데이터 생성 4. Batch Task 로 데이터 Receive 및 DB 적재 해당 요구사항을 만족하기 위해 AES256(Base64) 암호화에 대해 알아보자. 1. AES256 이란?AES (Advanced Encrypti..
2024.05.26
-
[IntelliJ] active profile 설정 하기 (Ultimate & Community)
IntelliJ (Ultimate, Community)에서 active profile 설정 하는 방법 IntelliJ IDE를 사용해서 Spring Boot 환경에서 개발하다 보면 profile 별로 실행을 해야 할 때가 존재한다. profile 별로 실행 할 때 마다, application.yml 설정을 변경하면서 하는 것은 굉장히 힘든일 일 것이다. 하지만, 실행 환경을 설정을 저장 해놓고 원하는 profile 별로 실행을 한다면 굉장히 편하지 않겠는가? - IntelliJ에서는 버전에 따라 active profile을 설정하는것에 대한 차이가 존재한다! - 만약 Profile 설정에 대하여 알고싶다면 아래의 링크에서 확인하고 오면 좋을것 같다! https://lucas-owner.tistory.co..
2023.01.02
-
[Redis] Redis - pub/sub 이란?
1. Message Queue pub/sub 은 Message Queue 라는 통신 방법중 하나이다. MSA(Micro Service Architecture) 의 구조에서는 모듈A 에서 모듈 B로 API 데이터를 넘겨야 하는 일들이 발생한다. 그런 상황에서 데이터 교환의 목적을 자주 사용되는 개념이다. 2. Redis pub/sub 이란? 위에서 설명했던, Message Queue의 메시징 패턴중의 하나이다. 채팅 시스템, 푸시 알림 시스템, 구독 시스템 과 같은 시스템에 사용된다. - 유의할점 Kafaka 의 경우 Topic 에 pub 되는 메시지들을 저장하는 구조이지만, Redis 의 경우 pub 메시지들을 저장 하지 않는다, 그런이유로 Subscriber 가 존재하지 않으면, 메시지가 사라지게 된다..
2023.07.16
-
[SpringBoot] QR코드 생성 & Test(링크이동) - zxing
1. 서론 몇년전 시작된 COVID19의 여파로 비대면, 비접촉 관련된 시스템들이 많이 생겨났다. (QR인증, QR결제 ...) 심지어 QR코드는 2000년 6월에 표준이 되었을 정도로, 오래된 기술이지만, COVID19 로 인해 사용범위, 활용성이 높아진것 같다. 더불어 옥외광고, 모바일 앱, 웹사이트 내부링크 등등 활용되는곳도 점점 많아지고, 생활에 점점더 밀접해지고 있다. 1-1. 바코드 vs QR 코드? 사실 일반인의 입장에서 보면, "바코드와 QR코드가 다른점이 뭐야? 둘다 똑같은거 아니야?" 라는 말을 하게된다. 왜 일상에서는 QR 코드를 더 많이 사용할까? 바코드 레이저(스캔물체)를 수평방향으로 인식해야 한다. 최대 20자의 정보 저장 가능. 바코드의 "I" 높이 중 일부분이 훼손되어도 인식..
2023.03.24