대용량서비스

백엔드
  • 평생소장
  • 최저가

한번 구매로, 평생 소장하세요.
(자동 구성) 가격이 인상됩니다.

조만간 가격이 인상될 예정입니다.
지금 구매하세요!

  • 정상가 (자동 구성)
  • 할인 금액 (자동 구성)
  • 최종 금액 (자동 구성)
  • 5개월 할부 시 (자동 구성)
오늘이 최저가!

장애는 언제, 어디서든 발생합니다.
그래서 서비스에서 장애가 발생하지 않게 만드는 것이 아니라, 장애가 발생했을 때, 장애의 원인을 빨리 찾을 수 있게 하거나, 그 장애를 얼마나 빨리 복구하는지가 관건입니다.

대규모 서비스 개발은 결국 어떻게 서비스를 쉽게 확장하고, 장애가 발생했을 때, 얼마나 쉽게 대응할 수 있는 구조를 만드는냐에 달려있습니다.
그런데 한번의 강의를 듣고 단순히 학습하는 것만으로 이를 쉽게 적용하기 어렵습니다.

그래서 저는 The RED 에서 실제로 대규모 서비스 개발에 필요한 기본적인 지식들과 실제로 성능에 영향을 주는 부분들을 실습으로 보여드리면서, 학습의 이해도를 높이고, 실무에 적용할 수 있도록 도움을 드리고자 합니다.


by 강대명

Redis
백엔드에센셜

백엔드 에센셜 필수 개념들에 대해 궁금하면 클릭!


* 확장성: 서버의 추가 삭제가 발생하면 거기에 맞춰서 서비스의 성능이 증가해야 합니다.
* 장애회복성: 서비스의 API서버, DB서버 등 일부에 장애가 나더라도 서비스가 지속적으로 가능해야 합니다.
* 자동화: 서비스의 배포나 서버의 추가 삭제등이, 메뉴얼하게가 아니라 스크립트 등에 의해서 자동화되어야 합니다.
* 모니터링: 서비스가 제대로 동작한다는 것을 아는 것이 가장 중요하므로 이를 위해 모니터링은 매우 중요합니다.

* ngrinder: 서비스가 어느정도의 부하를 견딜 수 있는지, 어디가 병목이 되는지를 아는 것이 중요합니다. ngrinder 는 부하테스트를 위한 툴입니다.
* prometheus: exporter를 이용해서 해당 서비스의 지표를 수집하고 이를 prometheus가 저장해서 보여주게 됩니다.
* Grafana: Grafana 는 Prometheus 를 통해서 수집한 지표를 비주얼라이제이션 하는데 사용됩니다.

* Load Balancing-ServerSide: ServerSide 로드밸런싱은 클라이언트가 실제 서비스를 하는 앞에 있는 로드밸런서만 바라보고 부하를 로드밸런서가 알아서 뒤의 서비스 서버로 나눠주는 방식입니다.
* Load Balancing-ClientSide: ClideSide 로드밸런싱은 클라이언트가 실제 서비스 호스트의 목록을 알고 이를 통해 직접적으로 부하를 조절하는 방식입니다.

* Service Discovery-Zookeeper: 서비스 종류와 서비스에 속한 서버의 목록을 관리하고 이를 찾을 수 있는 방법입니다.
* Circuit Breaker: 외부 서비스에 장애가 발생하고 이 호출로 인해 응답이 느려질 때, 빠르게 실패할 수 있도록 해주는 방법입니다.
* Replication: 데이터의 복제를 의미하고, 서비스 가용성을 위해서 Replication 은 필수입니다.
* Failover: 서버에 장애가 발생했을 때, 이를 대체하는 다른 서버로 서비스를 넘겨주는 것입니다. 가용성을 위해서 Failover는 필수입니다.
* Consistent Hashing: 대규모 서비스에서 Cache의 데이터 Miss도 서비스 응답에 영향을 줄 수 있습니다. Cache 서버가 추가/삭제 때마다 데이터가 사라질 수 있는데, 이를 최소화 해주는 것이 Consistent Hashing입니다.

* Sharding-Index: 많은 데이터가 있을 때 이를 분리해서 저장하는 방식입니다. Index 방식은 복잡하지만, 각 데이터 마다 어떤 서버에 할당되어야 할지 지정해주기 때문에, 데이터의 이동을 최소화할 수 있는 방식입니다.
* Sharding-Range: 가장 쉽게 적용할 수 있는 Sharding 방식입니다. Key 의 Range에 따라서 서버를 할당합니다.

