- 대규모 트래픽을 다루어 본적은 없지만, 이를 다루기 위한 공부를 진행해 보았습니다.
- 캐싱 서버와 정합성 검증 로직
대용량 트래픽을 서버에서 처리할 때에 Redis와 같은 NoSql을 통한 캐싱이 큰 도움을 주었다고 하는데, 미리 데이터를 저장해 놓고 정합성을 잘 검증하기만 하면 매번 DB와의 통신을 하지 않고도 쌓여 있는 데이터에서 필요한 것을 뽑아 사용할 수 있다고 했습니다.
즉 미리 모든 데이터를 캐싱시켜 두고, 이 데이터들을 상황에 맞추어 쓰기만 하면 여러 트래픽이 올 때에 매번 서버와 통신하지 않고도 데이터를 활용할 수 있다는 것이었습니다.
이를 통해 여러 방식으로 트래픽이 많을 때의 처리를 진행할 수 있다는 것을 알았고, 레디스를 단순히 활용하는 것을 넘어 깊은 이해를 하고 싶어 관련 공부도 병행 중에 있습니다.
버넥트에서 근무하며 단순히 공부를 넘어 실제로 현업에서 많은 것을 익히고 싶습니다.
- 동시성 처리와 synchronized
여러 트래픽이 동시에 들어올 때에도 마찬가지로 데이터를 잘 관리하기 위해 많은 과제가 필요합니다.
이에 필요한 [DB에서의 Lock](https://hello-backend.tistory.com/213), [자료 구조 상](https://hello-backend.tistory.com/110)에서의 [thread-safe issue](https://hello-backend.tistory.com/111), [Redis를 사용한 처리 방법](https://hello-backend.tistory.com/214) 등 다양한 방안들을 고민해 보았고, 관련한 프로젝트를 진행해 보았습니다.
https://github.com/RyooChan/coffee_traffic_study
https://github.com/RyooChan/stock
- 기술자로서 문제를 해결하기 위해 노력해 보았습니다.
[문제 해결 능력과 창의성에 관하여]
대학교 때에 기존 도어락에 필요하다고 생각한 기능을 부여하기 위한 프로젝트를 진행해 보았습니다.
기존의 도어락은 여러번 같은 번호를 누를 경우 다른 사람이 이를 알아볼 수 있고, 항상 동일한 번호를 사용하기 때문에 정보의 탈취가 쉬운 단점이 있었습니다.
이를 해결하기 위해 어플리케이션과 연동하여 인증받은 사용자만이 1회용 비밀번호를 통해 도어락을 사용할 수 있게끔 하는 프로젝트를 해 보았습니다.
해당 프로젝트는 한이음이라는 국가 지원 프로그램에서 진행하였으며, 브레인 스토밍을 통해 기존의 아이디어에 추가로 많은 내용을 더했습니다.
1. 취약계층의 경우 도어락에 미리 등록하여, 일정 기간 개/폐 기록이 없는 경우 자동으로 주변 관공서에 연락이 가도록 하는 기능
2. 도어락을 터치패드로 구성하여 어플리케이션을 통해 UI를 마음대로 변경 할 수 있도록 하는 기능
3. 임시 비밀번호를 발급하여 해당 도어락에 등록된 구성원이 아니여도 출입할 수 있도록 하는 기능
4. 가족 여행 등 아무도 해당 도어락을 사용하지 않을 예정일 때에 작동 자체를 막을 수 있도록 하는 기능
5. 도어락의 개/폐/에러 로그를 저장하여 확인할 수 있도록 하는 기능
등, 여러 아이디어들이 제안되었으며, 이 중 저희의 기술과 시간 상 구현 가능하다고 판단된 기능을 실제로 완성해 보았고 한이음 프로젝트에 성공적으로 제출할 수 있었습니다.
그리고 이런 다양한 아이디어들을 통해 특허를 출원하였으며 생활에 있어 불편한 것이 있다면 이를 해결하기 위한 대응 방안을 생각하는 법을 알 수 있었습니다.