본문 바로가기

당신이 감동할 때.

(357)
aws cloudfront 에서 query string 기반 cache 우회 aws cloudfront 로 제공하는 음성, 동영상 리소스가 있는데, 최근 인코딩을 잘못하여 모바일에서 버퍼링을 불러 일으키는 동영상이 있었는데, 인코딩을 최적화하여 다시 s3 로 업로드 하였으나 cdn 에서 문제가 있는 파일을 캐싱하고 있어서 여전히 버퍼링이 생겼고, 이를 해결하기 위해 aws 콘솔에서 별도의 invalidate 로 해결을 했었는데, 직접 invalidate 하지 않고 하는 방법을 찾아보고 아래와 같이 해결을 했다. 아래의 매뉴얼을 보고 그대로 하면 되는데, aws 콘솔 화면에서 cloudfront query string whitelist 를 어디서 설정할 수 있는지 좀 헤매서 정리함. https://docs.aws.amazon.com/AmazonCloudFront/latest/Dev..
1년 8개월 - 회고 지금 회사에 입사한 지 1년 8개월. 처음엔 일을 하면서 블로그 글도 많이 쓰려고 노력 많이 했지만, 어느 순간부터 이런 저런 핑계를 대며 글을 잘 못쓰고 있다. 그래도 일 하면서 알게된 것들은 사내에서 만큼은 많이 공유/전파하려고 노력은 하고 있다. 경기도 양평으로 이사간 후, 평일 매일 서울 강남으로 출퇴근하는 와중 간만에 혼자 서울에서 아내를 기다리고 있는 시간이 되어서, 뭘 할까 고민하다가 기술적인 글을 하나 쓰는 것보다 이런 회고 글을 적는 게 더 마음이 편하고 그냥 손이 가는대로 써도 될 것 같아서 쓰게 되었다. 일단, 회사에 처음 입사할 당시에는 Spring Boot 로 백엔드를 개발하는 포지션이 내 자리였다. 스타트업 특성(a.k.a. 인력 부족)에 따라 내 업무는 점차 확장되어 갔다. #..
[pt-online-schema-change] 아주 큰 테이블(1billion rows) ALTER troubleshoot 및 후기 데이터로 먹고 사는 회사답게(?) 약 10억건이 넘는 rows 를 가진 테이블이 하나 존재한다. (그냥 샤딩, 파티셔닝 같은 걸 안 한거에요 ㅋㅋ)서비스가 시간이 지나갈수록 초기 설계 당시에는 고려가 되지 않은 사항들로 인해 변화된 요구사항에 의해 테이블도 그에 맞게 ALTER 가 필요했다.사실, 작년에도 on-premise (IDC)에 있던 데이터베이스를 클라우드 환경으로 이전할 때만 해도 이 테이블의 rows 는 약 5억~6억건 사이였던 것으로 기억한다.여튼, 그 때도 pt-online-schema-change 의 도움으로 무사히 ALTER 는 성공을 했었고, 별 이슈가 없었기에 사내에만 간단히 문서화한 게 전부였는데, 이번에는 뭔가 잘 안 되서 5번만에 성공을 하였는데 사실 정확하게 5번째에도 왜 ..
[Centos7] Paths 가 만들어 내는 임시 파일은 내가 지우지 않아도 될까? 요즘 스프링 부트로 파일 업/다운로드 시스템을 구현하고 있다.여러 프로젝트에 흩어져 있고 제각각인 구현 방법과 어느 시스템에서 이 파일을 만들고 업로드했는지 찾는데 드는 비용이 만만치 않아서, 시스템을 일원화 하기로 했다. 그렇게 java.nio.file.* 패키지를 이용하여 개발하는 중, Files.createTempFile() 라는 메소드를 봤는데 이 API 가 생성하는 파일이 계속 쌓이는 건 아닐까 하는 노파심/걱정이 생겼다. 그래서 조금 찾아봤다.서버의 운영체제 배포판은 Centos 7 이고`java.io.tmpdir` 에 대해서 별다른 설정을 하지 않은 Spring Boot 앱은 `/tmp` 디렉토리를 임시 파일 공간으로 사용하고 있다.그렇다면, /tmp 디렉토리는 자바 뿐만이 아니라 리눅스도 ..
리눅스 zsh 설정 간략 명령어 정리 # yum install -y zsh# echo $(which zsh) >> /etc/shells# sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"# cd ~# git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting# git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestion..
pt-online-schema-change 사용하기 pt-online-schema-changepercona tools 설치# curl -O https://www.percona.com/downloads/percona-toolkit/3.0.8/binary/redhat/7/x86_64/percona-toolkit-3.0.8-1.el7.x86_64.rpm# yum install percona-toolkit-3.0.8-1.el7.x86_64.rpm확인# pt-online-schema-change --alter "CHANGE COLUMN STRINGANSWER STRINGANSWER TEXT CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci'" D=ovey,t=SURVEY_ANSWER --dry-run --ask-pass실..
리눅스에서 파일 확장자 일괄 변경 명령어 find . -name "*.jsx" -exec rename 's/.jsx$/.js/' {} \;
[React] 리액트로 백오피스 개발하며 경험한 추천 npm 라이브러리 (블로그를 starrybleu.github.io 로 옮겼었는데, 생각보다 markdown 방식으로 글을 쓰기가 그다지 편하지 않았고 이미지 첨부하면서 작성하는게 영 귀찮아서 다시 티스토리에 글을 써보려고 한다. JPA specification 관련 글 몇개는 저기 있다. 언제 옮겨오지?) 약 지난 11개월동안, 사내 백오피스 웹 앱을 전면 개편하기 위한 개발을 하고 출시를 하고나서 얻은 경험을 바탕으로 리액트로 UI/UX 개발을 하면서 알게된 좋은 라이브러리를 정리하고자 글을 쓰게 되었다. 전반적인 의견으로는 npm 라이브러리의 다운로드 수가 많은 게 가장 좋다. 1. UI framework- reactstrap : 현재 최신버전 bootstrap 4 기준의 CSS 프레임워크. 구 버전의 IE 에 적용하..

반응형