* Sharding-Modular:Range에 비해서 데이터를 균등하게 Sharding 할 수 있는 방식입니다. 다만 서버의 확장성이 뒤로 가면 제한되게 됩니다.
* Guid: 대규모 서비스에서 Sharding 을 위해서 유일한 Key를 만드는 것은 상당히 중요합니다. 이를 위해 효율적으로 유일한 Key를 만드는 것이 Guid 입니다.
* Async Queue: API 서버에서 DB에 바로 데이터를 저장하면, 결국 API 서버에 몰리는 만큼 DB서버에 부하를 주게 됩니다. 이를 Queue 를 이용해 비동기 처리하면서 부하를 조절하면 좀 더 안정적인 서비스를 할 수 있습니다.

* 배포-BlueGreen: Rolling Update는 배포와 Rollback의 경우 서버 수가 늘어날수록, 시간이 늘어나게 됩니다. 이를 해결해주는 Blue-Green 배포입니다.
* 배포-Canary: Blue-Green으로 배포를 하더라도, 많은 수의 서버에 새로운 버전이 배포되면, 버그가 있을 때 많은 유저가 이를 경험하게 됩니다. 이를 위해 일부만 배포하는 것이 Canary 배포입니다.

* Timeout: 외부 서비스를 호출할 때 Timeout 값을 잘못 설정하면, 데이터의 중복 등의 문제가 발생할 수 있습니다. 이를 어떻게 방지할지에 대한 팁입니다.
* Caching-Look Aside: 일반적으로 Cache는 Cache에 데이터가 없으면 해당 데이터를 DB에서 읽어서 Cache를 만들게 됩니다. 이를 우리는 Look-Aside Cache 방식이라고 합니다.
* Caching-Write Back: 일단 DB에 Write를 해야하면 DB에 부하가 발생하기 때문에 이를 위해서 먼저 Cache 에 써 놓고, 차후에 실제 데이터를 스토리지에 저장하는 것이 Write-Back 방식입니다. 상황에 따라서 데이터 유실의 위험이 있습니다.
* Hot Key 이슈: Hot key는 많은 데이터들이 Cache 서버나 DB서버의 성능의 한계 이상으로 특정 Key에 몰릴 경우 문제가 발생합니다. Hot Key 해결을 위한 방법에는 Local Cache, Read Replica 를 이용하는 방법, Multi Write Read One 등이 방식이 있습니다.

RED Point
분산캐시기술

강대명님은 2016년 레디스 컨퍼런스에서 한국인 최초로 프레젠테이션을 진행,
현재 전세계 Redis 컨트리뷰터(*오픈소스 개발 프로젝트 기여자) 중 22위에 랭킹되어 있습니다!

이 강의에서는 강대명님과 함께 대용량 서비스를 구축하기 위해 필수로 알아야하는 것들에 대해
Redis 기술과 함께 알아봅니다.

레디스

2009년부터 2021년까지 전세계 Redis contributors 중 22위를 차지한 강대명님
(*21년 7월 기준)

▶Redis란 무엇이고, 왜 중요한가? 궁금하면 클릭!


페이스북, 네이버, 카카오 등 IT 대기업과 배민, 쿠팡 등 유니콘 스타트업에서 사용자들의 대규모 메세지를 처리하기 위하여 사용하는 분산캐시기술입니다.
Redis는 빠른 속도를 제공하면서도 개발자가 쉽게 사용할 수 있는 자료구조들을 제공해서, 개발자의 작업을 줄여주는 장점이 있습니다.


강대명님의 "Multi-Write Read One" 방식의
Redis 실습 영상을 살짝 엿보는 시간을 가져볼게요.

Hot Key 가 발생하면, 성능이 좋은 캐시 서버라도 결국 해당 서버의 한계 이상은 받을수가 없습니다.

이러한 부분을 처리하기 위해서, 몇 군데 캐시를 쓰고 랜덤하게 데이터를 읽는 Multi-Write, Read One방식을 써서 문제를 해결할 수 있다는 사실 알고 계셨나요?

아래의 과정으로 문제가 해결됩니다.

✔ Redis 설정
✔ Cache Write 시에는 두 군데에 저장 됩니다.
✔ Cache Read 시에는 한 군데에서 읽어 옵니다.

