프록시(Proxy)란?프록시 서버란 클라이언트 - 서버 사이에 위치하여 통신을 중계하는 역할을 하는 응용 프로그램(서버)을 말한다.프록시(Proxy)는 '대리', '중계' 라는 의미를 갖고 있으며, 여러 가지 이유로 직접 통신할 수 없는 경우에 중간에서 통신을 중계하는 역할을 수행한다. (보안, 성능, 안정성 향상 등의 목적을 갖고 있다.)일반적으로 웹은 클라이언트에서 서버로 요청을 보내고, 서버에서 클라이언트로 응답하는 방식의 통신으로 데이터를 전달한다. 여기에 프록시 서버를 추가해서 요청을 중계하도록 해서, 보안상의 안정성을 높이거나, 성능을 향상시킬 수 있다.정리하자면 아래와 같은 과정을 거쳐서 통신이 이루어진다.클라이언트 -> 프록시 서버 요청프록시 서버 -> 서버 요청서버 -> 프록시 서버 응답..
vue cli 공식 사이트https://cli.vuejs.org/ Vue CLI cli.vuejs.org node, npm 버전 확인node, npm 버전을 확인하고, 없으면 설치해야한다.node -vnpm -v vue cli 설치npm install -g @vue/cli vue 프로젝트 생성vue create vue 프로젝트 실행npm run serve
Vue 인스턴스: new Vue()new Vue()로 생성한 Vue 인스턴스는 화면에 뿌려지는 최상위(Root) 컴포넌트를 말한다. 해당 Vue Instance에서 여러 컴포넌트를 호출에서 사용하는 것이 Vue의 기본 문법이다. 아래의 5가지 요소들을 가장 많이 사용한다.el: '#app'Vue 인스턴스가 관리할 DOM 요소를 지정한다. 위쪽에 id=app인 에 Vue 인스턴스를 연결한다.해당 Vue 인스턴스는 위에 id=app인 태그만을 관리한다.dataVue 인스턴스에서 관리할 데이터를 정의한다. {{ message }} message란 이름의 데이터를 Vue 인스턴스 내에서 this.message로 사용 가능하고, DOM 요소에서는 {{message}}로 가..
도커(Docker)란?도커(docker)는 컨테이너 기반 가상화 플랫폼이다. 여러 응용 프로그램들을 컨테이너로 패키징 해서 실행할 수 있다.이 글에선 도커를 간단하게 시작하고, 주요 명령어들을 확인하기 위한 예제를 위해 DB를 하나 띄워볼 것이다. 도커 이미지(image)도커 이미지는 특정 소프트웨어(PostgreSQL 등)를 실행하기 위한 코드, 라이브러리, 설정파일, 종속성, 환경변수 등 모든 것을 포함하는 읽기 전용 템플릿이다. 이 템플릿을 기반으로 컨테이너를 생성하면 실제로 해당 소프트웨어를 실행할 수 있다.기본적으로 Docker Hub에서 이미지를 갖고있고, docker 명령어를 통해 해당 이미지를 개인이 다운받아서 컨테이너 생성에 사용할 수 있다.도커 컨테이너(Container)도커 컨테이너는..
해당 사이트에 정말 쉽고 편하게 설명되어 있기 때문에, 기록용으로 쓰는 글입니다.프런트엔드 쪽은 처음 공부해 보는데 정말 편리한 사이트들이 많네요...(이게 말로만 듣던 javascript 생태계..?) jsonplaceholder.typicode.comhttps://jsonplaceholder.typicode.com/ JSONPlaceholder - Free Fake REST API{JSON} Placeholder Free fake and reliable API for testing and prototyping. Powered by JSON Server + LowDB. Serving ~3 billion requests each month.jsonplaceholder.typicode.com 위의 사이트..
들어가기 전에, 소켓에 대한 글을 보고 오시는 걸 추천합니다.[컴퓨터 공학/Web & Network] - [Network] 포트(PORT), 소켓(Socket)이란? (웹소켓 아님 Web Socket != Socket) [Network] 포트(PORT), 소켓(Socket)이란? (웹소켓 아님 Web Socket != Socket)포트(Port)Port는 운영체제 통신에서의 네트워크 연결이 시작되고 끝나는 논리적인 접속 지점을 말한다. 보통 http://192.168.1.1:8080과 같이 프로토콜/호스트/포트로 구분되어 도메인이 정의된다. 여innovation123.tistory.com Java 소켓 Java에서 Socket을 직접 열고, 소켓 통신을 하는 방법을 알아보자. ServerSocket과 C..
문제 상황총 4개의 테이블과 관련 있는 데이터를 뽑아야 하는 상황이다.JPA만을 이용해서 14건의 쿼리가 나가던 것을 MyBatis로 직접 JOIN 쿼리를 작성해서 2건으로 줄였다. 문제 원인 Blog main 화면에 게시글(post) 정보를 나타내야 하는데, 여러 가지 이유로 post_tag와 tag 엔티티를 나눠놨고, member 테이블의 데이터를 하나의 DTO에 담아야 하는 상황이다. DB 설계에 문제가 있을 수도 있고, 비즈니스 요구사항과 정규화를 위해 어쩔 수 없는 것일 수도 있다.이 프로젝트 설계할 당시에는 관련 지식이 거의 없었고, 감으로 설계했다...MongoDB 도입처음엔 쿼리가 너무 많이 나가서, 해당 DTO 조회만을 위한 데이터를 테이블로 빼서 MongoDB Document로 저장..
포트(Port)Port는 운영체제 통신에서의 네트워크 연결이 시작되고 끝나는 논리적인 접속 지점을 말한다. 보통 http://192.168.1.1:8080과 같이 프로토콜/호스트/포트로 구분되어 도메인이 정의된다. 여기서 192.168.1.1와 같은 IP 주소가 컴퓨터 또는 네트워크 장치 등을 식별하는 것이라면, 포트 번호는 해당 컴퓨터 내의 특정 응용 프로그램을 식별한다.데이터를 송수신할 때, DataLink 계층에서 호스트의 NIC(Network Interface Card, LAN 카드)로 MAC 주소를 판별하고,Network 계층에서 IP 주소로 목적지를 판별한다.MAC 주소와 IP 주소로 목적지 호스트까지 도달한 뒤에는 어떤 응용프로그램 또는 프로세스로 접근할지를 알아야 하는데, 이때 쓰이는 것이..