기타(4)
-
AWS 비용 최적화 여정
안녕하세요 피플에서 백엔드를 맡고 있는 고지훈입니다. 대학생분들이 모여서 운영하다보니 항상 금전적인 측면에서 힘든 상황을 겪고 있습니다. 그나마 여러분들의 성원과 도움으로 만들어진 AWS 크레딧과 후원금으로 운영되고 있습니다. 하지만 이또한 지속가능하다고 하기엔 불확실성이 짙기 때문에 서비스 운영에 들어가는 비용 자체를 줄일 필요성을 많이 느끼게 된것같아요 그중에 운영비용 중 AWS 서버비가 가장 많은 금액을 차지했었습니다. 피플을 사용하신 분들 중 공지사항을 한번이라도 보셨다면 저희 서버비용이 상당히 많이 나오는데요 비용 최적화 이전 평균 370~380달러 정도로 지출되고 있었습니다. 원화로 480,000원 정도로 매우 부담스러운 금액이었습니다. 저희 서비스는 AWS에서 운영되며 실제 운영서버는 다음의..
2024.03.18 -
HTTP
웹개발에 있어 가장 기본적인 사항이지만 다시 한번 복습하고 이를 정리하기 위해 HTTP에 대하여 작성합니다. 먼저 인터넷에서 통신은 어떻게 이루어 질까요 물론 여러 가지 방법이 있기는 하지만 가장 보편화된 방식은 Client - Server 방식을 활용합니다. 여기서 Client는 다른 서버가 될 수도 있고 저희 컴퓨터가 될 수도 있습니다. 즉, Client는 서버에 특정 정보 혹은 액션을 요청하는 컴퓨터 입니다. Server는 Client의 요청을 대기하고 요청이 오면 그에 맞는 정보와 액션을 수행하는 컴퓨터 입니다. 그렇다면 Client는 대체 어떻게 Server에게 요청을 할 수 있을까요? 인터넷망은 매우 복잡하고 서로 얽혀 있습니다. 이중에서 Client는 Server의 위치를 알야아 하고 해당 ..
2023.06.04 -
Redis
Redis? Redis란 key-value 형태의 NoSQL InMemory DB 입니다. 대표적으로 분산환경에서의 세션 관리, 캐싱에 자주 활용됩니다. 왜 Redis를 사용하는가? 같은 InMemory DB들중 대표 적인 것 중에 하나닥 Memcached가 있습니다. 둘의 가장 큰 차이점은 Redis는 싱글 스레드, Memcahaced는 멀티 스레드 환경이라는 것이고, Redis는 List, Set, SortedSet 등 여러 Collection들을 지원한다는 것입니다. 또한 Memcached는 Redis에서 지원하는 스냅샷, Replication, Trasaction 등 지원하지 않는 기능이 꽤 많으며 Memcached는 주로 Scale up을 활용해서 확장성을 얻을 수 있는 반면, Redis는 Sc..
2023.01.18 -
Docker
Docker란? 도커란 컨테이너 가상화 기술을 사용하여 응용프로그램을 더 쉽게 배포, 실행 할 수 있도록 설계된 툴이며 컨테이너 기반의 기술 및 오픈소스라는 특징을 갖고있습니다. 서버에서의 컨테이너 기술은 자신이 필요한 프로그램 혹은 실행환경 등 여러 리소스들을 한곳에 모아놓고 관리 할 수 있습니다. ex) 카카오톡을 예로 들자면, 카카오 톡을 실행하기 위한 파일, 시스템 설정, 라이브러리 등의 종속성을 도커 컨테이너에 저장하고 실행 후 이를 카카오톡에서 필요로 한다면 컨테이너에서 가져가는 방식. 가상화 기술 하나의 하드웨어에 여러가지 OS 혹은 프로그램을 실행하여 보다 하드웨어의 자원을 효율적으로 사용 할 수 있는 기술 허나 가상화 기술은 각각 Guest OS를 갖고 있어야 하는 제약적인 부분 때문에 ..
2022.07.20