일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- async
- SAA
- 중급파이썬
- lambda
- Class
- react
- 카톡
- 채팅
- socket io
- dict
- 파이썬
- AWS
- Vue
- flask
- Props
- RDS
- EC2
- MongoDB
- NeXT
- 튜플
- git
- S3
- pandas
- merge
- docker
- crud
- node
- TypeScript
- SSA
- wetube
- Today
- Total
목록AI 웹개발 트랙 - 내배캠 (79)
초보 개발자

동기, 비동기는 이름부터 마음에 안든다. 동기는 위에서부터 차례대로 코드하나가 실행이 끝나면 그제서야 다음코드를 실행하고 또 끝나면 다음코드를 실행하고, 다음코드로 가기위한 전제조건이 앞의 코드가 실행이 완료되면 간다. 비동기는 앞의코드가 끝나지 않아도 바로 뒤의 코드로 넘어간다. 앞의 코드의 연산이 끝날 때 까지 코드 실행을 멈추지 않고 다음 코르를 먼저 실행시키는 것이다. 가장 대표적인 사례가 ajax라고한다. 아래와 같은 코드가 있다고 할 때 언디파인드가 리턴이 되는데 그 이유는 ajax를 통해서 값을 받아올 때 까지 기다려주지 않아서 기존에 있던 undefinded 그대로 출력이 된 것이다. function getData() { var tableData; $.get('https://domain.c..

모든 데이터를 한번에 가져오기 보다는 pagination을 사용하여 깔끔하게 구현하는 것이 좋다. 하지만 이번에는 번호로 지정된 pagination보다는 스크롤 하면 데이터를 받아오는 방식을 사용해보고싶다는 생각이 들었다. 따라서 구글링해본 결과 여러가지 방법이 있었지만 이미 만들어진 것을 사용해보려고 한다. 먼저 아래에 접속한 뒤 다운로드를 하고, jquery.waypoint.min.js와 infinite.min.js파일만 우리 서버의 static/js로 가져온다. Waypoints (imakewebthings.com) Waypoints Waypoints is the easiest way to trigger a function when you scroll to an element. var waypoin..

팀원들끼리 같이 협업할 때 패키지 버전이 다르면 문제가 생길 수 있기 때문에 같은 버전을 사용해야한다. 그러기 위해서 poetry 가상환경을 사용하는 경우에는 toml파일과 lock파일을 공유하여 poetry install을 하여 버전을 맞춰야 한다. poetry install 그럼 기존에 있던 버전보다 높은 버전이 적혀있으면 업데이트 되고 설치되어있지 않은 패키지들은 설치가 된다. 만약 toml파일만 새로 가져와 덮어쓴 경우에 peotry install을 하면 기존에 내가 가지고 있던 lock파일과 달라서 오류가 나게된다. 반대로 lock파일만 있고 toml파일이 없는 경우에도 설치가 안된다. 그냥 toml파일과 lock파일 둘다 있어야 한다고 생각하면 될것 같다.

2021.12.16 - [Python/윤성우 열혈 파이썬] - 9강 제너레이터 함수 9강 제너레이터 함수 [제너레이터에 대한 이해와 제너레이터 함수] 이번에 소개하는 제너레이터는 iterator 객체의 한 종류이다. 때문에 제너레이터를 전달하면서 next함수를 호출하면 값을 하나씩 얻을 수 있다. 제너 taehyeki.tistory.com generator란 전에 윤성우 열혈파이썬에서 배운내용을 정리한 적이 있다. 장고 심화실무 강의에서 비동기에 설명을 할 때 generator를 먼저 설명해주셨다. 이유는 generator객체를 사용하면, 함수가 살아있는 상태?가 되므로, 따로 바깥에 변수를 지정해두지 않아도 함수안에 local변수를 지정해서 그걸 while True: 무한반복으로 로컬 변수를 yeild..

이번에 하게 된 과제는 넷플릭스 클론코딩입니다. 저희 팀원은 저를 포함해 5명입니다. 저는 여기서 User 모델을 담당하여 이와 관련된 기능을 맡았습니다. 이 글에서는 제가 담당하고 구현한 기능에 초점을 맞추어 설명하겠습니다. 레트로플릭스 팀 과제를 시작하기 전 처음에 어떤 식으로 과제를 할지 고민하던 중 90년대부터 2000년대 까지의 작품들로 구성된 넷플릭스, 이름하여 레트로플릭스를 만들기로 하였습니다. User모델 장고에서 기본으로 제공하는 AbstractUser를 상속하여 만들었습니다. 찜한 영화를 담기 위한 favorite_movies, 생일을 담는 birthday, 성별을 담는 gender, 닉네임을 담는 nickname, 프사를 담는 profile_img, 깃허브, 카카오로 혹인 회원가입을 ..

퍼블릭 방식 접속 데이터 베이스의 옵션이 퍼블릭 액세스 가능으로 표시되어있어야 퍼블릭방식으로 접속이 가능하다. sudo mysql -h데이터베이스엔드포인트 -u아이디 -p 패스워드 입력 이렇게만 해주면 된다. 단, 이상태에서는 접속이 불가능 하다. 우리가 만든 데이터베이스의 보안그룹에 접속하여, 누구나 접속이 가능하도록 설정을 해주어야한다. 또 어떤 서버에 접속할 것인지 지정하는 포트번호도 지정해주어야 한다. 내 IP로 지정하면 내 IP에서만 접속이 가능하지만, anywhere로 해두면 어디서나 접근이 가능하다. 비공개상태 접속 데이터베이스에 우리가 생성한 EC2에서만 접근이 가능하도록 하는 것을 말한다. 좀 전과 반대로 불가능에 체크해주자. 그리고 ec2를 생성하고 그 ssh 방식으로 접근해보 ec2를..

EC2를 생성하여 AWS로부터 하나의 컴퓨터를 받았다. 그리고 거기에 아래와 같이 명령어를 입력하여 python3을 python으로 입력해도 알아들을 수 있도록, pip3를 pip로 입력해도 알아들을 수 있도록 설정을 해주고, flask 와 boto3을 받았다. # python 이라는 명령어로 3 버전 이상을 실행하도록 하는 명령어입니다. sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10 # pip3 설치 sudo apt-get update sudo apt-get install -y python3-pip # 버전 확인 pip3 --version # pip3 대신 pip 라고 입력하기 위한 명령어 # 아래 명령어를 입..

나의 버킷이 속하는 리전에서 정적호스팅을 사용하면, 빠르지만 만약 다른 리전에서 사용하면 느릴 것이다. 그럼 리전마다 s3를 만들어주면 해결이 가능하겠지만, 비효율적이다. cloud front는 이 부분을 해결해 줄 것이다. 아래의 그림과 같은 역할을 한다고 한다. cloudfront에 들어가서 우리의 버킷을 선택해주고 생성해보자! 편집에 들어가서 기본값을 s3에 있는 index.html로 지정해주면 새로운 도메인을 들어가면 바로 출력이 되는 것을 확인할 수 있다. github action을 사용하여 우리가 index.html을 수정하면 그 수정한 파일이 자동으로 s3에 저장되고 그 저장된 index.html이 cloudfront에서 다시 캐싱되는 것을 해주어야 한다. 따라서 먼저 IAM의 권한을 추가시..