전체 글

https://github.com/oddnine
React

[React] 리액트 빌드 후 S3에 올렸을 때 페이지가 안 보일 경우

S3 내의 설정에서 에러 페이지를 index.html로 설정해 주기. 패키지들의 버전 충돌 나는 것 해결해 주기. (나의 경우) 새로 고침 시 에러가 날 경우 url 경로 확인해 주기. 예를 들어, http://aws/user/1로 유저를 조회할 때 페이지가 안 보였음. 그래서 path variable이 아닌 파람으로 http://aws/user?id=1로 라우팅 하였다. 또한 user/detail/1 이런 방식도 안 되었다. 그래서 userDetail?id=1 이런 식으로 고쳐주었다. CORS 문제 모두 풀어주었는데 안 되길래 게이트웨이에서 CORS 설정을 하였다.

JAVA/Cloud

[OpenFeign] PathVariable annotation was empty on param 1, RequestParam.value() was empty on parameter 2. 오류 해결

msa로 환경을 구성하고 feign으로 통신하던 중 아래와 같은 에러가 났다. Caused by: java.lang.IllegalStateException: PathVariable annotation was empty on param 1. Caused by: java.lang.IllegalStateException: RequestParam.value() was empty on parameter 2. 그 이유는 Feign을 사용할 때 @PathVariable @RequestParam에 name을 아래처럼 명시적으로 넣어줘야 한다. @GetMapping("/sample/{samplePath}") String sampleGet(@PathVariable(name = "samplePath") String samp..

JAVA/Cloud

[Spring/Cloud] Spring Cloud Gateway에 JWT 검증 필터 사용하기

GitHub - oddnine/eureka-msa-practice-coupon: 회원가입 동시에 웰컴 쿠폰 발행하는 간단 MSA 예제 회원가입 동시에 웰컴 쿠폰 발행하는 간단 MSA 예제. Contribute to oddnine/eureka-msa-practice-coupon development by creating an account on GitHub. github.com 일단 게이트웨이에서 사용되는 필터 중 아래의 두 가지를 써볼 것이다. Global Filter: 모든 api 요청 시 필터 적용(먼저 실행) Custom Filter: 설정된 api 요청만 필터 적용 참고로 글로벌 필터랑 커스텀 필터 적용하는 방법은 크게 차이가 안 난다. filter 생성 나는 전역 필터로 모든 접근(로그인, 회원..

JAVA/Cloud

[Spring/Cloud] 유레카로 MSA 간단하게 구축하기 (with. Spring Cloud Gateway)

GitHub - oddnine/eureka-msa-practice-coupon: 회원가입 동시에 웰컴 쿠폰 발행하는 간단 MSA 예제 회원가입 동시에 웰컴 쿠폰 발행하는 간단 MSA 예제. Contribute to oddnine/eureka-msa-practice-coupon development by creating an account on GitHub. github.com 서비스를 구축하다 보면 한 서비스가 고장 났을 때 다른 서비스는 영향을 받지 않기 위해 MSA를 구축해야 한다. 시나리오 회원가입 즉시 웰컴 쿠폰을 발행해줘야 한다. 1. 회원가입을 요청한다. 2. 스프링 클라우드 게이트웨이에 접속한다. 3. 게이트웨이를 거쳐 유레카로 보낸다. 4. 유레카에서 해당 요청을 해당 서비스에 전달하고 로..

React/MobX

[React] MobX로 상태 관리해 보기 (예제 코드)

MobX에 대하여 · MobX ko.mobx.js.org MobX란? 애플리케이션 상태에서 파생되는 모든 것은 자동으로 되어야 합니다. MobX는 functional reactive programming을 투명하게 적용함으로써 상태 관리를 쉽고 확장성 있게 만들어주는 검증된 라이브러리입니다. 즉, 상태 관리를 해주는 라이브러리다. 설치 명령어 Yarn: yarn add mobx NPM: npm install --save mobx 사용해 보기 일단 나의 경우 위와 같이 flux를 사용해서 실시간으로 데이터를 받아오면 사건 목록에 리스트를 추가해줘야 한다. 그래서 사건들을 상태 관리를 하여 추가되는 즉시 렌더링을 해줄 것이다. store 생성 가장 먼저 상태 관리를 해주기 위해 store를 만들 것이다. 참..

JAVA/Redis

[Redis/kafka] 데이터베이스 동시성 문제 해결 코드 (STEP 4. Redis, Redisson, kafka로 과부하 줄이기)

GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결 과정 with Redis, kafka. Contribute to oddnine/spring-concurrency-problem-solving development by creating an account on GitHub. github.com [Redis/kafka] 데이터베이스 동시성 문제 해결 코드 (STEP 3. Redisson, kafka로 과부하 줄이기) GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링..

JAVA/kafka

[Redis/kafka] 데이터베이스 동시성 문제 해결 코드 (STEP 3. Redisson, kafka로 과부하 줄이기)

GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결 과정 with Redis, kafka. Contribute to oddnine/spring-concurrency-problem-solving development by creating an account on GitHub. github.com [Spring/Redis] 데이터베이스 동시성 문제 해결 코드 (STEP 2. Redisson 분산 락) GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결..

JAVA/Redis

[Spring/Redis] 데이터베이스 동시성 문제 해결 코드 (STEP 2. Redisson 분산 락)

GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결 과정 with Redis, kafka. Contribute to oddnine/spring-concurrency-problem-solving development by creating an account on GitHub. github.com [Spring/Redis] 데이터베이스 동시성 문제 해결 코드 (STEP 1. LOCK) GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결 과정 with ..

JAVA/DB

[Spring] 데이터베이스 동시성 문제 해결 코드 (STEP 1. LOCK)

GitHub - oddnine/spring-concurrency-problem-solving: 스프링 동시성 문제 해결 과정 with Redis, kafka 스프링 동시성 문제 해결 과정 with Redis, kafka. Contribute to oddnine/spring-concurrency-problem-solving development by creating an account on GitHub. github.com 프로젝트를 진행하다 보면 트래픽이 몰릴 경우 동시성 문제가 발생할 수 있다. 그러기 위해선 다양한 방법을 사용할 수 있는데 첫 번째로 나는 DB LOCK을 걸어볼 것이다. 상황은 다음과 같다. 1. 티켓 서비스를 제공하고 티켓을 n장을 준비해 둔다. 2. 스레드로 동시 접속으로 티켓을 ..

JAVA/Redis

[Redis] 도커 컴포즈로 Redis와 RedisInsight 설치해보자.

Redis란? Redis is an open source (BSD licensed), in-memory data structure store used as a database, cache, message broker, and streaming engine. Redis는 데이터베이스, 캐시, 메시지 브로커 및 스트리밍 엔진으로 사용되는 오픈 소스(BSD 라이선스), 메모리 내 데이터 구조 저장소 입니다. Redis는 캐시 기반의 인메모리 데이터 저장소로 분류하며 NoSQL 데이터베이스의 한 종류다. Redis는 메모리에 데이터를 저장하고 조회하는 빠른 성능을 제공하고 데이터는 키-값(key-value) 형태로 저장한다. 데이터의 구조는 문자열, 해시, 리스트, Set, Sorted Set 등 다양하게 활용..

혁키
혁키의 개발일지