분류 전체보기 30

네트워크 기본 개념(Backend LoadMap)

네트워크(Network) 📌 네트워크란? 분산되어 있는 컴퓨터들을 자원이나 정보를 공유하기 위하여 통신망으로 연결한 것을 의미 노드(node)와 링크(like)가 서로 연결되어 있거나 연결되지 않은 집합체를 의미 전송 매체로 서로 연결된 시스템을 의미 📌 네트워크 활용의 장단점 1) 장점 모든 종류의 물리적 및 논리적 자원을 공유할 수 있으므로 자원 활용이 극대화 병렬 처리가 가능해지고 성능이 향상 1) 단점 데이터의 중복 저장이 가능하므로 데이터 복구가 용이하고 신뢰성이 향상되지만 일관성 문제가 발생할 가능성 컴퓨터가 누구나 손쉽게 접근할 수 있어서 보안 문제 발생 가능성이 증가 📌 네트워크 분류 LAN(Local Area Network) - 근거리 통신망 - 같은 건물이나 캠퍼스 같은 좁은 공간에서 ..

개발자 Study 2023.09.22

도메인 이름이란?

📌도메인 이름이란? - 사람들이 원하는 사이트에 방문하기 위해 브라우저에서 입력하는 주소를 말합니다. 마치 지문처럼 특정 웹사이트는 각각 고유한 도메인 이름을 가지고 있으며 다른 동일한 이름을 다른 웹페이지에 함께 사용할 수 없습니다. 도메인은 온라인상 위치를 나타내는 인터넷 프로토콜(IP)에 접근하기 위한 인간 친화적인 방식으로 만들어졌습니다. IP 주소는 0부터 255까지의 10진법 숫자를 마침표로 구분한 숫자 문자열로 모든 컴퓨터에 할당되어 있습니다. 이렇게 무작위로 보이는 일련의 숫자 문자열은 컴퓨터가 기억하고 이해하기에는 적합하지만 사람들은 기억하기 쉬운 단어를 사용하는 것을 선호합니다. (ex. google.com의 IP 주소: 173.194.121.32) 📌도메인 이름과 URL의 차이점은? ..

개발자 Study 2023.08.17

JWT(JSON WEB TOKEN) 인증 과정

📌 JWT를 사용한 인증 과정 사용자 로그인 사용자는 로그인 페이지에서 아이디와 비밀번호를 입력합니다. 서버에서 JWT 발급 서버는 입력받은 아이디와 비밀번호를 검증합니다. 검증이 성공하면, 서버는 JWT를 발급하고 클라이언트에 전달합니다. 클라이언트에서 JWT 저장 클라이언트는 받은 JWT를 저장합니다. 이때, 일반적으로 쿠키나 로컬 스토리지에 저장됩니다. 클라이언트에서 JWT 전송 클라이언트는 전송할 요청에 JWT를 추가합니다. 이때, 일반적으로 HTTP 헤더의 Authorization 필드에 "Bearer {JWT}" 형식으로 추가됩니다. 서버에서 JWT 검증 서버는 요청에 포함된 JWT를 검증합니다. 검증이 실패하면, 요청 처리를 거부하고 에러를 반환합니다. 검증이 성공하면, 서버는 해당 요청을 ..

BackEnd/Spring 2023.03.08

캐시(Cache)와 쿠키(Cookie)

📌 저장 위치 캐시(Cache) - 브라우저의 메모리나 하드 디스크에 저장됩니다. 쿠키(Cookie) - 사용자의 컴퓨터에 저장됩니다. 📌 사용 목적 캐시(Cache) - 이미지, 스크립트, 스타일 시트 등 웹 페이지의 자원을 저장하고, 다시 요청 시 서버에서 받아오는 대신 캐시에서 바로 제공합니다. 이를 통해 웹 페이지의 로딩 속도를 빠르게 합니다. 쿠키(Cookie) - 웹 사이트에서 사용자의 로그인 정보, 선호 설정 등을 저장하고, 다음 방문 시에도 이를 유지합니다. 📌 유지 기간 캐시(Cache) - 브라우저를 종료하면 캐시도 함께 삭제됩니다. 쿠키(Cookie) - 브라우저를 종료해도 사용자의 컴퓨터에 저장되어 있으며, 만료 기간을 설정할 수 있습니다. 📌 보안 캐시(Cache) - 브라우저에 ..

[SQL]12세 이하인 여자 환자 목록 출력하기(프로그래머스/MySQL/Level 1)

문제 설명 다음은 종합병원에 등록된 환자정보를 담은 PATIENT 테이블입니다. PATIENT 테이블은 다음과 같으며 PT_NO, PT_NAME, GEND_CD, AGE, TLNO는 각각 환자번호, 환자이름, 성별코드, 나이, 전화번호를 의미합니다. 📌 문제 PATIENT 테이블에서 12세 이하인 여자환자의 환자이름, 환자번호, 성별코드, 나이, 전화번호를 조회하는 SQL문을 작성해주세요. 이때 전화번호가 없는 경우, 'NONE'으로 출력시켜 주시고 결과는 나이를 기준으로 내림차순 정렬하고, 나이 같다면 환자이름을 기준으로 오름차순 정렬해주세요. 📌 예시 PATIENT 테이블이 다음과 같을 때 SQL을 실행하면 다음과 같이 출력되어야 합니다. 문제 풀이 SELECT PT_NAME, PT_NO, GEND_..

