목록백앤드 개발일지/웹, 백앤드 (17)
늘
MVC 패턴 Model + View + Controller 가장 흔하고 알려져 있는 패턴이다. Model : 데이터와 데이터를 처리하는 부분 View : UI Controller : 사용자의 입력(Action)을 받고 처리하는 부분 MVC 패턴의 동작 순서 모든 Input은 Controller로 전달됩니다. Controller는 Input을 확인하고 Model을 업데이트합니다. 업데이트 결과에 따라 View를 선택합니다.(하나의 Controller는 View를 선택할 수 있기 때문에 1:n 관계로, 여러 개의 View를 관리할 수 있습니다.) Controller는 Model을 나타내 줄 View를 선택만 할 뿐, 직접 업데이트하지는 않습니다.(View는 Controller를 알지 못합니다.) View는 ..
🎐성능 테스트 목표🎐 성능 테스트 전략 수립 단계 중 가장 핵심은 바로 서비스할 소프트웨어에 대한 명확한 목표를 수립하는 것이다. 이 목표를 달성하기 위해 성능 테스트와 부하 테스트를 수행하고 튜닝작업을 진행한다. 만일 튜닝을 해도 목표를 달성하지 못한다면 하드웨어 증설이나 아키텍처 변경을 고려해 볼 필요가 있다. 서비스가 얼마나 빠른지(Time) 일정 시간 동안 얼마나 많이 처리할 수 있는지(TPS) 얼마나 많은 사람들이 동시에 사용할 수 있는지(Users)에 대해 이야기해야 한다. 성능 테스터의 관점에선 사용자가 Concurrent User 인지 Active User 인지가 중요합니다. Concurrent User : 웹 페이지를 띄어놓은 사용자처럼, 언제든지 부하를 줄 수 있는 사용자를 의미합니다...
프로젝트를 진행하면서 휴대폰 인증 기능이 추가되어 과정을 기록할 겸 적어보겠다. 이용한 api는 네이버 클라우드에서 제공해주는 한 달에 50건 무료인 api를 사용했다. https://www.ncloud.com NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 네이버 클라우드에 우선 가입을 해주고 콘솔에서 빨간 박스로 들어가 줍니다. 들어간 후 api 가이드에 따라 진행하면 수월하다. 친절하게 설명이 되어 있는데 설명에 따라 우선 프로젝트를 생성해 줍니다. 그 후 SMS를 눌러줍니다..
연관관계는 객체 참조가 있는 상태이다. A -> B로 영구적으로 갈 수 있는 경로가 있다고 보면 된다. class A{ private B b; } 의존관계는 파라미터의 타입이 나오거나, 리턴 타입에 나오거나, 메서드 안에서 그 인스턴스를 생성하면 인스턴스이다. 일시적으로 관계 맺고 헤어지는 관계 class A{ public B method(B b){ return new B(); } } 1. 양방향 의존성을 피하라 - 성능 이슈 - sync를 맞출 때, 많은 버그를 만날 수 있다. 2. 다중성이 적은 방향을 선택하라 - 즉, One-To-Many보단 Many-To-One방향을 잡는 게 더 좋다 - 성능 이슈, 컬랙션의 관계들을 유지하기 위해 노력하는 게 너무 힘들다. 3. 의존성이 필요 없다면 제거하라 4..
웹스크래핑(크롤링) 기초 bs4 크롤링 기본 세팅 import requests from bs4 import BeautifulSoup # 타겟 URL을 읽어서 HTML를 받아오고, headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'} data = requests.get('https://movie.naver.com/movie/sdb/rank/rmovie.nhn?sel=pnt&date=20200303',headers=headers) # HTML을 BeautifulSoup이라는 라이브러리를 활용해 검색하기 용이한..
멋쟁이 사자처럼에서도 웹에 대해 공부했지만 이번에 한이음을 하면서 스파르타 코딩에서 한번 더 웹에 대해서 배울수 있었다. HTML은 뼈대, CSS는 꾸미기 그렇다면 멋사에서는 배우지 못했던 js에 대해서 정리하고 시작하려고 한다. 자바스크립트(js)는 프로그래밍 언어 중 하나로, 브라우저가 알아들을 수 있는 언어이다. Q. 왜 브라우저는 Javascript만 알아들어요? HTML안에다 파이썬, Java 같은 언어를 써서 주면 안되나요? A. 불가능한 이야기는 아닙니다. 다만, 이 "역사적인 이유 & 이미 만들어진 표준"이기 때문에, 모든 브라우저는 기본적으로 Javascript를 알아듣게 설계되어있고, 모든 웹서버는 HTML+CSS+Javascript를 주게 되어있죠. jQuery 란? HTML의 요소들..
https를 써도 GET으로 보내면 브라우저 히스토리엔 주소가 남는다. 사용자 컴퓨터에 브라우저 기록을 외부로 전송하는 악성 코드가 있으면 보안에 이슈가 생긴다. 네트워크에서 안전이란 리소스 변경이 일어나지 않으면 안전 ex) get 안전 GET 방식으로도 Requestbody 붙일 수 있다. 그럼에도 불구하고 보안상 POST가 더 좋다. GET은 url에 정보가 오픈되니깐. [REST 구성 스타일] client-server stateless cache uniform interface