티스토리 뷰

IT이야기

웹서비스 개발하기

제이제이v 2023. 11. 23. 21:57

웹서비스를 개발하기 위한 사전 지식이 필요하다. 기본적인 REST API를 개발하기 위한 방법을 설명하고자 한다.

1. HTML:CSS/React.js

프론트엔드 애플리케이션 개발에 사용한다. 우리의 프론트엔드 애플리케이션은 프론트엔드 클라이언트를 반환하는 서버가 있다. 이 서버의 역할은 단 하나다. 바로 React.js 애플리케이션을 반환하는 것이다. 이런 방식으로 프론트엔드와 백엔드를 분리할 수 있다. 프론트엔드는 말 그대로 사용자 바로 앞에서 사용자와 상호작용하며 애플리케이션로직을 수행하고 백엔드 서버로 요청을 요청하는 역할을 한다. 웹 서비스에서 클라이언트 또는 프론트엔드란 웹 브라우저를 뜻한다. 사용자는 자신의 컴퓨터에서 브라우저를 실행한다. 브라우저는 인터넷을 이용해 서버에 있는 자원을 사용자의 컴퓨터로 다운로드한 후 브라우저에서 실행시킨다.

2. 스프링부트

백엔드 애플리케이션 개발에 사용한다. 우리는 스프링 부트로 REST API를 구현한다. 이 API는 프론트엔드 애플리케이션이 사용한다. 프론트엔드 애플리케이션은 꼭 애플리케이션일 필요는 없다. 예를 들어 웹애플리케이션 배포 이후 모바일 앱을 만든다고 가정하자. 모바일 앱 역시 별도의 백엔드 개발 없이 백엔드 애플리케이션의 REST API를 사용할 수 있다. REST API를 구현하고 프론트엔드를 분리하는 것은 이후 마이크로서비스 아키텍처로 서비스를 확장하는 데 용이하다.

백엔드 개발을 위해 스프링 부트, 그래들, 롬복, 포스트맨, REST, 레이어드 아키텍처 등의 유무형의 도구를 사용한다. 이런 도구의 사용법을 아는 것도 중요하지만 이 도구들을 사용하는 이유를 아는 것도 중요하다. 앞서 언급했듯이 대부분의 소프트웨어 엔지니어링 도구들은 어떤 문제의 해결을 위해 창안됐다.

3. AWS

AWS는 Amazon Web Services의 약자로, 아마존이 제공하는 클라우드 컴퓨팅 플랫폼입니다. 이 서비스는 IT 인프라를 제공하고, 웹상에서 컴퓨팅 리소스와 서비스를 제공하여 기업이나 개발자가 손쉽게 웹 서비스를 구축하고 관리할 수 있도록 도와줍니다. 프론트엔드와 백엔드 애플리케이션이 실행될 프로덕션 환경을 구축하는 데 사용한다. 다행히 우리는 AWS 내에서 필요한 모든것을 구축할 수 있다.

AWS는 다양한 서비스를 포함하고 있으며, 몇 가지 주요 카테고리로는 다음과 같은 것들이 있습니다:

1) 컴퓨팅 서비스: 가상 서버를 제공하는 EC2 (Elastic Compute Cloud)를 비롯하여 컨테이너 관리를 위한 ECS (Elastic Container Service), 서버리스 컴퓨팅을 위한 AWS Lambda 등 다양한 옵션이 있습니다.

2) 스토리지 및 데이터베이스: 객체 스토리지인 S3 (Simple Storage Service), 관계형 데이터베이스인 RDS (Relational Database Service), NoSQL 데이터베이스인 DynamoDB 등 다양한 스토리지 및 데이터베이스 서비스가 있습니다.

3) 네트워킹: 가상 네트워크 설정을 도와주는 VPC (Virtual Private Cloud), CDN (Content Delivery Network) 서비스인 CloudFront 등이 있습니다.

4) 인공지능 및 기계 학습: 기계 학습을 위한 서비스인 SageMaker, 음성 및 언어 분석을 위한 Polly 및 Comprehend 등이 있습니다.

5) 보안 및 자격 증명: 데이터 보호를 위한 서비스인 IAM (Identity and Access Management), DDoS 방어를 위한 Shield, 보안 감사를 위한 Inspector 등이 있습니다.

6) AWS는 전 세계 여러 지역에 데이터 센터를 운영하여 지역별로 최적화된 서비스를 제공하며, 유연한 유료 체계를 가지고 있어 사용자는 필요한 만큼의 리소스를 사용할 수 있습니다. 이러한 특징으로 AWS는 기업부터 개인 개발자에 이르기까지 다양한 규모와 유형의 고객들에게 널리 사용되고 있습니다.

이상 웹개발 서비스에 대한 내용을 알아보았습니다.