전체 글 썸네일형 리스트형 Google Cloud Platform 시작하기(2) VM인스턴스를 생성하면 OS만 설치되서 필요한 애플리케이션 설치, 네트워크 관련 설정이 필요합니다. 3. 네트워크 설정하기 고정 IP 연결(접속하기 위한 IP 주소), 방화벽에 포트를 추가(포트를 추가하지 않으면 방화벽 때문에 접속할 수 없습니다 )하는 작업을 해보겠습니다. 생성된 인스턴스 목록의 오른쪽 끝에 점3개 있는 버튼을 클릭 해서 네트워크 세부정보 보기 메뉴로 이동합니다. 클라우드 서비스는 기본적으로 동적인 외부 IP를 가지고 있습니다. 인스턴스가 재실행될 때마다 IP가 변경될 수 도 있어 인스턴스가 유지되는 동안 변하지 않는 고정IP를 사용해야 합니다. 고정IP를 설정하기 위해 왼쪽에 있는 사이드 메뉴중 외부 IP 주소를 선택합니다. 외부 IP 주소를 누르면 사용 중인 IP주소 목록이 나옵니다.. 더보기 Google Cloud Platform 시작하기(1) AWS는 무료로 사용할 수 있는 서버의 용량이 1GB로 제한되는 반면에 GCP는 처음 시작하면 12개월 동안 사용할 수 있는 $300의 크레딧을 지원해 개인 프로젝트를 테스트하는데 유용합니다. 1. 가입하기 GCP 가입을 원하는 아이디로 구글 로그인 이후에 GCP 사이트에 접속합니다. 무료로 시작하기 클릭~ 대한민국을 선택하고 서비스 약관 체크 개인, 사업자 중 선택 후 주소를 입력하고 자동가입 방지를 위해 신용카드 정보를 입력한다고 하네요. 신용카드 정보 입력하고 무료 평가판 시작하기 클릭~ 가입이 완료 되었습니다.~ 2. VM 인스턴스 생성하기 VM이란 Virtual Machine의 약자로 물리적인 OS위에 가상 OS를 올려서 독립적인 동작을 가능하게 하는 것입니다. 인스턴스는 1대의 서버를 의미합니.. 더보기 다양한 웹서버들 Django Django는 파이썬으로 만들어진 무료 오프소스 웹 애플리케이션 프레임워크 입니다. 장점 Python 을 기반 사이트에서 사용하는 기능들을 기본 모듈로 제공 Instagram 개발 높은 코드 완성도 유지 IDE 지원(Pycharm, visual studio) deploy 및 운용에 대한 개발 비용을 아낄 수 있다. 단점 typeless언어의 약점을 그대로 보유 node js 장점 다양한 모듈 지원 C++로 필요한 모듈 작성 가능 싱글스레드, 비동기 IO처리에 기반한 빠른 속도 자바 스크립트를 이용해 프론트엔드 개발자의 진입장벽이 낮음 단점 싱글스레드 이기 때문에 하나의 작업에 시간이 오래 걸리면 시스템 전체 성능이 떨어짐 rails 장점 ruby언어을 이용한 가독성, 표현력 twitter, .. 더보기 java 키워드(접근 제한자) final final은 클래스, 멤버변수, 메소드에 모두 사용할 수 있는 지정어 이다. final class 클래스에 final이 사용될 경우, 해당 클래스를 다른 클래스가 상속 할 수 없다. 이를 사용하는 가장 큰 이유는 보안을 위해서 사용하고 API에 정의 되어 있는 대부분의 클래스들은 final로 선언이 되어 있다. final 변수 변수에 final이 사용이 되면 C 언어에서의 상수(static)와 같은 목적으로 사용할 때, 선언한다. 상수는 변수와 달리 다시 변할 수 없는 값이지만 변수명을 통해 정의 함으로써 의미를 내포 할 수 있다. 예를들어 원주율을 구하는 데 필요한 파이(PI)의 경우 3.14를 갖는 상수 값으로 선언하고 싶을 때, 이와 같이 표현할 수 있겠다. ex) final double.. 더보기 웹서버와 was 의 차이 아파치 + 톰캣 이해~ 보통 클라이언트는 브라우저를 통해 원하는 것을 요청(request)하고 서버는 사용자의 요청에 응답(response)한다. 아파치 : 아파치 소프트웨어 재단 아파치 서버 : 'open source' 라이선스에 따라 배포되어 마음대로 쓸 수 있는 Http 웹 서버 웹 서버 : 클라이언트의 요청을 기다리고 요청에 대한 데이터를 만들어서 응답하는 역할 이때 데이터는 정적인 데이터(html, css, 이미지)로 한정 아파치 톰캣 : 일반적인 was(웹 애프리케이션 서버) WAS(web application server) : 컨테이너, 웹 컨테이너, 서블릿 컨테이너 라고도 부름 웹 컨테이너 : 클라이언트의 요청이 있을 때 내부 프로그램을 통해 결과를 만들어내고 이것을 다시 클라이어트에 응답.. 더보기 이제는 Saas의 시대이다. Saas(Software as a Service) Saas란 클라우드를 통해 제공되는 서비스를 말한다. 별도의 설치없이 인터넷을 이용해서 SW를 제공받는 서비스라고 할 수 있다. 과거 SW를 이용하려면 하드웨어에 SW를 설치하고 이용하는 것이 당연했다. 하지만 인터넷의 발달이 Saas를 가능하게 했다. 인터넷만 있다면 Saas를 이용할 수 있다. 인터넷을 통해 클라우드에 설치되어 있는 SW를 불러와 이용하는 것이다. 기존의 하드웨어를 SW에 설치해서 이용하는 방식에는 단점이 존재한다. 윈도우 버전, OS버전에 맞춰 SW를 설치해야 하는 어려움이 있었다. 또한 SW에 새로운 기능을 추가할 때 새롭게 업데이트 및 패치를 해 주어야 한다. 이에 반해 Sass는 설치를 할 필요 없이 이용할 수 있다. 또한 유지.. 더보기 [백준]BFS 알고리즘 과 토마토 문제 BFS(Breath-First Search, 너비 우선 탐색) 너비 우선 탐색은 그래프의 모든 정점을 방문하는 알고리즘 중 하나입니다. 현재 정점과 인접한 정점들을 하나씩 검사해 아직 방문 하지 않은 정점을 자료구조 큐에 넣습니다. 그리고 검사가 끝나면 큐의 가장 앞에 있는 점을 방문해 위의 과정을 진행하고 Pop합니다. 이 과정을 큐가 비어 있을 때까지 반복 하는 것이 BFS입니다. 저는 BFS 문제로 백준의 토마토 문제를 풀어 보겠습니다. https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄.. 더보기 Spring Security에서 Ajax post 방식 사용할 때 Spring Security 적용 이후에는 post 방식을 이용할 때 csrf프로텍션이 적용되서 그렇다고 합니다. CSRF(Cross Request Forgery: 사이트 간 요청 위조)인데 보안 대책으로 필수적으로 요구 된다고 합니다. ajax post방식 사용시 해결 방법은 https://docs.spring.io/spring-security/site/docs/4.2.2.RELEASE/reference/htmlsingle/#the-csrfmetatags-tag 여기 나와있는데 코드가 깔끔하지 못한 것 같아 다른 방법을 찾아서 정리를 해보았습니다. befornSend에서 토큰 값을 보내는 것이 중요합니다. 위에 처럼 meta 태그 를 안쓰고 직접 값을 써서 사용할 수 도 있습니다. 더보기 이전 1 2 3 4 5 6 ··· 13 다음