본문 바로가기

전체 글56

Dockerfile을 이용해 Docker image 생성해보자. 우리는 이번 게시글을 통해 임의의 애플리케이션을 Docker Container로 실행가능하도록 도커 이미지를 생성하는 것을 학습합니다. 검색해보니 도커라이징(Dockerizing)이라고도 하는 것 같은데, 공식적인 단어는 아닌 것 같습니다. 0. 도커 설치하기 당연히 선행되어 도커를 설치해야합니다. 아래의 링크에서 자신의 운영체제에 맞게 접근하여 다운로드/설치를 진행합니다. https://docs.docker.com/get-docker/ 1. 테스트할 웹앱 생성하기 가볍게 /hello-world 으로 접근하면 "Hello, World!" 를 반환하는 컨트롤러를 생성해줍니다. 2. Java Application build하기 먼저, 생성할 도커 이미지에서 사용될 Application Jar를 생성해야합니다.. 2023. 12. 4.
일본 후쿠오카 여행기 3/3 完 📌 지난 글 후쿠오카 여행기 1 후쿠오카 여행기 2 오지 않았으면 좋았을 여행의 마지막 날이 밝았다. 오늘도 역시나 오전 8시부터 일정을 소화했다. (비행기가 오후 5시이기 때문에 2시 30분까지는 후쿠오카 공항 국제선으로 가기로 했다.) 마지막 날의 일정은 아래와 같다. 모닝커피 + 토스트 구시다 신사 구경하기 점심식사 캐널시티 하카타 구경 / 쇼핑하기 공항 이동 단출하지만 나름 알찬 구성이지 않나? 역시 여행 마지막날은 무얼 하든 항상 아쉽기만 하다. 모닝커피로 하겠습니다. 근데 이제 토스트를 곁들인... 코메다커피 하카타 일본의 프랜차이즈 카페입니다. 11시까지는 무료 조식 서비스로 빵을 줍니다. 이 정보를 보고 꽂혀서 3일 차 일정 중 제일 먼저 정했습니다. 커피도 맛있고 토스트도 맛있고 저렴합니.. 2023. 11. 13.
캡차를 버리고 턴스타일(turnstile)로 "문의하기가 안된다네요. 확인 좀 해주세요!" 우리 회사의 문의하기 기능은 구글의 캡차 v3가 적용되어 있다. 아무래도 아무것도 적용해놓지 않으면 스팸(공격성)성 글이 종종 들어왔었기 때문이다. (출근해서 이거때문에 귀찮아죽는 줄 알았다.) 그런데 이건 아무리 봐도 잘못된 선택이었던 것 같다. 구글이 점수를 지정해 주기 때문에 실제 사용자들도 부득이하게 봇으로 판단되는 경우가 은근히 있었다. 이로 인해 사람들은 불편했을 것이다. 상품 도입 등을 위해 문의하는데 안되면 당연히 이탈률이 있지 않았을까? 대안을 고민하면서도 사실 메인 업무가 중요해서 무시하던 중, 어디에선가 클라우드플레어에서 턴스타일(turnstile)이라는 캡차의 대안을 소개한 글이 불현듯 떠올랐다. 그래서 이걸 이번에 적용하기로 결심했다.. 2023. 11. 10.
일본 후쿠오카 여행기 2/3 📌 지난 글 후쿠오카 여행기 1 🫤1 "우리 하루는 외곽으로 빠져서 놀자." 🧑‍💻나 "그럼 유후인? 많이들 가더라" 🫤2 "너무 오래 걸리는데? 왕복 5시간이야" 🧑‍💻나 "그럼.. 다케오온센은 어때? 자전거로 여행하는 소도시이고, 당일 온천도 있대." "코엑스에 있는 별마당 도서관의 모티브가 된 도서관도 있대." 🫤3 "나 자전거 못타는거 알잖아." 🧑‍💻나 "하.. 🚬" 첫째 날, 새벽 1시까지 친구들과 맥주를 마시며 놀다가 아침 6시에 기상했다. 오늘이 2박 3일의 여행 일정 중 가장 하이라이트였기 때문이다. 아무래도 하루를 온전히 다 쓸 수 있는 날이기도 했으니까! 오늘의 일정은 이러했다. 1. 야나가와를 가서 뱃놀이를 한다. 2. 다자이후로 가서 다자이후 텐만구 및 거리를 구경한다. 3. 덴.. 2023. 10. 26.
큰일났다. 톰캣 로그에서 갑자기 한글이 보이지 않는다. 간단한? 개요 우리 회사의 핵심 상품(도메인)은 웹메일이다. 그중에서도 내가 속한 팀은 클라우드 인프라 기반의 웹메일 서비스 SaaS 운영 및 개발이다. (기타 모든 잡일...) 내가 입사 전 막연히 생각했던 것보다 웹메일 서비스는 파일의 I/O가 너무 잦고 크고 많다. 단순 EML을 열람하는 것부터 일반/대용량 첨부파일 다운로드, 드라이브에 저장되는 파일 UL/DL, 기타 등등 KB부터 시작해서 GB까지! (종종 어떤 고객들은 100GB 단위도 올리게 해달라 한다.) 그러다 보니, 서비스 규모가 커지니 슬슬 파일 다운로드를 할 때 서비스가 느려져서 VOC가 자주 인입됐다. 문제의 시발점 🫤 "아 이제 안 되겠다. 부하가 있는 서비스는 별도 서버로 옮깁시다." "근데 지금 CentOS7이 EOS 되기 직.. 2023. 10. 19.
Flutter에서 Google Spreadsheet에 데이터를 추가해보자. 🫤 "알림이 2번 와요", "파일 다운로드가 안 돼요" 😡 "OO가 안 돼요" 모바일 앱을 새로 배포하고 나니, 당연하게도 기존 고객들에게서 문의가 쏟아졌다. 문제는 역시나 문의 시 이슈를 파악할 수 있는 정보(Android인지 iOS인지, 앱 버전은 무엇인지 등)를 주지 않았다. 나 같은 경우, QA로 일했던 경력이 있었기 때문에 당연히 버전과 precondition 등을 제공해 줄 알았던 멍청이었던 거다. 이번엔 내가 이 문의하기 기능에 대해 어떻게 해결했는지에 대한 게시글이다. 왜 구글 스프레드시트로 정했을까? 나는 아래와 같은 요구사항이 필요했다. 1. 단순하게 문의를 받는 창구만 필요하다. 2. 이 단순한 구현을 위해 DB / Controller / Service 로직을 구현한다면 리소스 낭비라.. 2023. 10. 19.