본문 바로가기

IT105

[AWS] Lambda의 장단점 요즈음 서버리스 아키텍처가 많이 사용되고 있다. 이에 AWS의 선두주자는 바로 Lambda 서비스라고 할 수 있다.Lambda에 관한 AWS의 문서를 확인해 보면 아래와 같이 소개를 한다. "AWS Lambda는 서버를 provisioning 하거나 관리하지 않고도 코드를 실행 할 수 있게 해주는 컴퓨팅 서비스이다." 서버리스라는 단어와 같이 (물론 물리적으로 서버가 필요 없는 것은 아니지만) 서버에 대한 고민을 하지 않고도 application 개발을 진행할 수 있다.때문에 문서상에서 언급하는 장점들만 살펴보면 아래와 같다.- 자동 확장 (요청의 갯수에 상관없이 받아 줄 수 있음)- 사용한 시간에 대해서만 비용 지불- 백엔드를 관리할 필요 없음 (자동으로 최신 버전)- 고가용성등등 AWS 에서 언급하는.. 2019. 1. 27.
[Network] Proxy와Reverse Proxy Proxy와 Reverse Proxy에 대해 알아보려고 한다.이 2가지 개념은 생각해보면 '그냥 반대의 개념이네' 라고 할 수 있다. 이름부터도 Prefix로 Reverse가 붙으니 당연히 그렇게 생각하는게 맞다.그런데 이번 포스팅에서는 개략적으로 알기보다는 조금이라도 더 개념에 접근해보려고 한다. 그림 1. Proxy Vs Reverse Proxy 그림 1에서 확인 할 수 있듯이, 인프라 상에서 Server의 위치가 어디인지에 따라 Proxy인지 Reverse Proxy인지 판단 할 수 있다. (Front-end에 밀접하면 Proxy, Back-end에 밀접하면 Reverse Proxy)그렇다면 각 개념에 대해 조금 더 알아보도록 하자. Proxy Server요즘 Proxy 서버 로써 Reverse P.. 2019. 1. 19.
[Netflix] Hystrix Overview HystrixHystrix는 Netflix에서 만든 라이브러리로 분산 환경에서 fault tolerance을 수행하도록 한다. 이를 통해 Hystrix 라이브러리를 사용하는 서비스는 내부적으로 resiliency를 향상 시킬 수 있다. 추가로 Hystrix는 Java 라이브러리로 관련 문서는 아래에서 확인 할 수 있다.- http://netflix.github.io/Hystrix/javadoc/ 설계 원칙Hystrix는 다음의 설계 원칙을 따른다.- Dependency로부터 보호하고 latency 및 failure를 제어한다.- 분산 환경에서 cascading failures(계단식 장애)를 중단한다. (끊는다)- 빠르게 failure 시키고 복구한다.- 대체 시스템(fallback)으로 자연스럽게 전환.. 2019. 1. 14.
[AWS] ElastiCache Redis Cluster ElastiCache Redis ClusterAWS의 Managed Service인 ElastiCache에서 Redis를 Cluster 모드로 적용하여 사용할 수 있다. 그림 1. ElastiCache Redis Cluster 위의 그림 1에서도 확인 할 수 있듯이, AWS에서 Redis는 Cluster 모드를 사용하지 않을 때에는 Replication만 적용할 수 있지만 Cluster 모드를 사용할 때에는 Replication 뿐만 아니라 Data Partitioning 또한 적용 할 수 있다. (물론, Redis Cluster 자체가 데이터 분산을 위한 방법이긴 하지만.)Redis Cluster 구성에 대한 자세한 부분은 아래 글을 참조해보자. ShardShard는 단순히 관련된 Node의 집합이다... 2019. 1. 6.