Go, Vantage point
가까운 곳을 걷지 않고 서는 먼 곳을 갈 수 없다.
Github | https://github.com/overnew/
Blog | https://everenew.tistory.com/
ubuntu EC2에 apache2와 php를 설치 후, AWS PHP SDK를 세팅해 보자. sudo suapt-get updateapt-get install apache2 -yapt-get install php -y apt-get install p7zip -y (현재 최신버전인 php 8.1이 설치됨) 작업 폴더를 이동시키고 진행해 주자.cd /var/www/html PHP 의존성 관리 도구인 Composer 설치설치하자. https://getcomposer.org/download/ ComposerDownload Composer Latest: v2.7.6 To quickly install Composer in the current directory, run the..
Code deploy의 ECS로 배포는 블루/그린 배포 방식으로 업데이트를 진행해보자.블루 그린은 한번에 모든 트래픽을 새로운 서버자원으로 이동시키는 무중단 배포 방식이다. 이때 하나의 로드밸런서에서 두 개의 리스너와 대상 그룹을 요구한다.그 이유를 배포 방식을 통해 알아보자. 배포 원리 배포 이벤트의 순서는 아래와 같다. install전에는 서비스 중인 Production Listener의 대상 그룹을 Test Listener도 가리키고 있다. 여기서 install 이벤트가 실행되면, 다른 Target group에 업데이트된 task들이 배포된다.위의 이벤트 소요시간을 확인해보면, 컨테이너를 올리는 작업 및 상태 체크 때문에 다른 이벤트보다 시간이 많이 소요된다. AllowT..
고가용성을 가진 웹서비스 인프라를 만들어보는 중에 Elastic cache를 활용해서 세션 쿠키를 캐싱할 계획이었다. Memcached를 선택한 이유는 단순히 세션 쿠키를 저장하고 읽는 것이라면,단순한 기능을 제공하는 대신 빠른 성능을 보이는 Memcached가 redis보다 좋다고 판단했다. 고가용성을 보장하려면, 두 개 이상의 노드가 동작해야 하기 때문에 memcached 노드를 두 개를 다른 AZ에 배치하였다. 클러스터라면 노드 간의 동기화가 당연하게 일어날 줄 알았지만, 하나의 노드에서 key 저장 후, 다른 노드에서 키를 확인해 보니 서로 데이터는 독립적으로 처리하는 것이 확인되었다. 이처럼 AWS Memcached은 노드 간의 동기화가 제공되지 않는 것이 확인된다.그럼에..