서비스를 제공하는 컴퓨터(Service Provider)
다수의 클라이언트에게 서비스를 제공하는 컴퓨터로 고사양의 하드웨어를 갖춘 컴퓨터일수록 좋지만 사양의 관계없이 서비스를 제공하는 소프트웨어가 실행되는 컴퓨터를 서버라 한다.
웹 서버에 각종 정보를 담은 웹 페이지를 저장한 후 서버의 웹 페이지를 요청하는 클라이언트에게 제공
서비스를 사용하는 컴퓨터(Service User)
서버와 이어진 모든 기기와 단말기에서 이용하는 웹에 접근하는 소프트웨어이며 주로 서버에 요청을 보내고 응답을 받는 역할
웹 서비스 사용자는 웹 브라우저라는 전용 클라이언트 어플리케이션으로 웹 서버가 제공하는 서비스를 이용, 웹 브라우저가 웹 서버에게 필요한 페이지를 요청하면 웹 서버가 이에 응답해 웹페이지를 보내주고 웹 브라우저가 웹 페이지를 받아 사용자에게 보여주는 역할
프론트엔드 | 백엔드 |
---|---|
눈에 보이는 영역을 개발하는 일 | 눈에 보이지 않는 뒷단을 개발하는 일 |
사용하기 쉽고 사용자의 경험에 맞춰 서비스를 개발 | 에러가 나지 않고 원활하게 실행되도록 개발 |
최적의 인터페이스를 갖추는 것 | 응답 시간을 최적화하는 것 |
프론트엔드와 백엔드를 모두 다루는 것
전체 소프트웨어 스택 또는 애플리케이션을 개발하는데 필요한 모든 기술 및 구성 요소를 이해하고 다룰 수 있는 능력, 혼자서 온전히 하나의 웹(앱) 서비스를 개발할 수 있는 사람을 풀스택 개발자라 한다.
공통점
차이점
라이브러리 | 프레임워크 |
---|---|
폴더, 파일명에 대한 규칙이 없다. | 폴더, 파일명에 대한 규칙이 있다. |
자신이 필요한 곳에 사용할 수 있다. | 프레임워크의 규칙에 따라 사용해야 한다. (특정한 도구에 대한 사용법에 따라 사용한다.) |
프로그램이나 소프트웨어에 추가 기능을 제공하기 위해 확장 모듈로서 동작하는 소프트웨어 구성 요소
내가 사용하고 있는 프로그램에 어떠한 기능을 더하는 기능을 의미
공통 서비스 및 기능을 애플리케이션에 제공하여 개발자와 운영자가 애플리케이션을 더욱 효율적으로 구축하고 배포하도록 돕는 소프트웨어 및 클라우드 서비스, 애플리케이션, 데이터, 사용자를 연결하는 요소처럼 작동
애플리케이션 런타임, 엔터프라이즈 애플리케이션 통합 및 다양한 유형의 클라우드 서비스가 포함
데이터 관리, 애플리케이션 서비스, 메시징, 인증 및 API 관리는 주로 미들웨어를 통해 처리
태그 등을 이용하여 문서나 데이터의 구조를 명기하는 언어의 한 가지
일반적으로 데이터를 기술하는 정도로만 사용되기에 프로그래밍 언어와는 구별된다.(예외도 있음)
HTML은 프로그래밍 언어가 아닌 마크업 언어
Search Engine Optimization
구글과 같은 검색 엔진에 친화적인 사이트를 구축하여 광고가 아닌 자연 검색 결과를 통해 트래픽의 양과 질을 극대화 하는 작업
사용자들에게 유용한 양질의 콘텐츠를 많이 제공함으로써 여러 관련 키워드로 검색 결과 페이지에 노출이 되어 웹 사이트의 온라인 가시성을 개선하는 마케팅 작업
SEO는 검색 광고 최적화(검색 광고 전략 효율성을 관리하는 작업)가 아닌 검색 엔진 최적화
검색 엔진에 최적화된 글을 작성하면 검색 광고 전략 없이도 상위에 노출 가능
소프트웨어가 예상하지 못한 잘못된 결과를 내거나, 오류가 발생하거나, 착오나 오작동이 발생하는 등의 문제
버그는 프로그램의 소스 코드나 설계 과정에서의 결점, 결함 및 오류 때문에 발생
프로그램이 처리되는 동안 특정한 문제가 일어났을 때 처리를 중단하고 다른 처리를 하는 것
웹 사이트에 방문한 사람들이 데이터를 주고받는 양
방문자 수와 방문 페이지 수에 따라 결정
웹 사이트에 트래픽이 많다는 것은 사용자 접속이 많아서 전송하는 데이터의 양이 많다는 것을 의미하며, 트래픽이 너무 많으면 서버에 과부하가 걸려서 기능에 문제가 생길 수 있다.
SUM(col) OVER(PARTITION BY col ORDER BY col option)
option | RANGE | ROWS |
---|---|---|
UNBOUNDED PRECEDING | ||
BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW | BETWEEN a PRECEDING AND b FOLLOWING | |
X (DEFAULT) | ||
비고 | ↑ 셋 다 같은 결과 |
UNBOUNDED PRECEDING 이 BETWEEN 옵션의 왼쪽: 파티션 내의 첫번째 행까지
UNBOUNDED PRECEDING 이 BETWEEN 옵션의 오른쪽: 파티션 내의 마지막 행까지
CURRENT ROW: 현재 행
RANK 함수는 중복 순위가 있을 경우 이를 고려하여 다음 순위를 부여하지만 DENSE_RANK는 이에 상관없이 순위를 반환
RANK | DENSE_RANK |
---|---|
1 | 1 |
2 | 2 |
2 | 2 |
4 | 3 |