본문 바로가기

일기

2023-01-05

Redis 를 통해서 비회원 로직을 만들기로 조원분들과 얘기가 정해지고 나서 그렇게 이해하고 계속해서 구현을 하고 있었다.

그런데 다른 조에서 Redis를 채팅에서도 이용을 한다고 하시길래, 그렇게 되면 Redis 를 사용하는 이유가 하나 더 늘어나게 되는것이기에 hash 방식을 사용해볼까 싶었다.

그렇게 하면 좀 더 세분하게 나누어서 사용이 가능할거라는 판단에 진행하게 되었는데...

 

 

위 부분의 타입을 지정한 부분이 너무 이해가 가질 않는다...

그래서 이 부분에 대해서 더 공부가 필요한 상황인데.. 우선은 구현하는데 문제가 없었기에(왜지 대체..) 더이상 시간이 지체되면 조원분들한테도 민폐이기 때문에 기능을 적용하고 나서 좀 더 공부를 해야할 듯 하다.

저 부분에 대부분이 String, Object 인데 사람마다 다르게 쓰이더라.. ?, ? 으로 쓰는 사람도 있었다.

 

우선은 그래서 이번에는 기존의 opsForValue().set 으로 저장하는 방식이 아닌 Repository 를 사용하기로 했다.

 

Repository 코드

 

우선 컨트롤러에 @RequestBody 를 통해 requestDto 를 만든 다음

이를 이용해서 포스트맨으로 들어가는지 확인하면 hash 구조가 잘 작동하는지 확인을 했다.

작동... 자체는 하는데 내가 원하는 형태가 아니여서 맘에 드는 형태로 만들기 위해서 이리저리 검색해봤는데...

 

암...ㅁ... 내가 머리가 나쁜게 원인이었겠지...

 

우선 해결 자체는 했는데 그럼에도 좀 맘에 안드는 형태였다...

 

 

그리고 위처럼 자동값증가를 아래의 블로그를 참고해서 진행했었는데,

이걸 쓰면서도 이해가 잘 가지 않는 상태이고 결과값도 좀 맘에 들지 않았는데 결국 우선 이렇게라도 구현을 해 봐야 할 듯 해서 자세한건 다음에 알아보기로 하고 일단은 구현에만 몰두해서 구현자체는 했다.

 

 

Redis 동시성 이슈 개선하기

Redis에서 조회수 증가 동시성 이슈 조회수를 Redis에 캐싱하고 나중에 RDB로 write back해야하는 일이 있었다. Redis에서 해야하는 일은 게시물이 조회되면 → 해당 게시물의 id를 key로하여 조회수를 저

dev-monkey-dugi.tistory.com

 

그러고나서는 이번에는 지금 하고 있는 프로젝트의 csv 파일을 db 에 업로드하는 방법을 막 찾아다녔더니 아래와 같은 글을 발견할 수 있었다.

 

 

[Spring] SpringBatch를 사용해 csv 파일 읽어 DB에 저장

프로젝트 폴더에 있는 csv 파일을 읽어 적절한 엔티티 형태로 바꿔 DB에 저장하는 방법을 알아보자. Spring Batch 배치(Batch)는 일괄처리 란 뜻을 가지고 있다. 만약 대용량의 파일을 DB에 저장하는 기

gksdudrb922.tistory.com

 

우선은 해당 블로그를 참고해서 이리저리 코드를 짜서 구현하는데에는 성공했다.

다만, 해당 코드를 이해하기에도 너무 어려웠고 사용하면서도 정확히 어떤방식으로 작동하는지, 이걸 통해서 DB 에 업로드 하게되면 DB 에 처음보는 테이블이 생기는것이 이해가 가지를 않았다.

 

어찌저찌 코드 자체는 이해를 좀 했으나 이걸 여기 말고 어디에 사용해야 할지, 또 이 코드를 내가 다시 사용할 일이 있을까하는 의문이 있어서 결국엔 그냥 시간만 낭비한 것 같았다.

 

왜냐하면...

 

IntelliJ 에서 아주 쉽게 올리는 방법을 지원해주기 때문이다...

 

그냥 DB 테이블 에다가 우클릭해서 파일에서 가져오기로 가서, csv 파일을 넣어주면 끝이었다...

(이 간단한 걸 몰라서 코드로 하느라 3시간을 날리다니 ㅡㅡ;;)

 

뭐 그래도 덕분에 csv 파일이 뭔지, 어떻게 만드는지에 대해서는 알 수 있었다...

 

'일기' 카테고리의 다른 글

2023-01-07  (0) 2023.01.07
2023-01-06  (0) 2023.01.06
2023-01-04  (0) 2023.01.04
2023-01-03  (0) 2023.01.03
2023-01-02  (0) 2023.01.02