본문 바로가기

일상+자잘한 일/개발일지-unsolved.hgu

(11)
[Unsolved.ac/백엔드-2] 2번째 개발일지 개발 내용 3줄 요약1. APIs 호출 방법 정리2. Croller 공부 및 DB 연동3. RabbitMQ 공부 및 테스트 개발 소감OS에서 배운 지식이 백엔드 개발에서 필요하게 될 줄은 몰랐다. 프로세스간 통신을 위해서 message queue를 사용하게 되었는데, cs 지식이 도움이 됨을 느끼는 나날이다. 우선 rabbitMQ와 selenium을 처음 써봤는데 생각보다 다루기 쉽게 잘 만들어져있어서 좋았다.ISSUEBeautifulsoup의 동적 사이트 크롤링 불가문제 정보 크롤링시 오류 발생(문제 난이도가 없는 경우, 페이지가 없는 경우)배운 내용RabbitMQ 사용 방법 및 message queue 비교BS, Selenium과 같은 크롤러 사용법APIs 호출 방법 정리APIs 사용과 관련해서 문제..
[Unsolved.ac/백엔드-1] 1번째 개발일지 개발 내용 3줄 요약1. 비공식 APIs와 solved.ac APIs 엔드포인트 확인2. Spring 프로젝트 기초 공사 및 DB 연동3. DB 설계 개발 소감생각보다 진도를 나가지 못했다. 코드 작성은 하지 못하고 이것저것 확인만 하다 하루가 흘러버렸다.테이블을 결국 리팩터링 하는 순간은 오겠지만, 최대한 갈아엎는 순간을 피하기 위해 필요한 절차였다고 믿어야겠다. 과거 인턴시절 흘려들었던 api호출을 확인하는 부분이 이렇게 쓰일 줄 몰랐다!리버스 엔지니어링(역공학)은 처음 해보는 일이었는데, 새로운 방법을 고려한 좋은 시도였다. ISSUEMySQL8 버전을 쓰면서 다른 버전 세팅을 사용하여 에러 발생(ex: com.mysql.cj.jdbc.Driver 과 com.mysql.jdbc.Driver)(ex:..
[Unsolved.ac/8] 정리 및 계획 오랫동안 미뤄왔던 일을 다시 시작하려고 한다. 기존의 문제는 무엇이며, 개선 방안과 진행 사항을 정리하고자 한다.기존 시스템의 문제점API 호출 횟수의 제한 (대략 15분 /220회로 기억한다.)호출 횟수 제한으로 호출 간격 등을 조절해서 사용해야한다.Database 읽기/쓰기 횟수 제한 (무료버전 하루 2만번? 5만번? 정도로 기억한다.)호출 횟수 제한을 극복하기 위해 db에 데이터를 저장하고 읽어오는 방법을 사용했다.적당한 시간간격을 두고 api를 호출하여 db를 갱신하였다.flutter, firebase 기반 웹 프로그램이다.간단한 동작 이외 api정보를 가공하여 db에 정보를 계속 관리하도록 하는 문제가 있었다.개선 방안리눅스 서버 개설 및 cron 기능 활용하기횟수의 제한을 극복하기 위해 크론 ..
[Firebase/unsolved.ac/7] Firebase 데이터베이스 csv로 변경하기 DB를 몽고 DB로 변경하기 전 파이어베이스에 있는 자료를 살릴 수 있다면 살리기로 마음먹었다. 물론 테이블을 엎게 되어서 형태 그대로 사용할 순 없지만 안에 데이터라도 살릴 수 있다면 시간이 절약될 것이라고 판단했다. (사실 다 csv로 다운받고 보니 몇개 안되서 api호출 조금 더 하는게 이득이었을 수도) 1. Firebase cloud firestore 접속 후 -> 구글 클라우드 추가 기능 -> 가져오기/내보내기 클릭 2. 내보내기를 누른 후 원하는 데이터를 선택 전부를 선택하면 아래와 같이 나오고 내보내기 위해서 결제를 등록하라고 하는데 금액은 따로 청구되지 않는 것 같다. 3. 이후 클라우드의 BigQuery를 누른 후 데이터 세트 추가를 한다. 4.테이블 만들기를 누른 후  양식 입력 소스..
unsolved.hgu 총정리 1편 : https://readable-ko.site/130 [Flutter/unsolved.ac/01] 문제 배경 및 API 호출 문제 [22/11/01] 요즘 학교 백준 랭킹이 많이 내려가기 시작해 어떻게 하면 학교 순위를 올릴 수 있을까 고민하게 되었다. 학교에서 푼 문제 수는 중복되지 않은 문제를 해결할 때 올라가는 것을 알게 되 readable-ko.site 2편: https://readable-ko.site/131 [Flutter/unsolved.ac/02] 위젯 레이아웃 [22/12/03] 전에 이야기했던 것처럼 웹을 배포 기준으로 할 것이기 때문에 모바일 환경과 웹 환경을 다르게 해줄 필요가 있었다. 따로 비율에 따라 반응형(responsible)으로 구현하고 싶어 LayoutBuilder..
[AWS/unsolved.ac/06] aws lightsail ssh 접속방법 계속 이렇게 웹으로 접속하기가 귀찮기도 하고 가독성도 좋지 않아 ssh로 접속하기로 마음 먹었다. 설정에 account를 들어가면 SSH keys가 있는 것을 볼 수 있다. 여기서 키를 새로 생성하거나 업로드할 수 있다. 생성한 이후 다운로드를 통해 키를 로컬에 저장할 수 있는데 단 한 번만 다운로드 받을 수 있으니 주의해서 잘 보관하도록 하자. 다운 받은 후에 로컬로 가기 전에 원하는 서버에서 쓰는 키페어가 무엇인지 확인하자 같은 키를 쓰는 것을 확인하면 IP주소와 Username을 확인하여 연결을 시도한다. 아래 키워드에서 괄호 안에 부위를 자신의 것으로 채우면 될 것이다. ssh -i .//.pem @ 위치에서 키 를 부르고 유저이름과 서버주소를 입력하면 이렇게 뜰 것이다. 키의 permission..
[AWS/unsolved.ac/05] lightsail 웹 서버 만들기 우선 오늘은 라이트세일링에 nginx와 express만 설치해보기로 하였다. (아틀라스 mongo db까지 연동하려고 했지만 너무 큰 산인 것 같다 ㅎㅎ) [NginX 설치] 우선 아래와 같은 명령어를 차례로 서버에 입력하여 nginX를 설치해주었다. sudo -s apt-get update sudo apt-get install nginx service nginx start [노드 익스프레스] curl -fsSL https://deb.nodesource.com/setup_19.x | sudo -E bash - &&\ sudo apt-get install -y nodejs 먼저 위의 명령어를 통해 node.js와 npm을 다운로드한 후 아래 명령어를 통해 설치확인을 하였다. node -v npm -v su..
[AWS/unsolved.ac/04] AWS lightsail 생성 3편 글링크: https://readble-ko.tistory.com/153 [23/04/03] 3월 말에 바로 진행하고 싶었으나 lightsailing 계정을 처음 생성하면 3개월 무료라는 이야기를 접했다! 근데 문자 그대로 3개월이라서 월 말에 시작하면 손해라는 말을 듣고 4월까지 자료만 수집하고 기다렸다. [인스탄스 생성] 전에 언급했던 것처럼 AWS lightsailing으로 프로젝트를 생성하였다. 위치는 내가 코드를 개떡같이 짜더라도 조금이라도 물리적으로 가까우면 덜 느려지지 않을까 싶어 한국으로 했는데 큰 차이는 없을 것 같다. 이후 블루프린트를 선택하라는 말이 있어서 블루프린트가 무엇인지 찾아봤다. 블루프린트는 아마존에서 가장 최적의 상태로 어플리케이션을 OS에 지원해주는 서비스 같았다. 나..