본문 바로가기

일상+자잘한 일

(26)
[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에 지원해주는 서비스 같았다. 나..
[MongoDB/unsolved.ac/03] 배포 전 결정 사항 [23/03/29] 나의 오래된 프로젝트를 진짜 배포하기 위해서 그간 짧게 짧게 고민하던 것들을 결정하고 실행에 옮겼다. 혹시 과거 개발 이야기나 개발 내용이 궁금하다면 아래 유튜브와 블로그 글을 참조하면 된다!!ㅎㅎ 이전 글링크: https://readble-ko.tistory.com/131 || https://readble-ko.tistory.com/130 유튜브링크 : https://youtu.be/1iFPER_etxw 전 프로젝트의 문제점 분석 flutter frontend에서 API를 호출하여 유저측에서 api호출 계산이 일어나게 됨 firebase read/write 횟수 제한으로 api 갱신 중 더 이상 db 사용 불가 해결 방안 서버를 따로 두어 cronjob으로 api 호출 firebas..
[Flutter/unsolved.ac/02] 위젯 레이아웃 [22/12/03] 전에 이야기했던 것처럼 웹을 배포 기준으로 할 것이기 때문에 모바일 환경과 웹 환경을 다르게 해줄 필요가 있었다. 따로 비율에 따라 반응형(responsible)으로 구현하고 싶어 LayoutBuilder를 사용했다. BoxConstraints constrained를 통해서 현재 비율을 가져오고 1:1이 되는 경우부터 PC화면으로 간주하고 widget을 돌려주도록 하였다. return LayoutBuilder( builder: (BuildContext context, BoxConstraints constrained) { return Container( width: constrained.maxWidth, height: constrained.maxHeight, child: (constra..
[Flutter/unsolved.ac/01] 문제 배경 및 API 호출 문제 [22/11/01] 요즘 학교 백준 랭킹이 많이 내려가기 시작해 어떻게 하면 학교 순위를 올릴 수 있을까 고민하게 되었다. 학교에서 푼 문제 수는 중복되지 않은 문제를 해결할 때 올라가는 것을 알게 되었고 서로 풀지 않은 문제가 무엇인지 알 수 없어 우리가 풀지 않은 문제 리스트를 난이도 별로 제공하면 어떨까? 하는 생각을 하고 기획하게 되었다. [22/11/10] 백준 자체는 robots.txt로 확인해보니 크롤링을 허용하지 않았고 api가 없을까 고민하던 중 solved.ac에서 unofficial하게 제공하는 것을 알게 되었다. (https://solvedac.github.io/unofficial-documentation/#/) Web, Android, Apple 모두 범용적으로 쓸 수 있으며 내가..