티스토리 뷰
반응형
카카오 모빌리티 뉴스 스크립트 변경 후기
기존 우리 회사에는 뉴스 및 날씨 정보를 API로 만들어 카카오 모빌리티에 정보를 보내주고 있었다.
그러나 하루 단위로 100개씩 보냈던 데이터가 가끔 1개 혹은 100개 이하가 되는 경우가 있었다고 하여
데이터 갯수를 유지하기 위해 기존 json 데이터의 구조를 바꿔야했다.
목표
- DataBase로부터 일자별로 100개의 데이터를 수집하고 100개 미만일 경우 이전 데이터와 병합하여 100개를 채운다.
- 기존 날씨 데이터를 하나의 배열로 묶어 반환한다.
배운 것
데이터 형식만 변경하면 되는 쉬운 업무였지만 개발이라는 일의 흐름을 이해할 수 있던 좋은 기회였다.
돌아가게만 하자
라는 생각에서 예외사항을 고려하며 설계했고
난잡한 코드는
서버에 부담을 줄이기 위해 많은 고민을 했으며
기사 관리 서버의 작업 처리량을 99%까지 과부하 시켜 while
문을 피해야 하는 이유를 배운 시간이었다.
모든 서비스는 예외사항이 있다. 설마 이런일이 일어나겠어? 라고 생각하는 부분이 1년뒤에 일어날 수 도있고
매일 서비스를 이용하는 1,000명의 유저중 한명이 생각치도 못한 예외 사항을 찾아낼 수도 있다.
때문에 개발을 진행하면서 모든 예외사항을 찾을 수는 없어도 당연히 있을 수 있는 일 만큼은 대비를 해야 할 필요가 있다.
모든 기업의 서버는 우리가 만들어내는 스크립트 정도는 손쉽게 견딜 수 있다.
그러나 지저분한 코드가 만들어내는 부하가 10년이 쌓인다면 그 비용은 무시할 수 없을 것이며
1000명의 이용자가 데이터를 요청할 때 만들어내는 처리시간이 기하급수적으로 상승한다면 서버가 정지할지도 모른다.
때문에 우리는 코드를 간단하게
, 가볍게
, 안전하게
다루는 습관을 지녀야 한다.
반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 수학
- 릿코드
- interview
- C언어
- 자격증
- nginx
- Matlab
- docker
- 스프링부트
- 그래프
- spring-cloud
- springboot
- 스프링
- 면접
- Solid
- 프로그래머스
- Spring
- ajax
- security
- 알고리즘
- 디자인패턴
- OOP
- 백준
- Algorithm
- 매트랩
- java
- JPA
- CS
- 자바
- kakao
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함