Back-end Developer
-
EC2 :: Elastic Compute CloudBack-end Developer/Cloud 2021. 5. 3. 18:13
어떤 서버를 개발 했을 때, 지속적인 요청/응답을 유지시키기 위해선, 개발한 App을 실행한 채 두어야합니다. 근데 본인 컴퓨터를 계속 켜두고 유지하는 것은 힘들겠죠..ㅠ 백그라운드 실행을 하더라도 실행중인 App으로 인한 성능 저하, 전깃세 문제 등등.. 이를 위해서 계속 켜둘 수 있는 가상 서버 공간을 제공하는 인프라가 EC2 입니다. Elastic Compute Cloud AWS의 중앙부를 이루며, 사용자가 가상 컴퓨터를 임대 받아 그 위에 자신만의 컴퓨터 애플리케이션들을 실행 가능 사용자가 AMI(Amazon Machine Image)로 부팅하여 아마존이 "인스턴스"라 부르는 가상 머신을, 원하는 소프트웨어를 포함하여 구성할 수 있게 하는 웹 서비스를 제공 사용 시간 비례 지불 설명에 써 두었듯 ..
-
VPC :: Virtual Private CloudBack-end Developer/Cloud 2021. 4. 9. 17:29
VPC란 AWS 계정 내에 구성되는 사설 IP 기반 가상 네트워크 서비스입니다. VPC에 우리가 사용할 인스턴스 등 다양한 IT 서비스 및 인프라를 구성할 수 있습니다. 단, Cloud Front, S3 등은 VPC 외부에 배치됩니다. VPC VPC는 AWS 클라우드의 논리적으로 분리된 섹션을 *프로비저닝 하여 사용자에게 가상 프라이빗 클라우드를 제공하는 상용 클라우드 컴퓨팅 서비스 VPC의 특징 Subnet을 통해 서비스 계층에 따라 분리하고 외부 통신 및 내부 통신이 가능 Security Group을 이용해 출입하는 트래픽을 선택적으로 제어 외부(인터넷 / on-premise) 연동 및 방화벽과 같은 접근 제어 설정도 가능 하나의 Region 내에서 여러 AZ에 걸쳐 사용 가능 논리적 개념이기 때문에..
-
Spring Web MVCBack-end Developer/Server, Spring 2021. 4. 7. 18:46
MVC는 다들 아실 텐데... Spring MVC는 뭘까요? MVC 패턴을 모르신다면, 검색해서 간략히 알아보시길 바랍니다 단순히 생각해보면 Spring 에서 MVC 패턴 구성을 위해 지원하는 기능들이라 볼 수 있겠습니다. Spring MVC는 Dispatcher Servlet이 중심이 되어 구성됩니다. 두 용어의 정의를 알아보고 실제 구성은 어떻게 되고 어떻게 동작하는지 알아보도록 하죠. Spring MVC 'Model-View-Controller'의 약자로 기본 시스템 모듈을 MVC로 나누어 구현 및 처리 Dispatcher Servlet을 중심으로 구성되어 있으며 사용자로부터 들어오는 요청을 핸들러에 매핑하고, 뷰로 반환하는 등의 작업을 지원 Dispatcher Servlet Servlet Cont..
-
Cloud ComputingBack-end Developer/Cloud 2021. 4. 7. 14:13
Cloud Computing 그중에서도 제가 많이 써본 AWS에 관련한 내용을 정리해보려 합니다. 종류는.. AWS, GCP, NCP 등 많은데, 그나마 잘 아는 것으로 선택했습니다. ㅎㅎ 이 글에선 여기저기서 '클라우드 클라우드..' 하는데 클라우드가 도대체 무엇인지부터 알아보겠습니다. Cloud Computing 클라우드 컴퓨팅은 사용자의 직접적인 활발한 관리 없이 특히, 데이터 스토리지와 컴퓨팅 파워와 같은 컴퓨터 시스템 리소스를 필요 시 바로 제공(on-demand availability)하는 것을 말한다. 이해를 위해 일상생활에서 비교를 통해 설명을 드리겠습니다. 코로나 때문에 여행을 못가니 친구들과 계곡으로 여행을 가는 상상을 해보겠습니다. 계곡에 가기 위해 필요한 것들을 구매할 수 있겠지만,..
-
MSABack-end Developer/Server, Spring 2021. 3. 24. 14:56
MSA...MS.... Micro soft..? 이번 포스팅은 MSA 관련 개념과 왜 필요한지 알아보려 합니다. MSA (Microservice Architecture) 단일 응용 프로그램을 나누어 작은 서비스의 조합으로 구축하는 방법 비즈니스 도메인을 중심으로 모델링된 소규모 자율 서비스 모음으로서 애플리케이션을 구성하는 아키텍처 스타일 어떤 의미인지 완벽하게 와닿진 않습니다만, 'Micro'한 'Service'를 의도한다는 것 쯤은 알 수 있습니다. 왜 MicroService가 등장하게 되었는지, 기존엔 어떤 방식이었는지 하나씩 알아 보겠습니다. 기존 서비스는 MonolithicService 입니다. Monolithic의 사전적 정의는 아래와 같습니다. 1. 하나의 암석으로 된 2. 단일체의, 한 덩..
-
RestTemplate & URLConnectionBack-end Developer/Server, Spring 2020. 10. 30. 18:57
이번 공모전을 진행하며 사용한 URLConnection과 RestTemplate에 대해 정리합니다. 위의 두 가지 클래스를 살펴보기 전에 우선 HTTP 특징에 대해 알고 가는 것이 좋습니다. HTTP HTTP(HyperText Transfer Protocol)는 W3 상에서 정보를 주고받을 수 있는 프로토콜이다. 주로 HTML 문서를 주고받는 데에 쓰인다. 주로 TCP를 사용하고 HTTP/3 부터는 UDP를 사용하며, 80번 포트를 사용한다. 1996년 버전 1.0, 그리고 1999년 1.1이 각각 발표되었다. HTTP는 클라이언트와 서버 사이에 이루어지는 요청/응답(request/response) 프로토콜이다. 예를 들면, 클라이언트인 웹 브라우저가 HTTP를 통하여 서버로부터 웹페이지(HTML)나 그..
-
RPC (Remote Procedure Call)Back-end Developer/Server, Spring 2020. 10. 29. 18:38
오늘은 제가 SW maestro 10기에서 적용한 thrift 즉, RPC에 대해 정리해보려 합니다. -> 아직은 부족한 게 많아 지속적으로 수정될 예정입니다. 막상 사용하는 것 자체는 찾아보면 쉽게 할 수 있습니다. (generate code를 통해 생성하기 때문에 매우 편리합니다.) 하지만, 제대로 된 개념을 아는 것은 좀 다른 문제겠지요. RPC 원격 프로시저 호출(remote procedure call, 리모트 프로시저 콜, RPC)은 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저를 실행할 수 있게 하는 프로세스 간 통신 기술이다. 다시 말해, 원격 프로시저 호출을 이용하면 프로그래머는 함수가 실행 프로그램에 로컬 위치에 있든 원격 위치에 있든 동일한 코드를 이용할 수 있..
-
REST API (2)Back-end Developer/Server, Spring 2020. 7. 19. 17:22
REST API(1)에 이어서 Uniform Interface에 대한 내용을 살펴보겠습니다. 2020/07/17 - [Study/Java(OOP) & others] - REST API (1) REST API (1) API 개발을 해보신 분들이나, 졸업 작품을 해보신 분들은 한 번쯤 들어봤을 내용이라 생각합니다. REST API, RESTful API 등으로 불리고 있고 해당 내용은 몇 번을 강조해도 지나치지 않습니다. 이미 나 exponential-e.tistory.com Uniform Interface Identification of resources Manipulation of resources through representations Self-descriptive message Hypermedia..