데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-RegionJi-Woong Choi
OpenStack Ceph & Neutron에 대한 설명을 담고 있습니다.
1. OpenStack
2. How to create instance
3. Ceph
- Ceph
- OpenStack with Ceph
4. Neutron
- Neutron
- How neutron works
5. OpenStack HA- controller- l3 agent
6. OpenStack multi-region
This presentation covers the basics about OpenvSwitch and its components. OpenvSwitch is a Open Source implementation of OpenFlow by the Nicira team.
It also also talks about OpenvSwitch and its role in OpenStack Networking
VM과 컨테이너 상에서 Apache & Tomcat 설치, 실행 그리고 배포 데모
데모 요약 : 수작업으로 진행하는 가상화환경과 OCP 환경(Dockerfile)의
간단한 apache / tomcat 설치 및 실행하는 비교 데모 입니다.
데모 내용 : 물리서버 또는 가상화 환경에서 수작업으로 진행했던 배포 작업들이 컨테이너 환경에서 원클릭으로 배포하는 영상을 보여주는 데모입니다. 컨테이너 환경에서의
배포는 수작업으로 하는 배포 대비 상상이상의 시간을 아낄 수 있습니다.
오픈나루 데모 URL : http://www.opennaru.com/seminar/%ed%81%b4%eb%9d%bc%ec%9a%b0%eb%93%9c-%eb%84%a4%ec%9d%b4%ed%8b%b0%eb%b8%8c-%eb%8d%b0%eb%aa%a8-%ec%9c%a0%ed%8a%9c%eb%b8%8c/
오픈나루 비대면 워크샵 URL : http://www.opennaru.com/seminar/%ed%81%b4%eb%9d%bc%ec%9a%b0%eb%93%9c-%eb%84%a4%ec%9d%b4%ed%8b%b0%eb%b8%8c-%ec%9b%8c%ed%81%ac%ec%83%b5/
This presentation provides an overview of the Dell PowerEdge R730xd server performance results with Red Hat Ceph Storage. It covers the advantages of using Red Hat Ceph Storage on Dell servers with their proven hardware components that provide high scalability, enhanced ROI cost benefits, and support of unstructured data.
데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-RegionJi-Woong Choi
OpenStack Ceph & Neutron에 대한 설명을 담고 있습니다.
1. OpenStack
2. How to create instance
3. Ceph
- Ceph
- OpenStack with Ceph
4. Neutron
- Neutron
- How neutron works
5. OpenStack HA- controller- l3 agent
6. OpenStack multi-region
This presentation covers the basics about OpenvSwitch and its components. OpenvSwitch is a Open Source implementation of OpenFlow by the Nicira team.
It also also talks about OpenvSwitch and its role in OpenStack Networking
VM과 컨테이너 상에서 Apache & Tomcat 설치, 실행 그리고 배포 데모
데모 요약 : 수작업으로 진행하는 가상화환경과 OCP 환경(Dockerfile)의
간단한 apache / tomcat 설치 및 실행하는 비교 데모 입니다.
데모 내용 : 물리서버 또는 가상화 환경에서 수작업으로 진행했던 배포 작업들이 컨테이너 환경에서 원클릭으로 배포하는 영상을 보여주는 데모입니다. 컨테이너 환경에서의
배포는 수작업으로 하는 배포 대비 상상이상의 시간을 아낄 수 있습니다.
오픈나루 데모 URL : http://www.opennaru.com/seminar/%ed%81%b4%eb%9d%bc%ec%9a%b0%eb%93%9c-%eb%84%a4%ec%9d%b4%ed%8b%b0%eb%b8%8c-%eb%8d%b0%eb%aa%a8-%ec%9c%a0%ed%8a%9c%eb%b8%8c/
오픈나루 비대면 워크샵 URL : http://www.opennaru.com/seminar/%ed%81%b4%eb%9d%bc%ec%9a%b0%eb%93%9c-%eb%84%a4%ec%9d%b4%ed%8b%b0%eb%b8%8c-%ec%9b%8c%ed%81%ac%ec%83%b5/
This presentation provides an overview of the Dell PowerEdge R730xd server performance results with Red Hat Ceph Storage. It covers the advantages of using Red Hat Ceph Storage on Dell servers with their proven hardware components that provide high scalability, enhanced ROI cost benefits, and support of unstructured data.
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항Ji-Woong Choi
Cloud 기반으로 U2C(Unix to Cloud),U2L(Unix to Linux) 마이그레이션에 대한 가이드 라인과 사이징 관련 고려 사항에 대해 설명한 자료입니다.
많은 전환 프로젝트에서 추출된 경험치가 들어가 있으며, 전환별 난이도 및 고려사항이 들어가 있습니다.
CloudStack allows various life cycle operations for a Virtual Machine (VM). It maintains queues internally, to sync and perform all these operations. This talk briefs about how job queues are maintained in CloudStack, to execute the VM operations, followed by a demo.
Suresh Anaparti is a software architect at ShapeBlue, the largest independent integrator of CloudStack technologies globally. He has over 15 years of end-to-end product development experience in Cloud Infrastructure, Telecom and Geospatial technologies. He is an active Apache CloudStack committer/contributor and is currently working with ShapeBlue. He has been working on CloudStack development for more than 5 years.
-----------------------------------------
The CloudStack European User Group 2022 took place on 7th April. The day saw a virtual get together for the European CloudStack Community, hosting 265 attendees from 25 countries. The event hosted 10 sessions with from leading CloudStack experts, users and skilful engineers from the open-source world, which included: technical talks, user stories, new features and integrations presentations and more.
------------------------------------------
About CloudStack: https://cloudstack.apache.org/
클라우드의 전개 유형별 특징을 살펴보고 클라우드로 전환하기 위해 고려해야 할 사항과 실제 사례를 공유합니다.
목차
1. 클라우드 세상
2. 클라우드 유형
3. 클라우드 도입 전략
4. 고객 사례
5. 요약
대상
- 클라우드에 관심이 있는 분
- 클라우드 전환을 고려하시는 분
- 잠깐 휴식을 취하고 싶은 개발자
Introduce the basic concept of Open vSwitch. In this slide, we talked about how Linux kernel and networking stack worked together to forward and process the network packet and also compare those Linux networking stack functionality with Open vSwitch and Openflow.
At the end of this slide, we talk about the challenge to integrate the Open vSwitch with Kubernetes, what kind of the networking function we need to resolve and what is the benefit we can get from the Open Vswitch.
사례로 알아보는 MariaDB 마이그레이션
현대적인 IT 환경과 애플리케이션을 만들기 위해 우리는 오늘도 고민을 거듭합니다. 최근 들어 오픈소스 DB가 많은 업무에 적용되고 검증이 되면서, 점차 무거운 상용 데이터베이스를 가벼운 오픈소스 DB로 전환하는 움직임이 대기업의 미션 크리티컬 업무까지로 확산하고 있습니다. 이는 클라우드 환경 및 마이크로 서비스 개념 확산과도 일치하는 움직임입니다.
상용 DB를 MariaDB로 이관한 사례를 통해 마이그레이션의 과정과 효과를 살펴 볼 수 있습니다.
MariaDB로 이관하는 것은 어렵다는 생각을 막연히 가지고 계셨다면 본 자료를 통해 이기종 데이터베이스를 MariaDB로 마이그레이션 하는 작업이 어렵지 않게 수행될 수 있다는 점을 실제 사례를 통해 확인하시길 바랍니다.
웨비나 동영상
https://www.youtube.com/watch?v=xRsETZ5cKz8&t=52s
Cross Data Center Replication with Redis using Redis EnterpriseCihan Biyikoglu
Redis Enterprise comes with a number of Replication technologies tuned for local (LAN) or cross geo (WAN) replication. The talk explains the architecture and capabilities provided for applications looking to deploy across multiple data centers for data locality or for geo-redundency
In this session, Lucian talks about monitoring CloudStack and its related components. What are the best practices and what do you need to track closely to ensure your cloud reliability.
Lucian is a long-time sysadmin and Apache Cloustack user and contributor. He has a background in hosting, virtualisation and datacentre operations, but is now working full time on Cloudstack.
-----------------------------------------
CloudStack Collaboration Conference 2022 took place on 14th-16th November in Sofia, Bulgaria and virtually. The day saw a hybrid get-together of the global CloudStack community hosting 370 attendees. The event hosted 43 sessions from leading CloudStack experts, users and skilful engineers from the open-source world, which included: technical talks, user stories, new features and integrations presentations and more.
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항Ji-Woong Choi
Cloud 기반으로 U2C(Unix to Cloud),U2L(Unix to Linux) 마이그레이션에 대한 가이드 라인과 사이징 관련 고려 사항에 대해 설명한 자료입니다.
많은 전환 프로젝트에서 추출된 경험치가 들어가 있으며, 전환별 난이도 및 고려사항이 들어가 있습니다.
CloudStack allows various life cycle operations for a Virtual Machine (VM). It maintains queues internally, to sync and perform all these operations. This talk briefs about how job queues are maintained in CloudStack, to execute the VM operations, followed by a demo.
Suresh Anaparti is a software architect at ShapeBlue, the largest independent integrator of CloudStack technologies globally. He has over 15 years of end-to-end product development experience in Cloud Infrastructure, Telecom and Geospatial technologies. He is an active Apache CloudStack committer/contributor and is currently working with ShapeBlue. He has been working on CloudStack development for more than 5 years.
-----------------------------------------
The CloudStack European User Group 2022 took place on 7th April. The day saw a virtual get together for the European CloudStack Community, hosting 265 attendees from 25 countries. The event hosted 10 sessions with from leading CloudStack experts, users and skilful engineers from the open-source world, which included: technical talks, user stories, new features and integrations presentations and more.
------------------------------------------
About CloudStack: https://cloudstack.apache.org/
클라우드의 전개 유형별 특징을 살펴보고 클라우드로 전환하기 위해 고려해야 할 사항과 실제 사례를 공유합니다.
목차
1. 클라우드 세상
2. 클라우드 유형
3. 클라우드 도입 전략
4. 고객 사례
5. 요약
대상
- 클라우드에 관심이 있는 분
- 클라우드 전환을 고려하시는 분
- 잠깐 휴식을 취하고 싶은 개발자
Introduce the basic concept of Open vSwitch. In this slide, we talked about how Linux kernel and networking stack worked together to forward and process the network packet and also compare those Linux networking stack functionality with Open vSwitch and Openflow.
At the end of this slide, we talk about the challenge to integrate the Open vSwitch with Kubernetes, what kind of the networking function we need to resolve and what is the benefit we can get from the Open Vswitch.
사례로 알아보는 MariaDB 마이그레이션
현대적인 IT 환경과 애플리케이션을 만들기 위해 우리는 오늘도 고민을 거듭합니다. 최근 들어 오픈소스 DB가 많은 업무에 적용되고 검증이 되면서, 점차 무거운 상용 데이터베이스를 가벼운 오픈소스 DB로 전환하는 움직임이 대기업의 미션 크리티컬 업무까지로 확산하고 있습니다. 이는 클라우드 환경 및 마이크로 서비스 개념 확산과도 일치하는 움직임입니다.
상용 DB를 MariaDB로 이관한 사례를 통해 마이그레이션의 과정과 효과를 살펴 볼 수 있습니다.
MariaDB로 이관하는 것은 어렵다는 생각을 막연히 가지고 계셨다면 본 자료를 통해 이기종 데이터베이스를 MariaDB로 마이그레이션 하는 작업이 어렵지 않게 수행될 수 있다는 점을 실제 사례를 통해 확인하시길 바랍니다.
웨비나 동영상
https://www.youtube.com/watch?v=xRsETZ5cKz8&t=52s
Cross Data Center Replication with Redis using Redis EnterpriseCihan Biyikoglu
Redis Enterprise comes with a number of Replication technologies tuned for local (LAN) or cross geo (WAN) replication. The talk explains the architecture and capabilities provided for applications looking to deploy across multiple data centers for data locality or for geo-redundency
In this session, Lucian talks about monitoring CloudStack and its related components. What are the best practices and what do you need to track closely to ensure your cloud reliability.
Lucian is a long-time sysadmin and Apache Cloustack user and contributor. He has a background in hosting, virtualisation and datacentre operations, but is now working full time on Cloudstack.
-----------------------------------------
CloudStack Collaboration Conference 2022 took place on 14th-16th November in Sofia, Bulgaria and virtually. The day saw a hybrid get-together of the global CloudStack community hosting 370 attendees. The event hosted 43 sessions from leading CloudStack experts, users and skilful engineers from the open-source world, which included: technical talks, user stories, new features and integrations presentations and more.
INTEGRATED PLATFORM FOR DATA AND CONTAINERS
Mesosphere Enterprise DC/OS includes everything you need to elastically run containerized apps and data services in production.
넷플릭스에서는 높은 속도로 데이터를 제공하기 위해서 뿐만 아니라 멀티 리전의 데이터 가용성을 바탕으로한 전체 서비스 가용성 유지를 위해 캐시를 사용하고 있습니다. 이 앞의 세션에서 보았던 마이크로서비스 구조를 염두해 둘때 한가지 가장 간단한 변화는 외부 클라이언트로 부터 유입되는 단 하나의 요청에 대한 응답을 만들기 위해 다수의 내부 서비스들로 부터 데이터를 확보해야 하며, 이는 다수 서비스들에 대한 요청과 응답으로 이루어지게 됩니다. 내부 네트워크 성능, 데이터 저장소의 응답속도등의 복합적인 영향으로 인해 마이크로 서비스는 쉽게 느려질 수 있으며, 이는 보통 '팬아웃 효과'로 알려져 있습니다. 뿐만 아니라 다수 서비스간의 데이터 정합성 유지, 필요에 따라 각 서비스간 데이터의 다운타임 없는 이동, 증가하는 데이터량에 동시에 증가하는 데이터 소스의 부하, 그리고 이런 것들을 모두 감안한 데이터 복제 등을 처리해야 할 필요가 있습니다. 본 세션에서는 넷플릭스에서는 이런 문제를 어떤 방식으로 해결하는지, 그리고 스프링 부트, 스프링 클라우드를 비롯한 피보탈의 기술을 사용해서 어떻게 빠르고 쉽게 사용할 수 있는지에 대해 알아봅니다.
드랍박스, nDrive 등과 같은 클라우드 스토리지 서비스들은 데이터를 어떻게 저장하는지에 대한 이론적 내용과 실제 구현 내용을 살펴봅니다. 이 발표에서는 OpenStack 의 swift라는 Object Storage 를 이용하여 이론이 어떻게 구현되어있는지 알아봅니다.
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021Amazon Web Services Korea
Oracle DBMS 는 국내 대기업에서 압도적으로 가장 많이 사용하는 DB 로, 이 세션에서는 Oracle DB 를 AWS 로 이관하는 방법들에 대하여 살펴보겠습니다. 환경에 따라 Oracle DB 를 이관하는 어떤 방법들이 있는지 알아보며, AWS DMS(Database Migration Service) 를 사용하여 효과적으로 이관할수 있는 방법을 소개합니다. Oracle DB 를 클라우드 환경으로 이관할 때 유의해야할 포인트들에 대해 함께 공유합니다.
[IMQA] 빠른 웹페이지 만들기 - 당신의 웹페이지는 몇 점인가요?IMQA
웹 성능을 개선하기 위해 알아야 할 세 가지 지표 LCP(Largest Contentful Paint), FID(First Input Delay), CLS(Cumulative Layout Shift)에 대해 자세히 소개하고, Lighthouse로 개선하는 방법에 대해 살펴봅니다.
1. 웹 성능 개선은 무엇을 의미할까요?
2. 웹 성능 알아보기
3. Core Web Vitals
4. Lighthouse란?
5. Lighthouse로 개선하기
모바일 성능 모니터링, 웹 서버 성능 진단 및 부하테스트 컨설팅에 관심이 있으신 분은 아래 연락처로 연락해주시면, 전문 컨설턴트가 안내해드리겠습니다.
- 홈페이지: https://imqa.io
- 메일: support@imqa.io
- 전화: 02-6395-7730
- 채팅: https://imqa.channel.io/
2022년 11월 18일 코엑스에서 개최한 공공솔루션마켓에서 발표한 강연 자료입니다.
디지털 전환이 가속화됨에 따라 더욱 중요해진 디지털 경험 모니터링과 장애 및 병목 등 성능을 개선한 실 사례를 공유드립니다.
생생한 강연 영상으로 확인해 보세요!
https://youtu.be/_Cdms2TxO3M
2022년 11월 30일 코엑스에서 개최한 베스트콘2022(Better Software Testing Conference 2022)에서 발표한 강연 자료입니다.
대규모 장애를 막기 위해 소프트웨어/품질 엔지니어가 알아야 할 내결함성의 개념과 설계 기법을 공유드립니다.
생생한 강연 영상으로 확인해 보세요!
https://youtu.be/OLsv7oG0VPo
MDTF (Maryladn Test Facility)는 출입국이 빈번하게 일어나는 공항/항구 환경에 최적화된 생체 테스트로, DHS S&T MDTF 생체 인식 기술 대회에 대한 내용을 조사한 문서를 공유드립니다.
AI 테스팅 및 데이터 확보 방법에 관심이 있는 분은 mkbaek@onycom.com연락 부탁드립니다.
BeSTCon 2021에 발표한 AI 파이프라인과 실전 테스트 발표 자료입니다.
어니컴은 안면인식/이상행동 식별 사업, 불법복제 판독 식별, AI 스피커 성능 테스팅에 참여하면서, AI 테스팅에 풍부한 경험이 쌓여있는 기업입니다.
본 자료에서는 실제 AI 테스팅시 알아야할 기초적인 개념과 유의할 사항 그리고 성능 지표 / 평가 데이터 구축에 대한 전반에 대한 것들을 소개하고자 합니다.
-AI 파이프라인의 이해
-품질 검증을 위해 품질 업체가 참여해야 하는 영역
-AI 모델에서 사용하는 주요 성능 평가 지표 설명
-안면인식 /이상행동 사례
-평가 데이터 선정
-편향성, 공정성에 대한 고민들
-학습/평가 데이터 정제와 고민해야 하는 것들
-성능 리포트 작성시 고려해야 하는 사안들
NIST(미국 국립표준기술연구소)가 주관하는 안면인식 공급업체 테스트(Face Recognition Vendor Test, 이하 FRVT) 는 안면 정보를 이용하여 출입국 심사, 여권 불법 복제 탐지, 미성년자 이용 범죄 피해자 식별 등 민간, 사법, 보안 영역에서 활용하는 자동화된 얼굴 인식 기술의 성능을 측정하는 대회로 본 문서에서는 주요 4가지 평가 유형 및 특징에 대해 설명합니다.
안면인식 테스트 (이미지, 영상)과 이상행동 식별에 대한 테스트가 필요한 경우는mkbaek@onycom.com으로 연락 부탁드립니다.
급증하는 온라인 사용자 증가, 부하테스트가 필요하지 않으신가요?
요즘 인터넷 뉴스에는 홈페이지 접속자 폭증으로 인한 서버 다운, xx은행 모바일 앱 접속 에러, 인터넷 뱅킹 장애 등 온라인 시장과 모바일 시장이 급격하게 성장함에 따라 이에 따른 장애 소식이 끊이지 않고 전해지고 있습니다.
그렇다면, 우리는 이런 장애들을 어떻게 대비할 수 있을까요?
웹∙앱 부하테스트 (성능 진단) 및 컨설팅 안은 웹∙앱 부하테스트(성능 진단 테스트) 진행 과정과 이를 기반으로 어떻게 컨설팅을 진행하고 있는지 소개하고, 나아가 관련 장애들을 대비할 수 있는 방법에 대해 설명합니다.
(공유드리는 파일은 slideshare에 업로드되었던 웹∙앱 부하테스트 성능 진단 및 컨설팅 안을 업데이트한 최신 본입니다.)
웹∙앱 부하테스트 (성능 진단) 및 컨설팅 자료는 아래와 같이 구성되어있습니다.
• 웹∙앱 성능을 진단하고 문제에 대한 원인 분석 및 개선방향을 제시합니다.
• 컨설팅 안에는 여러 실 성능 진단을 예시로 들고 이에 대한 원인 분석 및 개선방향을 도
출한 내용이 포함되어 있습니다.
1. 앱 성능 진단
• 앱 진단 절차
• 앱 진단 상세 내용
2. 웹 서버 성능 진단
• 웹 진단 절차
• 웹 진단 방향
3. 부하 테스트
• 현 테스트 시나리오 분석
• 테스트 시나리오 보완 방법
• 부하 테스트 진행 방안
• 부하 테스트 전략
• 클라우드 기반 테스트 방안
모바일 성능 모니터링, 웹 서버 성능 진단 및 부하테스트 컨설팅에 관심이 있으신 분은 아래 연락처로 연락해주시면, 전문 컨설턴트가 안내해드리겠습니다.
hhjung@onycom.com l 02-6395-7722
성능 진단 및 컨설팅 제안서입니다.
모바일 성능 모니터링, 모바일 자동화 테스트, 웹 서버 성능 테스트를 합리적인 가격에 컨설팅 해 드립니다.
⁍ 업데이트된 최신본 성능 진단 및 컨설팅 제안서 확인해 보세요!
https://www.slideshare.net/IMQAGroup/imqa-performance-consulting
4. 고려해야 할 것?
Localization 가입자수
TIME ZONE 처리 ?
TEXT 다국어 처리 ?
기준 FONT ?
방문자수
확장성 (Scalability) ?
TPS (Transaction Per Second)
HA (High Availability) ? 비용(Cost)
성능(Performance)
5. Key Principles
• 대규모의 웹 시스템을 설계할 때 고려해야 할 주요 사항들.
가용성
(Availability)
성능
(Performance)
신뢰성
(Reliability)
확장성
(Scalability)
관리성
(Manageability)
비용(Cost)
6. Key Principles
가용성
(Availability)
성능
(Performance)
신뢰성
(Reliability)
장애가 발생했을 경우에 대한 빠른 복구 방법,
문제가 발생할 때 일부만으로 동작할 수 있게 해서
전면 장애가 발생하지 않게 하는 구성 해야 한다.
웹 사이트에서 성능은 매우 중요한 고려사항,
빠른 응답 시간과 낮은 레이턴시를 위해서
최적화된 시스템을 만드는 것은 중요하다.
항상 똑같은 요청에는 똑같은 결과를 제공해야 한다.
시스템이 항상 정상적으로 동작해야 한다.
데이터가 변하거나 업데이트되고 나면 업데이트된 새
로운 데이터를 반환 해야한다.
7. Key Principles
확장성
(Scalability)
관리성
(Manageability)
비용(Cost)
많은 부하를 처리할 수 있도록 처리량을 증가 시킬 수 있어야 한다.
시스템의 확장성이란 시스템의 여러 특징이나 기능 / 비 기능, 한계 상황
으로 설명될 수 있다.
쉽게 운용할 수 있는 시스템을 설계하는 것은 또 다른 중요한 고려 사항이다.
관리성이 좋아지려면 문제 발생 시 윈인 분석과 문제를 이해하기 쉬워야 한다.
그리고 업데이트와 수정, 시스템 운용 자체가 쉬워야 한다.
비용은 중요한다.
비용은 하드웨어와 소프트웨어 비용을 포함하지만,
시스템을 배포하고 관리하는 비용 또한 중요하게 고려해야 한다.
예를 들면
시스템이 빌드하는 데 걸리는 시간, 시스템을 실행시키는 데 드는 운용 노력의 양,
모든 고려해야 할 사항에 대해서 필요한 교육 비용까지 포함된다.
즉, 비용은 시스템 소유에 필요한 모든 비용이다.
8. 이 중 가장 고려해야할 사항은?
올바른 선택은 무엇인가?
이것들을 어떻게 잘 조합 할 것 인가?
9. 목차
• Motivation
• Basics
- Services
- Redundancy
- Partitions
• Fast and Scalable Data Access
- Cache
- Proxies
- Indexes
• Load Balancers
• Queue
13. 고려해야 할 또 다른 측면
• 저장될 이미지의 개수에 제한이 없다.
저장공간의 확장성에 대해서도 고려해야 한다.
• 이미지 보기나 다운로드를 요청할 때 응답 시간이 빨라야 한다.
• 사용자가 이미지를 업로드하고 난 후, 해당 이미지는 항상 시스
템에 저장되어 있어야 한다. (데이터 신뢰성)
• 시스템을 운용하기 쉬워야 한다. (관리성)
• 이미지 호스팅 서비스 자체의 이익율이 높지 않기 때문에,
시스템은 효율적으로 운용될 필요가 있다.(비용)
23. Shared Nothing Architecture 특징
구분 Shared Nothing Architecture
공유 자원 공유 자원 없음
데이터동기화 방안 Network를 통한 공유 (복제)
성능 공유 자원이 없으므로 빠른 성능
시스템 구축비용 저비용(로컬 디스크, Network)
거리 적용 일반적인 TCP기반의 Network 를 사용해도 원거리
적용에 큰 무리가 없음
데이터 정합성 Network 공유(복제) 특성상 노드간 데이터 불일치
현상을 억제하기 위한 별도의 고려가 필요
치명적인 Failure 요소 Network Failure 시 관련 노드 데이터 동기화 불가
적합 시스템 완벽한 데이터 정합성보다는 빠른 성능 요구
관련 대표 DBMS기술 이중화(replication)
24. Shared Nothing Architecture
• 각각의 노드는 상태나 작업을 관리하는 중앙부
없이 독립적으로 동작 가능
• 새로운 노드를 특별한 조건없이 추가 가능.
• 시스템이 single point of failure을 갖지 않
음.즉, 장애에 좀 더 잘 대처할 수 있음.
38. ETC Partitioning
• Directory Based Partitioning
- 파티셔닝 메커니즘을 제공하는 추상화된 서비스
- 샤드키를 조회 할 수 있으면 되므로,
구현은 DB 와 cache 등 를 적절히 조합해서 만들수 있다.
https://charsyam.wordpress.com/2011/12/04/instagram-%EC%97%90%EC%84%9C-id-
%EC%83%A4%EB%94%A9%ED%95%98%EA%B8%B0/
41. ISSUE
• 데이터 로컬리티
- 로컬에 데이터가 없다면 데이터를 얻기 위해 네트워크
비용 과 잠재적인 성능 문제가 발생할 수 있다.
• 데이터 비 정합성
- 어떠한 데이터가 업데이트 되려 할 때, 읽기 요청이 업데이트
요청보다 먼저 발생했다면 해당 데이터는 비 정합성 상태가 된다.
42. 결론
• MSA 처럼 각 서비스를 독립적으로 만들어
확장성을 확보 해야 한다.
• Shared Nothing Architecture 를 이용하여
HA(High Availability) 을 확보 해야 한다.
50. Caches
• 요청 받은 데이터는 다시 요청 받을 확률이 높다는 지역성의 원리
(locality of reference)에 기반한 방법.
• 매우 짧은 시간 동안 유지되는 메모리와 같은 것. (단기 기억)
• 캐시 용량은 매우 제한적이지만, 통상적으로 원래의 데이터 저장소
보다는 매우 빠르고 자주 액세스되는 데이터를 보유.
• 아키텍처의 모든 단계에 위치할 수 있지만, Front-end 와 가까운 곳
에 위치하는 경우가 많음.
• 보통 캐시는 서비스의 Back-end까지 가는 시간적인 비용을 줄이기
위해서 사용하는 경우가 많기 때문.
63. Distributed Cache 단점
• 장애가 발생한 노드를 처리하는 방법이 필요하다.
다른 노드에 여러 개의 복제본을 가지는 방법으로 해결 하기도 한다.
그러나 문제 노드를 처리하기 위한 로직이 복잡해진다.
• 캐시 시스템에는 추가적인 저장 공간을 유지하기 위한 비용 문제가
항상 따른다
70. Forward vs Reverse
Proxy 차이점
Forward
Proxy
가고 싶은 목적지 사이트의 주소를 직접 프록시 서버에게 전달,
전달 받은 프록시 서버가 해당 목적지 사이트의 내용을 받아와서
전달해주는 대리인 역할 (즉, Client가 목적지를 알고 프록시에 전달)
예: (http://proxy.com/?url=target.com)
Reverse
Proxy
Reverse Proxy 에 설정된 서버의 주소 로 데이터를 요청,
Reverse Proxy는 이 요청을 받아서 자신의 뒤에 있는 "배후"의
서버에 데이터를 요청하여 받은 다음 클라이언트에 전달하게 됨.
(즉, Client 가 목적지는 모르지만 프록시가 알고 요청을 처리 하여 전달)
예: ( 클라이언트는 http://proxy.com/로 요청 --> proxy는 target.com 에
서 데이터를 가져와 응답)
74. Proxies With Caches
• 프락시와 캐시를 함께 사용하는 것은 무의미하지만, 같이 사용하게
될 때에는 캐시를 프락시 앞에 두는 것이 최선.
• 프락시가 캐시 앞에 있으면 캐시로 요청이 오기 전에 추가적인 지연
만 생기기 때문에 성능이 저하 된다.
• 캐시와 비슷하지만, 캐시는 데이터나 문서를 저장하기 위함 이고,
프락시는 여러 클라이언트가 원하는 문서를 제공하기 위한 요청이
나 콜을 최적화시키는 방법이다.