SlideShare une entreprise Scribd logo
1  sur  76
Télécharger pour lire hors ligne
Contribution - 전쟁의 서막
Apache OpenWhisk 성능 개선
20%30%50%
컨트리뷰션 경험담 기술 이슈 운영
오늘 드릴 말씀은요
발표자 소개
@style95
style9595@gmail.com
dominic.kim@navercorp.com
Apache OpenWhisk?
Apache OpenWhisk 소개
오픈소스 Serverless 플랫폼
Apache OpenWhisk 소개
오픈소스 Serverless 플랫폼 Apache 프로젝트
Apache OpenWhisk 소개
오픈소스 Serverless 플랫폼 Apache 프로젝트
컨테이너 기반
Apache OpenWhisk 소개
오픈소스 Serverless 플랫폼 Apache 프로젝트
컨테이너 기반 Scala
Apache OpenWhisk 소개
IBM이 오픈소스화
Apache OpenWhisk 소개
총 44개 repo
• Core: Scala
• CLI: Go
• ETC: Lua, Python, …
• Ansible, Helm, Compose
Apache OpenWhisk 소개
Apache OpenWhisk 소개
Apache OpenWhisk 소개
https://landscape.cncf.io/sort=stars
Apache OpenWhisk 소개
다양한 런타임 지원
Apache OpenWhisk 소개
다양한 런타임 지원 다양한 Cloud 상에서 동작
Apache OpenWhisk 소개
다양한 런타임 지원
Function chaining 가능
다양한 Cloud 상에서 동작
Apache OpenWhisk 소개
다양한 런타임 지원
Function chaining 가능 이벤트에 반응하여 실행
다양한 Cloud 상에서 동작
Apache OpenWhisk 소개
• Nginx: SSL termination
• Controller: Rest API + Scheduling
• CouchDB: Function 및 실행 결과 저장
• Kafka: Request 포워딩
• Invoker: 컨테이너 구동 및 Function 실행
OpenWhisk Core repo
OpenWhisk CLI Serverless OpenWhisk
Merged: 34
Open: 6
Contribution
컨트리뷰션의 시작
2017년 1월 11일 시작
하지만 실제로 열어보니..
2017년 7월 28일 최종 머지
https://github.com/apache/incubator-openwhisk/pull/1790
TL님의 홍보(?)
6개월 만에 머지
여기서 잠깐!
뭐가 문제인가?
Host에서 컨테이너 IP로 직접 접근 필요
Host(10.10.10.10)
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
ContainerC
(172.17.0.4)
Test process
172.17.0.2:8080
리눅스 기반의 Docker 네트워크 구조
docker0 인터페이스가 컨테이너들의 Gateway 역할
Host(10.10.10.10)
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
ContainerC
(172.17.0.4)
Eth0: 10.10.10.10
docker0: 172.17.0.1
리눅스 기반의 Docker 네트워크 구조
$ ifconfig
docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 0.0.0.0
ether 02:42:4a:06:2c:db txqueuelen 0 (Ethernet)
RX packets 1600061407 bytes 757851585498 (705.8 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2662761605 bytes 240562713498 (224.0 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
.
.
.
리눅스 기반의 Docker 네트워크 구조
# route –n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.106.100.1 0.0.0.0 UG 0 0 0 eth1
10.106.100.0 0.0.0.0 255.255.254.0 U 0 0 0 eth1
169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth1
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
bash-4.4# route –n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.17.0.1 0.0.0.0 UG 0 0 0 eth0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
[호스트 머신]
[컨테이너 내부]
리눅스에서의 구조
Host(10.10.10.10)
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
ContainerC
(172.17.0.4)
Test process
172.17.0.2:8080
docker0: 172.17.0.1
Host(10.10.10.10)
VM(virtualbox) network(192.168.0.0/8)
맥 OS(Docker-machine) 에서의 구조
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
ContainerC
(172.17.0.4)
Test process
172.17.0.2:8080
docker0: 172.17.0.1
192.168.99.10
Docker-machine 예제
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.187:2376 v1.9.1
$ env | grep DOCKER
DOCKER_HOST=tcp://192.168.99.187:2376
DOCKER_MACHINE_NAME=default
DOCKER_TLS_VERIFY=1
DOCKER_CERT_PATH=/Users/<your_username>/.docker/machine/machines/default
Host(10.10.10.10)
VM(xhyve) network
Docker for Mac
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
ContainerC
(172.17.0.4)
Process
docker ps
Forward
Host(10.10.10.10)
VM(xhyve) network
맥 OS(Docker for Mac) 에서의 구조
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
ContainerC
(172.17.0.4)
Test Process
172.17.0.2:8080
docker0: 172.17.0.1
Host(10.10.10.10)
VM(xhyve) network
맥 OS(Docker for Mac) 에서의 구조
Docker network(172.17.0.0/16)
ContainerA
(172.17.0.2)
ContainerB
(172.17.0.3)
Squid-proxy
(172.17.0.4)
Test Process
Proxy configuration
localhost:3128
3128 port
8080 port
172.17.0.2:8080
Akka-http client는 proxy를 지원하지않음
Play-ws client 적용
신선하고 재미있다!
그래서 뭘 했는데?
Contribution 포인트
•Production
• 성능
• Failover
• 모니터링
• 기능
CouchDB 이슈
• 데이터 삭제가 되지 않음
• 잦은 Crash
• High bulk Insertion때 Crash
• Indexing으로 인한 Crash
CouchDB의 삭제 = 업데이트
Rev-1 Rev-2
Update
여러 버전의 Rev을 유지하고 있음
Rev을 통해 여러 노드간의 Conflict를 해결
CouchDB의 삭제 = 업데이트
Rev-1 Rev-2
Update
Rev-1
Rev-2
(_deleted)
Delete
문서 내용은 삭제되지만
Tombstone은 지워지지 않음
여러 버전의 Rev을 유지하고 있음
Rev을 통해 여러 노드간의 Conflict를 해결
CouchDB의 삭제 = 업데이트
초기 상태
CouchDB의 삭제 = 업데이트
초기 상태 데이터 삽입
CouchDB의 삭제 = 업데이트
초기 상태 데이터 삽입
데이터 삭제
CouchDB의 삭제 = 업데이트
초기 상태 데이터 삽입
데이터 삭제 Compaction 수행
CouchDB 성능 이슈
CouchDB 1.x -> CouchDB 2.x
CouchDB
1.x
CouchDB
1.x
CouchDB
1.x
Standalone node
ReplicationReplication
CouchDB
2.x
CouchDB
2.x
CouchDB
2.x
Consistent Hashing
Clustering
ShardingReplication
Cloudant(IBM)사에서 집중적으로 Contribution
Bulk insertion issue
CouchDB
2.x
CouchDB
2.x
CouchDB
2.x
Client
1. 500 docs / request
3. Replication
2. Indexing
3. Replication
4. Indexing
4. Indexing
Bulk insertion issue
메모리 상에 적용되지 않은 변경들이 쌓이기 시작
CouchDB 성능 이슈
1. Pending_changes가 계속 증가하면서
메모리를 소진
2. 메모리가 100% 달하면
CouchDB 노드가 Crash되고 재시작됨
40 Cores, 128 GB Memory, 2TB SSD
CouchDB 성능 이슈
처리되지 못한 데이터의 유실
불안정한 클러스터
불안정한 TPS
MongoDB로 변경
https://github.com/apache/incubator-openwhisk/pull/3570
ElasticSearch Activation Store
https://github.com/apache/incubator-openwhisk/pull/3977
ElasticSearch Activation Store
Metric 전송
• JVM 애플리케이션을 위한 모니터링 툴
• Metrics, Tracing, 등의 기능 제공
• Scala에서 활용하기 좋음
Tag를 이용한 Aggregation 지원
신규 스케쥴링 알고리즘 공유
https://www.youtube.com/watch?v=cgictUeK-Vk&feature=youtu.be
Bi-weekly Meeting
- 커뮤니티 멤버들끼리 모여서 이슈나 신규 기술 등을 공유하는 자리
- 누구나 참석 가능
- 밤 12시에 시작됨
신규 스케쥴링 알고리즘 공유
https://www.youtube.com/watch?v=cgictUeK-Vk&feature=youtu.be
현재 스케쥴링 로직 분석
성능 이슈 분석
신규 알고리즘 제안
Proto-typing 및 성능 비교 벤치마크
https://cwiki.apache.org/confluence/display/OPENWHISK/Autonomous+Container+Scheduling
Docker 데몬의 성능 이슈
OpenWhiskClient
Docker
Daemon
.
.
.
Function 실행 Docker API
컨테이너 생성/삭제
컨테이너 정지/재시작
Docker 데몬의 성능 이슈
액션 실행 결과
Docker 생성/삭제 API 성능
Docker 정지/재개 API 성능
Docker 데몬의 성능 이슈
OpenWhiskClient
Docker
Daemon
.
.
.
Function 실행 Docker API
5~10ms
500~700ms
컨테이너 생성/삭제
컨테이너 정지/재시작
100~200ms
Docker 데몬의 성능 이슈
OpenWhiskClient
Docker
Daemon
.
.
.
Function 실행 Docker API
5~10ms
500~700ms
컨테이너 생성/삭제
컨테이너 정지/재시작
100~200ms
bottleneck
Docker 데몬의 성능 이슈
• Docker API의 처리속도가 느림
• 잦은 API 호출 및 동시 호출 (X)
• Docker API 호출 최소화가 관건
오픈소스 프로젝트의 매력
• 누구에게나 평등한 기회
• 장소와 시간에 구애 받지 않음
• 코드로만 표현되고 평가받음
느낀점
• 다이나믹한 개발 경험
• 전 세계의 개발자들과 함께 커뮤니케이션
• 영국, 독일, 미국 등 다양한 나라의 개발자들과 화상회의
• Apache 프로젝트에 내 코드가 들어가는 경험
• 장소에 구애 받지 않을 수 있음
• 다양한 외부 발표 기회
Thank You!
Q & A

Contenu connexe

Tendances

게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
Amazon Web Services Korea
 

Tendances (20)

Kubernetes CI/CD with Helm
Kubernetes CI/CD with HelmKubernetes CI/CD with Helm
Kubernetes CI/CD with Helm
 
ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021
ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021
ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021
 
Ansible
AnsibleAnsible
Ansible
 
Automating with Ansible
Automating with AnsibleAutomating with Ansible
Automating with Ansible
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
Rancher and Kubernetes Best Practices
Rancher and  Kubernetes Best PracticesRancher and  Kubernetes Best Practices
Rancher and Kubernetes Best Practices
 
Red Hat OpenShift on Bare Metal and Containerized Storage
Red Hat OpenShift on Bare Metal and Containerized StorageRed Hat OpenShift on Bare Metal and Containerized Storage
Red Hat OpenShift on Bare Metal and Containerized Storage
 
OpenShift Introduction
OpenShift IntroductionOpenShift Introduction
OpenShift Introduction
 
nexus helm 설치, docker/helm repo 설정과 예제
nexus helm 설치, docker/helm repo 설정과 예제nexus helm 설치, docker/helm repo 설정과 예제
nexus helm 설치, docker/helm repo 설정과 예제
 
Ansible
AnsibleAnsible
Ansible
 
infrastructure as code
infrastructure as codeinfrastructure as code
infrastructure as code
 
Amazon Aurora Deep Dive (김기완) - AWS DB Day
Amazon Aurora Deep Dive (김기완) - AWS DB DayAmazon Aurora Deep Dive (김기완) - AWS DB Day
Amazon Aurora Deep Dive (김기완) - AWS DB Day
 
Prometheus – a next-gen Monitoring System
Prometheus – a next-gen Monitoring SystemPrometheus – a next-gen Monitoring System
Prometheus – a next-gen Monitoring System
 
Understanding container security
Understanding container securityUnderstanding container security
Understanding container security
 
Introduction to Kubernetes Workshop
Introduction to Kubernetes WorkshopIntroduction to Kubernetes Workshop
Introduction to Kubernetes Workshop
 
Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성 Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성
 
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
 
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
 
Elastic Kubernetes Services (EKS)
Elastic Kubernetes Services (EKS)Elastic Kubernetes Services (EKS)
Elastic Kubernetes Services (EKS)
 
Red Hat Ansible 적용 사례
Red Hat Ansible 적용 사례Red Hat Ansible 적용 사례
Red Hat Ansible 적용 사례
 

Similaire à [네이버오픈소스세미나] Contribution, 전쟁의 서막 : Apache OpenWhisk 성능 개선 - 김동경

JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
Ted Won
 

Similaire à [네이버오픈소스세미나] Contribution, 전쟁의 서막 : Apache OpenWhisk 성능 개선 - 김동경 (20)

[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
 
Docker osc 0508
Docker osc 0508Docker osc 0508
Docker osc 0508
 
[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community
 
[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래
 
Node.js 20버전에 변경된 점들.pdf
Node.js 20버전에 변경된 점들.pdfNode.js 20버전에 변경된 점들.pdf
Node.js 20버전에 변경된 점들.pdf
 
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
 
빠르게훓어보는 Node.js와 Vert.x
빠르게훓어보는 Node.js와 Vert.x빠르게훓어보는 Node.js와 Vert.x
빠르게훓어보는 Node.js와 Vert.x
 
Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호
 
An overview of kubernetes & (very) simple live demo
An overview of kubernetes & (very) simple live demoAn overview of kubernetes & (very) simple live demo
An overview of kubernetes & (very) simple live demo
 
SOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AISOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AI
 
[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)
 
[TeamStudy-022] Docker
[TeamStudy-022] Docker[TeamStudy-022] Docker
[TeamStudy-022] Docker
 
클라우드의 대세 쿠버네티스란 무엇인가?(윤성훈 클라우드 솔루션 아키텍트) - Webinar
클라우드의 대세 쿠버네티스란 무엇인가?(윤성훈 클라우드 솔루션 아키텍트) - Webinar클라우드의 대세 쿠버네티스란 무엇인가?(윤성훈 클라우드 솔루션 아키텍트) - Webinar
클라우드의 대세 쿠버네티스란 무엇인가?(윤성훈 클라우드 솔루션 아키텍트) - Webinar
 
2020년 10월 24일 개발자 이야기
2020년 10월 24일 개발자 이야기2020년 10월 24일 개발자 이야기
2020년 10월 24일 개발자 이야기
 
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
 
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
 
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
Hancom MDS Conference - KAKAO DEVOPS Practice (카카오 스토리의 Devops 사례)
 
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
[개방형 클라우드 플랫폼 오픈세미나 오픈클라우드 Pub] 3.open shift 분석
 
Kubernetes on Premise
Kubernetes on PremiseKubernetes on Premise
Kubernetes on Premise
 
[Partner TechShift 2017] 클라우드 시대 기존 Legacy에서 벗어나는 방법
[Partner TechShift 2017] 클라우드 시대 기존 Legacy에서 벗어나는 방법[Partner TechShift 2017] 클라우드 시대 기존 Legacy에서 벗어나는 방법
[Partner TechShift 2017] 클라우드 시대 기존 Legacy에서 벗어나는 방법
 

Plus de NAVER Engineering

Plus de NAVER Engineering (20)

React vac pattern
React vac patternReact vac pattern
React vac pattern
 
디자인 시스템에 직방 ZUIX
디자인 시스템에 직방 ZUIX디자인 시스템에 직방 ZUIX
디자인 시스템에 직방 ZUIX
 
진화하는 디자인 시스템(걸음마 편)
진화하는 디자인 시스템(걸음마 편)진화하는 디자인 시스템(걸음마 편)
진화하는 디자인 시스템(걸음마 편)
 
서비스 운영을 위한 디자인시스템 프로젝트
서비스 운영을 위한 디자인시스템 프로젝트서비스 운영을 위한 디자인시스템 프로젝트
서비스 운영을 위한 디자인시스템 프로젝트
 
BPL(Banksalad Product Language) 무야호
BPL(Banksalad Product Language) 무야호BPL(Banksalad Product Language) 무야호
BPL(Banksalad Product Language) 무야호
 
이번 생에 디자인 시스템은 처음이라
이번 생에 디자인 시스템은 처음이라이번 생에 디자인 시스템은 처음이라
이번 생에 디자인 시스템은 처음이라
 
날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기날고 있는 여러 비행기 넘나 들며 정비하기
날고 있는 여러 비행기 넘나 들며 정비하기
 
쏘카프레임 구축 배경과 과정
 쏘카프레임 구축 배경과 과정 쏘카프레임 구축 배경과 과정
쏘카프레임 구축 배경과 과정
 
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
플랫폼 디자이너 없이 디자인 시스템을 구축하는 프로덕트 디자이너의 우당탕탕 고통 연대기
 
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
200820 NAVER TECH CONCERT 15_Code Review is Horse(코드리뷰는 말이야)(feat.Latte)
 
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
200819 NAVER TECH CONCERT 03_화려한 코루틴이 내 앱을 감싸네! 코루틴으로 작성해보는 깔끔한 비동기 코드
 
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
200819 NAVER TECH CONCERT 10_맥북에서도 아이맥프로에서 빌드하는 것처럼 빌드 속도 빠르게 하기
 
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
200819 NAVER TECH CONCERT 08_성능을 고민하는 슬기로운 개발자 생활
 
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
200819 NAVER TECH CONCERT 05_모르면 손해보는 Android 디버깅/분석 꿀팁 대방출
 
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
200819 NAVER TECH CONCERT 09_Case.xcodeproj - 좋은 동료로 거듭나기 위한 노하우
 
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
200820 NAVER TECH CONCERT 14_야 너두 할 수 있어. 비전공자, COBOL 개발자를 거쳐 네이버에서 FE 개발하게 된...
 
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
200820 NAVER TECH CONCERT 13_네이버에서 오픈 소스 개발을 통해 성장하는 방법
 
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
200820 NAVER TECH CONCERT 12_상반기 네이버 인턴을 돌아보며
 
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
200820 NAVER TECH CONCERT 11_빠르게 성장하는 슈퍼루키로 거듭나기
 
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
 

Dernier

Dernier (8)

JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
 

[네이버오픈소스세미나] Contribution, 전쟁의 서막 : Apache OpenWhisk 성능 개선 - 김동경