이번에는 michelin API를 만들면서 그동안 벌인 실수들을 나열해 보겠다.
처음에는 WAS와 DB를 같은 곳에 운영을 했는데 생각해보니까 가득에나 RAM 용량이 작은데 같은 곳에 동시에 운영을 해서 괜히 RAM을 잡아먹게 한 것 이었다. 내가 미친놈이었다. 현재는 DB 서버를 별도로 구축을 했고 새로 구축한 DB 서버를 바라보고 있다.
API에서 중요한 것중에 하나가 보안성인데 DB설계 및 데이터 백업을 하는 것 까지는 좋았지만 github 저장소에 DB설계 및 데이터를 push해서 차후 보안에 문제가 생길 뻔 했다. 지금은 파일을 별도로 관리하고 있다.
이 문제는 DB서버를 새로 구축하면서 해결했는데 새로 구축한 DB에 사용자를 추가했고 실제 미쉐린 데이터만 있는 곳에 select만 가능하도록 권한을 조정했다. 현재는 새로만든 사용자로 연결이 되도록 수정했다.
이부분은 실수라고 하기 보다는 약간의 아쉬움이라고 할 수 있겠는데 RAM의 용량을 아끼기위해 라는 이유로 지원이 종료된 소프트웨어를 사용한 것이 마음에 걸렸었다. 예를 들자면 이번 프로젝트에서는 mariadb5.5 버전을 사용했는데 mariadb5.5 버전은 2015년 2월부로 지원을 종료 했지만 10.5버전은 장기 지원 버전이라 소프트웨어 안정성의 관점에서 보면 mariadb10.5버전을 선택안 한 것이 좀 스스로에게 아쉬웠다.