▼이러한 과정의 실습을 통해 '이것'을 배워갈 수 있습니다!▼

대규모 서비스에서는 캐시가 제공할 수 있는 성능보다 많은 접근이 이뤄지는
Hot Key가 발생해서 성능을 떨어트릴 수 있는데,
성능이 저하되지 않도록 Hot Key를 처리하는 방법을 배워갈 수 있습니다.

Learning Point

저 강대명에게 배우면
대규모 서비스를 구축하기 위해 유념해야 할 아래 4가지 요소들!
다 채울 수 있습니다.

성능이 늘어날 수 있도록
서비스가 확장 가능해야 합니다.

장애가 발생하더라도 자동으로 서비스가 지속될 수 있도록 해야합니다.

버튼을 클릭해서 서비스가 자동으로 복구가 될 수 있도록 해야 합니다.

서비스가 잘 돌아가고 있는지
항상 모니터링을 해야합니다.

강대명

Practice 1. Service Discovery
(#확장성 #장애회복성 #자동화)

Callee 를 추가하거나 삭제하면서는 것을 반복하면서, Caller 에서 자동으로 이를 인지하고 처리하는 것을 볼 수 있습니다.

이와 같은 과정을 통해 Service Discovery 를 이용하여, 서버가 추가/삭제 될 때 다른 설정의 변경 없이 이를 호출하는 쪽에서 자동으로 이를 반영할 수 있는 방법을 배워가실 수 있습니다!

Practice 2. Consistent hashing
(#장애회복성)

Cache로써 동작하는 Redis 서버를 추가하고 삭제하는 실습을 통해 Consistent Hasing으로 데이터 분배가 최소한으로 일어나는 것을 눈으로 확인하실 수 있습니다.

대규모 서비스에서는 캐시 데이터라도 많이 사라지면 성능을 저하시키기 때문에 Consistent Hashing 을 이용하면, 캐시 서버가 추가되거나 삭제되더라도 캐시 데이터의 사라짐 현상이 적어지는 것을 실제로 보고, 이를 차후에 적용할 수 있게 됩니다!

Practice 3. 자동화

ansible 과 terraform 을 이용하여 간단한 geoip 서비스를 올리는 과정을 보여드릴게요. 1대의 aws를 생성해서 geoip 서버를 배포합니다.

이 과정을 통해 인프라를 구축할 때 수동으로 구축하는 것이 아니라 IaC(Infrastructure as Code) 를 통해서 항상 같은 인프라를 "자동화"하여
손쉽게 구축하고 배포할 수 있다는 것을 알 수 있습니다.
대규모 서비스를 구축하기 위해서는 IaC에 대한 학습이 꼭 필요합니다!

Practice 4. 모니터링

기본적인 노드에 대한 모니터링을 하는 grafana 대시보드를 신청, 간단한 geoip 를 배포하고 여기에 대한 결과를 간단하게 prometheus 를 통해서 모니터링 합니다.

이 과정을 통해 정해진 수치 이상 에러가 발생하면 Slack을 통해서 알람을 주는 것을 볼 수 있습니다. 장애가 난 것을 알기 위해서는 모니터링이 필수적입니다. 강의에서 어떤 정보들을 모니터링해야 하는지 자세히 배워보세요!

더 많은 기술과 실습은 강대명의 The RED에서 확인해보세요!

Top of Top

누구나 사용하는 네이버, 카카오 서비스 개발부터
대규모 인프라에 Redis 적용까지!
백엔드 개발자 강대명

세계적으로 경쟁력있는 엔터테인먼트 산업의 위버스컴퍼니에서 글로벌 고객 대상의 개발 프로젝트에 참여하고 있어요.

위버스컴퍼니에서 아티스트와 팬 간의 소통, 콘텐츠, 서비스를 제공하는 글로벌 커뮤니티&서비스 플랫폼인 위버스와 위버스샵의 데이터를 수집해서 처리해서 데이터 분석가 분들이 잘 분석할 수 있도록 데이터 파이프라인을 만드는 일을 하고 있습니다. 로그를 통해 사용자들이 위버스와 위버스샵에 얼마나 방문하는지, 어떤 행동들을 하는지에 대한 정보를 안정적으로 처리할 수 있도록 하고 있습니다.

네이버에서 모바일 앱/메일, 카카오에서 카카오홈/카카오스토리 개발 프로젝트에 참여했어요.

네이버와 카카오에서도 많은 캐시 서버를 사용해 볼 수 있었습니다. 3TB 가 넘는 메모리 사이즈의 Memcached 서버들과, 5TB가 넘는 Redis 서버들을 다루어보기도 했습니다. 흔히들 달리는 열차의 바퀴를 갈아끼운다고 표현하는 DAU가 천만이상인 서비스를 루비에서 자바로 컨버팅 하는 작업도 해보았습니다. 대규모 서비스에서는 문제를 잘 해결하는 것도 중요하지만, 간단한 부분부터 어려운부분까지 자동화 할 수 있는 부분은 가능한 자동화하고, 모니터링 할 수 있는 부분들은 가능한 모니터링 해야만 운영이 가능하다는 것을 배울 수 있었습니다.

개발자 경력 20여년동안 매번 새로운 장애를 겪고 있습니다.

MAU가 천만이 넘는 서비스에서는 하루에 몇대의 서버들이 이유없이 장애가 발생하는데, 32비트 커널에서 램디스크를 사용하면 왜 커널 메모리가 부족해지는지, 서버가 실행될 때 특정 포트 대역에서 왜 충돌이 일어날 수 있는지, 실제로 리눅스 커널 소스를 통해서 문제를 찾아서 해결해야하는 장애들도 있었고, DNS에서의 캐싱 이슈로 인한 문제, 자바 1.7에서 1.8로 버전업을 하면서 내부적으로 발생하는 이슈로 인한 이슈, 미국의 동부/서부 간의 레이턴시 이슈나 국내에서 지역간의 레이턴시 때문에 발생하는 이슈도 경험해 보았습니다. Udemy에서는 OnPremsis를 AWS로 이전하면서 많은 문제를 겪기도 했습니다.

Redis contributor 22위 & 저서 집필 등 Redis는 제 비장의 무기죠.

현재 웹 서비스를 비롯한 다양한 SNS 서비스로 대용량 서비스가 증가하고 있고, 이로 인해 대용량 처리 기술에 대한 관심이 높아지고 있어요. 서버를 분산시키고, 많은 트래픽을 견뎌낼 수 있는 분산 캐시 기술들은 대용량 서버를 구축하는 핵심 key 역할을 하기 때문입니다. 그래서 Redis는 저뿐만 아니라 백엔드 개발자들 모두의 비장의 무기가 될 수 있다고 생각해요. 이 강의를 통해 많은 백엔드 개발자분들이 용이하게 작업하실 수 있게 도움을 드리고 싶어요.

• 2021
레몬트리 / Software Engineer
- Tech Lead Managing AWS Infra 서비스 아키텍처 설계 및 구현

• 2020 ~ 2021
위버스 컴퍼니 / Software Engineer
- Data Pipeline 관리
(EMR, Databricks, Snowflake, Structured Streaming, Kafka)
- Airflow 관리 및 DAG 개발(k8s)
- Databricks DeltaLake 를 통한 Changed Data Capture 처리
- BI 서비스를 위한 Backend API 디자인 및 서버 구현

• 2017 ~ 2020
Udemy / Software Engineer
- Data Pipeline 관리
- Data Pipeline OnPremise to AWS 이전
- GDPR 관련 처리

• 2013 ~ 2017
Kakao / Software Engineer
- Kakao Story 개발
- Kakao Home 개발

• 2008 ~ 2012
Naver / Software Engineer
- 네이버 메일 개발
- 네이버 윈도우 모바일 앱 개발

• 2002 ~ 2008
파이널데이터 / Software Engineer
- 파이널 포렌식스 개발


<저서>

• 2002 ~ 2008

- Redis 운영 관리(한빛미디어)
- 대용량 서버 구축을 위한 Memcached와 Redis(한빛미디어)
- 윈도우 네트워크 프로그래밍(대림)
<강연>

• 2019 ~ 2020

- 부산대학교 SW교육센터
- 데브그라운드 주니어
- 우아한 Redis (우아한 형제)
- 안동대학교 공개SW체험캠프
- 재직자 공개SW 국내교육
- 넷마블
- 경북대

• 2017 ~ 2018
- 서울과기대
- KOSSCON
- 카카오
- SW마에스트로
- 줌인터넷
- 한이음


• 2013 ~ 2016
- Redis Conf 2016(San Fransico)
- NHN
- 한이음
- 네이버 D2SF
- 공개 SW Day
- Deview 2013
- NDC 2013
강대명님의 이야기를
지금 최저가로 만나보세요!
상세 커리큘럼

| Part 0. 대규모 서비스의 특성

대규모 서비스는 많은 사용자에 의해서 많은 데이터와 트래픽이 있는 서비스를 말합니다.
대규모 서비스의 안정적인 운영을 위해서, 확장성, 장애회복성, 자동화, 모니터링이 필요합니다.

✔ 대규모 서비스의 특성

⚬ 대규모 서비스가 어떤 것이고, 대규모 서비스가 갖춰야 할 특성에 대해서 간단하게 설명
⚬ SPOF 가 어떤것이고, 어떤 상황에 발생하는 것인지 설명

[실습]
- Terraform과 Ansible 을 이용해서 인프라를 간단히 구성하는 예제 실습


| Part 1. 장애포인트를 찾기 위한 모니터링

간단한 Scrap 서비스를 만들고 부하테스트를 통해 어떤 부분들에서 문제가 발생할 수 있는지 확인합니다.
Ngrinder 를 통해서 Scrap 서버의 성능이 얼마나 나오는지 확인하며, Prometheus, Grafana를 통해서 Scrap 서버에 장애가 발생하면 어떤 일이 생기는지 보여줍니다

SPOF

✔ 간단한 서비스의 구현

⚬ python으로 요청 받은 페이지의 OpenGraph를 추출해서 보여주는 서비스의 구현에 대한 소개

[실습]
- Design Document 작성 데모

✔ 지표 수집과 모니터링

⚬ 왜 모니터링을 해야 하는가에 대한 설명
⚬ 어떤 정보들을 모니터링 해야 하는지에 대한 설명
⚬ 간단한 모니터링을 통해서 알 수 있는 정보들에 대한 소개

[실습]
- 간단한 요청에 대한 정보들을 저장해서 수치화
- 표준적인 방법들에 대한 소개
* Prometheus 를 통한 정보 수집
* grafana 등을 이용해서 그래프로 보여주기

✔ 성능 테스트

⚬ ngrinder 에 대한 소개및 사용법
⚬ Stress Test를 할 때 알아야 할 부분들

[실습]
- ngrider 설치 후에 실제 해당 서비스 호출에 대한 부분을 소개
- gunicorn 을 통해서 프로세스 수를 늘리면서 바로 성능이 증가되는 부분 확인


| Part 2. 대규모 서비스 설계를 위한 백엔드 에센셜

대규모 서비스 개발을 위해서는 아주 여러가지 기술들이 들어가게 됩니다.
Service Discoveyr, Sharding, Caching, 비동기 작업등 여러가지 기술을 적절하게 조합하는 것이 성능 및 안정성을 높일 수 있습니다. 해당 기술들이 어떻게 동작하고, 이를 어떻게 사용해야 하는지를 배웁니다.

COMPLEXED

✔ 로드밸런싱

⚬ 로드밸런서
* Server Side 로드밸런서 / Client Side 로드밸런서

[실습]
- Nginx를 통한 방법
* 두 개의 Scrap 서버를 띄워놓고 Nginx를 통해서 Server Side 로드밸런싱 에뮬레이팅
- AWS에서 쓸 수 있는 ALB 소개
* 실제 AWS에서 ALB를 통한 Server Side 로드밸런싱

✔ 서비스 디스커버리

⚬ 서비스 디스커버리 개념
⚬ 서비스 디스커버리 툴

[실습]
- Zookeeper 설치 및 간단한 동작 소개
- Zookeeper 를 이용한 서비스 디스커버리 소개
* 자동으로 서비스 등록
* 장애시 자동으로 서비스 제거

✔ Circuit Breaker

⚬ Circuit Breaker의 개념 및 관련 구현 방식

[실습]
- Scrap 서버를 호출하는 간단한 서비스를 구현, Circuit Breaker 가 실행되어서 Scrap 서비스가 장애가 나면 빠르게 failback 을 통해서 실패하는 것 확인

✔ Failover

⚬ Failover 관련 내용
* Coordinator를 이용한 방식
* DNS를 이용한 방식
* VIP를 위한 방식


[실습]
- Redis 장애를 감지하고 자동으로 Coordinator를 통해서 해당 값을 변환해서 자동으로 Failover가 되는 것 확인

✔ Replication

⚬ Data Replication

[실습]
- Redis Primary Secondary 연결을 통해서 데이터가 복제되는 것 확인
- Query Off 에 대해서 소개
- DB는 AWS에서 제공되는 것에 대해서 설명
- DB관련 OnPremise에서 쓸 수 있는 MHA 방식에 대해서 간단히 소개

✔ 샤딩

⚬ 샤딩이란?
⚬ 샤딩에 대한 여러가지 방식및 실제 사례
⚬ 데이터에 따른 샤딩 예제
* 이메일 저장 방식에 대한 샤딩
* SNS 유저 데이터 저장에 대한 샤딩


[실습]
- 샤딩 방식에 따른 간단한 코드 구현
- Zookeeper 를 이용해서 자동으로 샤딩룰이 추가되는 부분 확인

✔ Consistent Hashing

⚬ Consistent Hashing 이론
⚬ Consistent Hashing에서 주의해야 할 부분


[실습]
- Python으로 consistent hashing 구현
- consistent hashing 코드를 이용해서 redis 에 키를 나누는 방식 실습

✔ GUID

⚬ GUID란?

[실습]
- GUID 서버의 구현
- 중복되지 않는 값이 나오는 것 확인

✔ 비동기 큐 사용

⚬ 실제 DB의 부담을 일정하게 유지해주는 비동기 큐를 이용한 방식

[실습]
- SideKiq을 설치해서 Redis 큐 확인
- 실제 작업은 비동기로 이뤄지는 것 확인

✔ 배포

⚬ blue green
⚬ canary
* canary 배포를 위해서 고민해야 할 부분들

[실습]
- blue green 을 on-premis 에서 구현
- blue green 을 aws에서 구현


| Part 3. 대규모 트래픽 처리를 위한 Redis

Redis 는 전세계에서 많이 사용하고 db-enginens.com 에서 Key-Value NoSQL분야 1위에 랭크되어 있는 솔루션입니다.
개발자가 편하게 쓸 수 있는 많은 자료구조를 가지고 있고, 굉장히 빠른 성능을 제공합니다. 사용하기 쉬고 빠른 성능을 내는 만큼 제대로 사용하기 위해서 레디스 사용시에 주의해야 할 부분들에 대해서 다룹니다.

✔ Redis 기본 자료구조

⚬ Redis 기본 자료구조를 소개
* String / List / Hash / set / Sorted set

[실습]
- 간단한 Redis 자료구조 소개

✔ Redis 를 어디에 쓸 수 있을까?

⚬ Redis 사용 예

[실습]
- Rate Limit

✔ Redis Monitoring Metrics

⚬ Redis 사용시에 모니터링해야 하는 지표들

[실습]
- 모니터링 지표들

✔ Redis 장애 처리

⚬ Redis 사용시에 흔히 발생하는 장애

✔ 여러 가지 발생할 수 있는 이슈들

⚬ Cache Stampede
⚬ Hot Key 이슈
⚬ Timeout 이슈


[실습]
- Hot Key 이슈에 대한 예와 Cache Stampede를 해결하는 코드

✔ 간단한 서비스 추상화 모습

⚬ 전체 서비스의 구성 모습


[실습]
- 전체 서비스의 모습


| Part 4. 어떻게 성장할 것인가?

✔ 어떻게 성장할 것인가?

⚬ 오픈소스를 통해서 개발자의 실력을 향상하는 방법
* 오픈소스에 접근하는 방식
* 개인적인 학습 방식 등

(자동) (자동) (자동)
정가 (자동)
현재 판매가 (자동)
12개월 무이자 할부 시 (자동)
그리고 한 걸음 더

강의에 대해 궁금하셨나요?
한 걸음 더 들어가봅니다.

수강료.

  • The RED : 백엔드 에센셜 : 대용량 서비스를 위한 아키텍처 with Redis by 강대명

    현재 정가 대비 50% 할인 중!
    10월 31일 일요일 자정 까지

    정가 499,000원
    현재 판매가 249,000원

    12개월 무이자 할부 시 월 20,750원

국내 9개 카드사 12개월 무이자 할부 지원! (간편 결제 제외)

  • 삼성카드
  • 신한카드
  • 롯데카드
  • 현대카드
  • 하나카드
  • BC카드
  • KB국민은행
  • 씨티카드
  • NH농협카드