신입일기

[신입일기 - 76 주차] 로직 개선 쉽지 않구만~

듬듬 2024. 4. 22. 19:29

기간 : 2024.03.11 (월) ~ 2024.03.15 (금)

 
테스트도 하고 .. 수정도 하고 .. 아주아주 바빴다.. 바쁜만큼 뿌듯했던 것 같기도 하고.. 😆👍


🥰 한 일

 

1.  로직 개선

 
 팀 내 자체 요구사항이다. 개선이 필요했던 이유는, 몇몇 화면들은 서버 속도가 느린 것과 상관없이 데이터를 계속 주기적으로 요청하기 때문에, 요청이 계속 쌓이기 때문이였다. 따라서, 데이터를 받아온 후 다시 요청하도록 개선하였다.

 

 서버 자체에서 에러가 발생한 경우에는 ,, 에러 응답 받은 이후에 다시 요청하도록 했던 것 같다. 그렇게 하니까 요청이 쌓이긴 했지만.. 전보다는 덜 쌓이기도 하고,, 서버에서 에러 발생하는 경우만 없으면 된다.

 

 찾다보니까, ngrx 의 getWithQuery 를 사용하는 화면들은 모두 에러가 발생하더라. 10초 내로 데이터를 가져오지 못하면 에러를 발생시키는 것 같았다. 처음에는 전체 화면 대상으로 네트워크 지연 시키면서 진행했다. 지금 생각해보니까 그렇게 하나하나 확인할 필요까지는 없지 않았을까.. 하는 마음도 있다. 그거 때문에 좀 더 오래 걸렸던 것 같다.

 

 

 

2. pending 걸리는 현상 관련 방안 조사 

 
 데이터가 pending 이 걸리는 현상이 존재했다. 정확히는 한 화면에서 2가지의 문제가 있었다.

     1) 데이터 요청 쿼리 실행시간이 10초를 넘으면, 데이터를 업데이트 하지 않음. (화면에 데이터가 출력되지 않음)

     2) 최대 10000개 까지만 출력됨. (그 이후의 데이터들은 보이지 않음)

 
요 한 주 동안은 쿼리 개선 방향과,, 최대 10000개 보여주는 이슈에 대해 수정 방향을 생각한 후 팀장님께 검토 요청드렸다. 

     1) 쿼리 개선 : JOIN 하기 전에,, 데이터 많은 테이블을 먼저 조회해서 LIMIT 으로 자른 후 JOIN 

     2) 최대 10000개 개선 : 그리드 페이지 넘어갈 때마다 요청하도록 수정

 

(열심히 생각은 했었지만 .. 결국에는 둘 다 안하게 되었다. ㅎ.ㅎ..~)


⭐ 느낀 점

 
1. 클린 코드를 위한 노력 필요함.

 

 로직 개선할 때 느꼈던 부분이다. 그렇게 짠 코드가 최선이긴 했으나.. 뭔가 맘에 안들어서 이걸 적용해도 되나 고민을 조금 오래 했다. 하하.. 더 깔끔하게 코드를 작성하기 위해서 좀 노력할 필요가 있는 것 같다. 잘 짜여진 코드들을 많이 접하다 보면 조금 더 성장할 수 있지 않을까?! ㅎㅎ 다른 사람이 작성한 코드도 좀 봐야겠다~! 읽기 쉽고 이해하기 쉽게 코드를 잘 작성해보자 😊


 

계단에서 만난 무지개떡

 

 

 그래도 조금씩 성장하고 있다는 게 느껴진다. 잘하고 있다. 생각보다 더 잘해내고 있다~ 기특하다 ㅎ.ㅎ 앞으로도 파이팅해보자~! 🥰