Back/Server
EB nginx 설정 건드리기
EB 쓰다가 EB에 nginx설정을 건드려야할 때가 있다.처음에 eb + ecr 도커 이미지로 연결해서 올려 놓은 후에,nginx바꾸려고하면 eb에선 그런거 설정할 수 있는 것도 제공 안한다. alb에 들어가서 수정할려하면 수정도 안되고, (잠깐은 되는데 바로 바뀜ㅎ)지멋대로 돌아가고 아주 짜증이 난다ㅎㅎ..몇개 있는 레퍼런스들이라고는 거지같고, 동작도 안한다 ㅎㅎ..결론은 nginx건드리고 싶으면무조건 zip파일만 올려야 된다 ㅎㅎ.. 난 zip파일 올리기 싫은데, 그냥 ecr에 있는 이미지만 활용하고 싶은데 ㅎㅎ시간도 없고, 일단 zip파일을 올리기로 했다. 여튼 각설하고간단하게루트 디렉토리에 이렇게 만들어주고.내용은 바꾸고 싶은 내용을 적자 (예시)client_max_body_size 20M; 이..
[API] H?D 교육 스킵
H?D 직장인 교육 듣기 싫어 하하하하하하하 하하하 일잘러의 슬기로운 노트 뭐시기라니 하하하하하 이걸 안들으면 독촉 전화가 오기 때문에 꼭 들어야 한다.본론1. 개발자 도구에서 쿠키값을 복사한다.2. postman, insomnia등 api툴에도 cookie 셋팅을 고대로 해준다.3. origin, referer을 해당 도메인과 똑같이 맞춘다.4.payload랑 header 잘 보고,Chapter_Number, Chapter_Seq, Contents_idx 등등1씩 더해 주고,progressTime완성된 채로 찍는다.스크립트를 만들어 두고, 계속 돌리면 모든 팀원들의 소중한 시간을 아낄 수 있따
[Ubuntu] firebase-admin - error:25066067:DSO support routines:dlfcn_load:could not load the shared library
이번에 채팅 서버를 새로 파면서 처음 보는 문제가 생겼다. 파이어 베이스를 활용해 푸시 알람을 보냈는데, 특정 알람은 푸시가 가고, 또 어떤건 안되고, 확인해보니 이런 로그가 떴다. Error: error:25066067:DSO support routines:dlfcn_load:could not load the shared library at Sign.sign (node:internal/crypto/sig:131:29) at ServiceAccountSigner.sign (/node_modules/firebase-admin/lib/utils/crypto-signer.js:65:37) at /node_modules/firebase-admin/lib/auth/token-generator.js:135:44 a..
[EC2 부하테스트] Apache ab test
EC2에 스트레스 테스트를 했다. 사실 부하 테스트는 조금 더 정확하고 구체적으로 해야겠지만, 일단은 DB커넥션과 반응속도만 급하게 알고 싶어서, 일단 가볍게 할 수 있는 apache ab test를 활용하기로 했다. 공식문서 ab - Apache HTTP server benchmarking tool - Apache HTTP Server Version 2.4 ab - Apache HTTP server benchmarking tool ab is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache i..
[Aws RDS Aurora Serverless MySQL] 외부 접속
새로 시작할 서비스의 DB용량을 정하는게 어려웠다. 예측불가능했기 때문이다. 새 서비스의 트래픽을 정확히 예측할 수 있으면 좋겠으나, 누가와도 정확히 예측하긴 어려울 것이다. 조금 비싸더라도 RDS를 사용하기로 결정은 했으나, 어느정도 감당될 지 감이 안왔다.. 경험부족이 크지 않을까. 여러 이유들로 DB단에서 Auto Scalling이되는 Serverless를 사용하기로 했다. 다만 레퍼런스가 부족하고, 외부 접속이 허용 안되는 문제점이 있었다. (특히 워크벤치 힝..) 안타깝게도 나는 워크벤치없인 살 수 없는 몸이 되어버린 찐따였다. 떄문에 외부접속을 허용시켜보기로 했다. 여러 방법이 있지만 그중 haproxy를 결정했다. haproxy는 기본적으로 Reverse Proxy형태로 동작하며, 서버 앞단..
AWS WAF Custom Rule 간단 예제
cors를 맞추다가 스트레스 받아서 기존의 waf에 cors과 관련된 것들을 처리할 수 있을 거라 생각했는데, 역시나 있었다. 우아한 형제들 기술 블로그를 참조해서 대강 설명을 읽고, 가볍게 작동만 시켰다. 내가 원하는 것은 특정 도메인이 아니면 요청을 없애고 싶었다. ALB에 WAF옵션을 붙여놨기 때문에 WAF 옵션만 설정해줬다. AWS WAF -> Web ACLs -> acl 선택 후에 커스텀 룰을 만든다. 룰 설정 header에 origin에는 도메인 주소가 실려있어서 활용했다. header에 origin에 프론트 도메인이 없으면 block시키는 조건이다. 이래도 되나 싶긴 하지만, 일단 원하는 것은 만들어 냈다. 추후 여러 조건들을 활용해서 커스텀 룰을 더 많이 만들고, 디테일한 설정도 가능할 것..
[MySQL] Full Text Search Aws Aurora
mysql에서 데이터를 검색해야하는 작업을 해야했다. like같은걸 쓸 수 있지만 양심상 패스했다. mysql full text search를 활용하여 검색을 하기로 결정했다. 후엔 시간이 나면 일라스턱 서치같은 검색엔진을 따로 적용해볼 예정이다. ALTER TABLE 테이블명 ADD FULLTEXT INDEX 키값(적용할 컬럼1, 적용할 컬럼2) WITH PARSER NGRAM; 이렇게 Ngram을 포함해서 검색하고자 하는 컬럼에 FULLTEXT INDEX를 걸어준다. 처음에 Ngram은 자동으로 포함된다고 들어서, 안했는데 aws aurora는 그딴게 없었다. Ngram은 단어단위로 쪼개서 인덱싱을 한다. 기본 사이즈는 ngram_token_size 2 라서 2글자를 쪼개서 저장한다. 여기서 생기는 ..
몽고DB 아틀라스 연결
맨처음 DB를 할 때 NoSql을 쓰고, Nosql 찬양을 하다가.. SQL을 제대로 쓰고 나서 NoSql의 한계를 느끼고, 안쓴지 꽤 됐는데, 안쓰다보니까 기억이 가물가물해서 오랜만에 공부겸 테스트겸 몽고db로 구축을 하려한다. 일단 아틀라스 들어가기~ 새로운 프로젝트를 프리티어로 만든다. SECURITY를 설정한다. Database Access, Network Access를 설정해준다. 실제 프로젝트에 쓸게 아니라 그냥 All Access로 모두 허용으로 해줬다. 클러스터에 들어가서 어디에 연결할건지 정한다. 어디에 사용할건지 정한다. 나는 몽고DB compass에서 보려고했기 떄문에 Compass를 선택했다. 그 후 password 자리에 처음에 Database Access에서 설정한 비밀번호를 넣..