Algorism/SQL 2023.02.09

[SQL]강원도에 위치한 생산공장 목록 출력하기(프로그래머스/MySQL/Level 1)

문제 설명 다음은 식품공장의 정보를 담은 FOOD_FACTORY 테이블입니다. FOOD_FACTORY 테이블은 다음과 같으며 FACTORY_ID, FACTORY_NAME, ADDRESS, TLNO는 각각 공장 ID, 공장 이름, 주소, 전화번호를 의미합니다. 📌 문제 FOOD_FACTORY 테이블에서 강원도에 위치한 식품공장의 공장 ID, 공장 이름, 주소를 조회하는 SQL문을 작성해주세요. 이때 결과는 공장 ID를 기준으로 오름차순 정렬해주세요. 📌 예시 FOOD_FACTORY 테이블이 다음과 같을 때, SQL을 실행하면 다음과 같이 출력되어야 합니다. 문제 풀이 SELECT FACTORY_ID, FACTORY_NAME, ADDRESS FROM FOOD_FACTORY WHERE ADDRESS LIKE ..

Algorism/SQL 2023.02.09

[SQL]과일로 만든 아이스크림 고르기(프로그래머스/MySQL/Level 1)

문제 설명 다음은 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF 테이블과 아이스크림 성분에 대한 정보를 담은 ICECREAM_INFO 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같으며, SHIPMENT_ID, FLAVOR, TOTAL_ORDER 는 각각 아이스크림 공장에서 아이스크림 가게까지의 출하 번호, 아이스크림 맛, 상반기 아이스크림 총주문량을 나타냅니다. FIRST_HALF 테이블의 기본 키는 FLAVOR입니다. ICECREAM_INFO 테이블 구조는 다음과 같으며, FLAVOR, INGREDITENT_TYPE 은 각각 아이스크림 맛, 아이스크림의 성분 타입을 나타냅니다. INGREDIENT_TYPE에는 아이스크림의 주 성분이 설탕이면 sugar_based라고 입력되고..

Algorism/SQL 2023.02.09

[SQL]3월에 태어난 여성 회원 목록 출력하기(프로그래머스/MySQL/Level 2)

문제 설명 다음은 식당 리뷰 사이트의 회원 정보를 담은 MEMBER_PROFILE 테이블 입니다. MEMBER_PROFILE 테이블은 다음과 같으며 MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH는 회원 ID, 회원 이름, 회원 연락처, 성별, 생년월일을 의미합니다. 문제 MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. 이때 전화번호가 NULL인 경우는 출력대상에서 제외시켜 주시고, 결과는 회원ID를 기준으로 오름차순 정렬해주세요. 예시 MEMBER_PROFILE 테이블이 다음과 같을 때 SQL을 실행하면 다음과 같이 출력되어야 합니다. 주의사항 DATE_OF_BIRTH의 데이트..

Algorism/SQL 2023.02.09

[SQL]인기있는 아이스크림(프로그래머스/MySQL/Level 1)

문제 설명 FIRST_HALF 테이블은 아이스크림 가게의 상반기 주문 정보를 담은 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같으며, SHIPMENT_ID, FLAVOR, TOTAL_ORDER는 각각 아이스크림 공장에서 아이스크림 가게까지의 출하 번호, 아이스크림 맛, 상반기 아이스크림 총주문량을 나타냅니다. 문제 상반기에 판매된 아이스크림의 맛을 총주문량을 기준으로 내림차순 정렬하고 총주문량이 같다면 출하 번호를 기준으로 오름차순 정렬하여 조회하는 SQL 문을 작성해주세요. 예시 예를 들어 FIRST_HALF 테이블이 다음과 같을 때 상반기 아이스크림 맛을 총주문량을 기준으로 내림차순 정렬하고 총주문량이 같은 경우 출하 번호를 기준으로 오름차순 정렬하면 chocolate, melon, wh..

Algorism/SQL 2023.02.09

디자인 패턴(Design Pattern)

디자인 패턴(Design Pattern)이란? 디자인 패턴이란 소프트웨어 디자인 과정에서 빈번하게 발생하는 문제들을 어떻게 풀어나갈 것인가에 대한 일종 솔루션 입니다. 표준화된 라이브러리들이나 함수들을 코드에 복사해 사용하는 것처럼 패턴들을 붙여 넣기 식으로 사용할 수 없습니다. 패턴은 재사용할 수 있는 코드 조각이 아니라 특정 문제를 해결하는 방식을 알려주는 일반적인 개념입니다. 쉽게 말해 프로그래밍할 때 문제를 해결하고자 코드의 구조들을 일정한 형태로 만들어 재이용하기 편리하게 만든 일정한 패턴입니다. 디자인 패턴(Design Pattern)의 3가지 카테고리 GoF의 디자인패턴에서는 객체지향적 디자인 패턴의 카테고리를 생성 패턴(Creational Pattern), 구조 패턴(Structural P..

Language/Java 2023.02.08