Database server adalah sebuah perangkat lunak komputer yang digunakan untuk menyediakan jenis layanan database untuk sistem lain
Web server merupakan software yang memberikan layanan data yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman - halaman web yang umumnya berbentuk dokumen HTML
This presentation describes web technology on the basis of product, price, place and promotion. It also describes the features and advantages of web applications. It explains client-server model , Internet protocols, different IP address and difference between internet , extranet and intranet.
Most companies in China use WeChat for some, or all, of their internal communication. WeChat at Work is a free upgrade for better controls, more privacy/security, and useful business tools.
Database server adalah sebuah perangkat lunak komputer yang digunakan untuk menyediakan jenis layanan database untuk sistem lain
Web server merupakan software yang memberikan layanan data yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman - halaman web yang umumnya berbentuk dokumen HTML
This presentation describes web technology on the basis of product, price, place and promotion. It also describes the features and advantages of web applications. It explains client-server model , Internet protocols, different IP address and difference between internet , extranet and intranet.
Most companies in China use WeChat for some, or all, of their internal communication. WeChat at Work is a free upgrade for better controls, more privacy/security, and useful business tools.
Huong dan su dung svn server (SVN subversion - SVN Hosting)Văn Nguyễn Trung
SVN SUBVERSION GIẢI QUYẾT ĐƯỢC VẤN ĐỀ GÌ?
Subversion là gì ?
Subversion (viết tắt SVN) là một hệ thống quản lý version (version control system - VCS) được giới thiệu vào năm 2000 bởi công ty CollabNet (http://subversion.tigris.org). Đây là hệ thống hỗ trợ làm việc theo nhóm rất hiệu quả.
Phần mềm:
Cho client: TortoiseSVN, Download:http://tortoisesvn.net/
Cho server: VisualSVN – Server Download: http://tortoisesvn.net/downloads.html
Các site cung cấp dịch vụ:
http://hostingviet.vn
http://code.google.com
http://sourceforge.net
SVN Subversion giải quyết được vấn đề gì?
Khi một nhóm làm việc trên cùng một project, việc nhiều người cùng chỉnh sửa nội dung của một file là điều không thể tránh khỏi. SVN Subversion cung cấp các chức năng để có thể thực hiện việc này một cách đơn giản và an toàn.
SVN Subversion được thiết kế với mục đích thay thế hệ thống quản lý phiên bản Concurrent Versioning System (CVS) đã cũ và có nhiều nhược điểm. Subversion có thể được sử dụng để quản lý bất cứ hệ thống phiên bản nào.
SVN Subversion là hệ thống quản lý source code tập trung (Centralized).
SVN Subversion là hệ thống quản lý phiên bản mạnh mẽ, hữu dụng, và linh hoạt.
SVN Subversion quản lý tập tin và thư mục theo thời gian.
SVN Subversion giống như một hệ thống file server mà các client có thể download và upload file một cách bình thường.
Điểm đặt biệt của SVN Subversion là nó lưu lại tất cả những gì thay đổi trên hệ thống file: file nào đã bị thay đổi lúc nào, thay đổi như thế nào, và ai đã thay đổi nó.
SVN Subversion cũng cho phép recover lại những version cũ một cách chính xác. Các chức năng này giúp cho việc làm việc nhóm trở nên hiệu quả và an toàn hơn rất nhiều.
Thông thường, client và server kết nối thông qua mạng LAN hoặc Internet. Client và server có thể cùng chạy trên một máy nếu SVN Subversion có nhiệm vụ theo vết lịch sử của dự án do các nhà phát triển phần mềm phát triển trong nội bộ.
SVN Subversion hỗ trợ khá nhiều giao thức để kết nối giữa client và server.
Ví dụ bạn có thể dùng các giao thức của ứng dụng web như http:// hoặc https://, hay các giao thức của svn như svn:// hoặc svn+ssh://, hoặc nếu phần mềm client và server cài chung trên 1 máy thì có thể dùng file://.
Việc cho phép server hỗ trợ giao thức nào phụ thuộc vào lúc cấu hình.
Cài đặt SVN Subversion (Client): tool dùng trên Client
Cài đặt VisualSVN(Server): tool dùng cho Server
Chi tiết cài đ
Control Your Network ASICs, What Benefits switchdev Can Bring UsHungWei Chiu
In this slide, I will introduce what is switchdev and what problem it wants to solve. To this day, most of the hardware switch's application-specific integrated circuit (ASIC) only be controlled by the vendor's proprietary binary (SDK) and it's inconvenient for system administrator/developer. In order to break the chip vendor's lock-in situation, the switchdev had been designed to solve this. With the help of switchdev, we can develop a general solution for hardware switch chips and break the connection with vendor's binary-blob (SDK).
In order words. Linux kernel can directly communicate with the vendor's proprietary ASIC now, and the software programmer/system administrator can easily control that ASIC to provide more flexible, powerful and programmable network function.
[2017년 SW 마에스트로 100+ 컨퍼런스]
- 발표자: 오픈스택 한국 커뮤니티 조성수
- 행사 정보: https://www.facebook.com/swmaestro/photos/a.816861878341341.1073741828.812223648805164/1832957773398408/?type=3&theater&ifg=1
서로 다른 애플리케이션의 중개자 역할을 하는 API가져온 API Economy의 정의를 살펴보고 API Economy 성공 기업들을 소개합니다 | Explore API Economy, which acts as a broker for different applications, and introduce API Economy successful companies.
2005년 구글맵으로 부터 시작된 웹 기반 지도 API 서비스는 웹 2.0의 데이터 플랫폼 서비스의 주요 사례로 떠올랐다. 그 이후 야후!, 마이크로소프트 등에서 지도 플랫폼 서비스와 API 제공이 잇달았으며, 국내에서도 다음이 최초로 항공 사진(스카이뷰)과 거리 사진(로드뷰)을 제공하고 네이버도 참여함으로서 로컬 기반 서비스의 폭발적 성장의 견인차 역할을 하였다. 노키아의 Here 및 오픈스트릿맵 등 제 3의 사업자 및 협업 기반 플랫폼이 성장하였으며, Open Layer 라이브러리 및 Open GIS 등 다양한 공개 소프트웨어 들도 함께 성장하였다.
특히, 스마트폰의 보급과 아울러 모바일용 지도 SDK를 적극 보급 및 지원하는 추세로 기존의 Ajax 기반의 이미지 기반 웹 지도 표현 기술은 WebGL 혹은 Canvas를 통해 3차원 기술을 도입하면서 웹 호환성 및 성능을 동시에 높히고 있다. 구글 스케치업을 통해 시작된 공간 3차원 서비스는 약간 주춤하지만 45도 이미지너리 및 DEM 기반 데이터는 계속 추가되고 있다.
최근에는 구글맵 엔진 서비스와 같은 전문 사용자의 참여를 이끌어 내어 클라우드 소싱 형태의 지도 데이터 생성 커뮤니티를 통해 저개발 국가 및 북한과 같은 미공개 지도 데이터 생산을 만들고 있다.
2011년부터 구글 부터 지도 API 서비스 유료화를 단행하여 보안 강화 및 품질 및 성능 향상을 통해 제 3자 재판매를 통한 사업을 진행하고 있다. 또한, 최근 많은 기업들이 글로벌 홈페이지에 자사의 위치나 고객센터를 이용자들이 찾는데 활용하고 있으며, 이를 활용해 물류•관제•입지분석•위험관리•마케팅 등에 활용하고 있다.
현재 글로벌 지도 API 플랫폼은 단순히 베이스맵을 지원하는데 그치지 않고 공간 정보를 시각화 및 표현하는데 필요한 다양한 기능을 제공하면서, 정보 전달 역할을 강화하고 있다. 또한, Mapbox 등 지도 타일의 다양한 스타일과 테마 기능을 통해 좀 더 미려한 지도를 제공하기도 한다.
향후 글로벌 지도 API 플랫폼은 단보다 고도화된 시스템을 활용해 데이터 분석 및 2차원 시각화 그리고 3차원 공간 정보 활용으로 진화하고 있다.
Huong dan su dung svn server (SVN subversion - SVN Hosting)Văn Nguyễn Trung
SVN SUBVERSION GIẢI QUYẾT ĐƯỢC VẤN ĐỀ GÌ?
Subversion là gì ?
Subversion (viết tắt SVN) là một hệ thống quản lý version (version control system - VCS) được giới thiệu vào năm 2000 bởi công ty CollabNet (http://subversion.tigris.org). Đây là hệ thống hỗ trợ làm việc theo nhóm rất hiệu quả.
Phần mềm:
Cho client: TortoiseSVN, Download:http://tortoisesvn.net/
Cho server: VisualSVN – Server Download: http://tortoisesvn.net/downloads.html
Các site cung cấp dịch vụ:
http://hostingviet.vn
http://code.google.com
http://sourceforge.net
SVN Subversion giải quyết được vấn đề gì?
Khi một nhóm làm việc trên cùng một project, việc nhiều người cùng chỉnh sửa nội dung của một file là điều không thể tránh khỏi. SVN Subversion cung cấp các chức năng để có thể thực hiện việc này một cách đơn giản và an toàn.
SVN Subversion được thiết kế với mục đích thay thế hệ thống quản lý phiên bản Concurrent Versioning System (CVS) đã cũ và có nhiều nhược điểm. Subversion có thể được sử dụng để quản lý bất cứ hệ thống phiên bản nào.
SVN Subversion là hệ thống quản lý source code tập trung (Centralized).
SVN Subversion là hệ thống quản lý phiên bản mạnh mẽ, hữu dụng, và linh hoạt.
SVN Subversion quản lý tập tin và thư mục theo thời gian.
SVN Subversion giống như một hệ thống file server mà các client có thể download và upload file một cách bình thường.
Điểm đặt biệt của SVN Subversion là nó lưu lại tất cả những gì thay đổi trên hệ thống file: file nào đã bị thay đổi lúc nào, thay đổi như thế nào, và ai đã thay đổi nó.
SVN Subversion cũng cho phép recover lại những version cũ một cách chính xác. Các chức năng này giúp cho việc làm việc nhóm trở nên hiệu quả và an toàn hơn rất nhiều.
Thông thường, client và server kết nối thông qua mạng LAN hoặc Internet. Client và server có thể cùng chạy trên một máy nếu SVN Subversion có nhiệm vụ theo vết lịch sử của dự án do các nhà phát triển phần mềm phát triển trong nội bộ.
SVN Subversion hỗ trợ khá nhiều giao thức để kết nối giữa client và server.
Ví dụ bạn có thể dùng các giao thức của ứng dụng web như http:// hoặc https://, hay các giao thức của svn như svn:// hoặc svn+ssh://, hoặc nếu phần mềm client và server cài chung trên 1 máy thì có thể dùng file://.
Việc cho phép server hỗ trợ giao thức nào phụ thuộc vào lúc cấu hình.
Cài đặt SVN Subversion (Client): tool dùng trên Client
Cài đặt VisualSVN(Server): tool dùng cho Server
Chi tiết cài đ
Control Your Network ASICs, What Benefits switchdev Can Bring UsHungWei Chiu
In this slide, I will introduce what is switchdev and what problem it wants to solve. To this day, most of the hardware switch's application-specific integrated circuit (ASIC) only be controlled by the vendor's proprietary binary (SDK) and it's inconvenient for system administrator/developer. In order to break the chip vendor's lock-in situation, the switchdev had been designed to solve this. With the help of switchdev, we can develop a general solution for hardware switch chips and break the connection with vendor's binary-blob (SDK).
In order words. Linux kernel can directly communicate with the vendor's proprietary ASIC now, and the software programmer/system administrator can easily control that ASIC to provide more flexible, powerful and programmable network function.
[2017년 SW 마에스트로 100+ 컨퍼런스]
- 발표자: 오픈스택 한국 커뮤니티 조성수
- 행사 정보: https://www.facebook.com/swmaestro/photos/a.816861878341341.1073741828.812223648805164/1832957773398408/?type=3&theater&ifg=1
서로 다른 애플리케이션의 중개자 역할을 하는 API가져온 API Economy의 정의를 살펴보고 API Economy 성공 기업들을 소개합니다 | Explore API Economy, which acts as a broker for different applications, and introduce API Economy successful companies.
2005년 구글맵으로 부터 시작된 웹 기반 지도 API 서비스는 웹 2.0의 데이터 플랫폼 서비스의 주요 사례로 떠올랐다. 그 이후 야후!, 마이크로소프트 등에서 지도 플랫폼 서비스와 API 제공이 잇달았으며, 국내에서도 다음이 최초로 항공 사진(스카이뷰)과 거리 사진(로드뷰)을 제공하고 네이버도 참여함으로서 로컬 기반 서비스의 폭발적 성장의 견인차 역할을 하였다. 노키아의 Here 및 오픈스트릿맵 등 제 3의 사업자 및 협업 기반 플랫폼이 성장하였으며, Open Layer 라이브러리 및 Open GIS 등 다양한 공개 소프트웨어 들도 함께 성장하였다.
특히, 스마트폰의 보급과 아울러 모바일용 지도 SDK를 적극 보급 및 지원하는 추세로 기존의 Ajax 기반의 이미지 기반 웹 지도 표현 기술은 WebGL 혹은 Canvas를 통해 3차원 기술을 도입하면서 웹 호환성 및 성능을 동시에 높히고 있다. 구글 스케치업을 통해 시작된 공간 3차원 서비스는 약간 주춤하지만 45도 이미지너리 및 DEM 기반 데이터는 계속 추가되고 있다.
최근에는 구글맵 엔진 서비스와 같은 전문 사용자의 참여를 이끌어 내어 클라우드 소싱 형태의 지도 데이터 생성 커뮤니티를 통해 저개발 국가 및 북한과 같은 미공개 지도 데이터 생산을 만들고 있다.
2011년부터 구글 부터 지도 API 서비스 유료화를 단행하여 보안 강화 및 품질 및 성능 향상을 통해 제 3자 재판매를 통한 사업을 진행하고 있다. 또한, 최근 많은 기업들이 글로벌 홈페이지에 자사의 위치나 고객센터를 이용자들이 찾는데 활용하고 있으며, 이를 활용해 물류•관제•입지분석•위험관리•마케팅 등에 활용하고 있다.
현재 글로벌 지도 API 플랫폼은 단순히 베이스맵을 지원하는데 그치지 않고 공간 정보를 시각화 및 표현하는데 필요한 다양한 기능을 제공하면서, 정보 전달 역할을 강화하고 있다. 또한, Mapbox 등 지도 타일의 다양한 스타일과 테마 기능을 통해 좀 더 미려한 지도를 제공하기도 한다.
향후 글로벌 지도 API 플랫폼은 단보다 고도화된 시스템을 활용해 데이터 분석 및 2차원 시각화 그리고 3차원 공간 정보 활용으로 진화하고 있다.
KB금융지주의 클라우드 혁신 사례 – 협업플랫폼 Clayon
고종원 매니저, AWS
박형주 부장, KB금융지주
디지털 혁신은 이제 금융사의 비즈니스 전략의 핵심 요소입니다. 특히 핀테크 스타트업 및 비금융사와의의 협업을 통해 새로운 비즈니스 모델을 창출하는 시도가 다양하게 이루어 지고 있습니다. 이러한 새로운 시도에는 유연하고 개방적인 클라우드 플랫폼 기반의 기술이 필수적입니다. KB금융지주의 CLAYON 구축과 운영 과정을 통해 협업과 실험 플랫품의 사례를 소개합니다.
AManaging Kong API Gateway with TerraformByungjin Park
2018년 10월 23일 진행된 하시코프 한국 사용자 모임 두 번째 밋업 발표 자료 입니다.
# Terraform으로 Kong API Gateway 관리하기
박병진, Site Reliability Engineer @ Kasa
Abstract:
Kong은 Nginx와 Lua를 기반으로 하는 오픈소스 API Gateway입니다. 본 세션에서는 API Gateway가 무엇인지, Kong을 선택한 이유와 사용 방법, Terraform을 이용하여 Kong을 관리한 경험을 공유합니다.
Effective Unit Testing (케일)
- remarkjs로 작성후 브라우저로 pdf 인쇄
기본적으로 Effective Unit Testing을 바탕으로 내용을 만들었고, 좀더 공유하고 싶은 내용에 살을 붙였음.
예제 코드는 책에 없는건 직접 만들어 봤으나 의미가 잘 전달되지 않을수는 있다고 생각함.
깨끗한 테스트 원칙은 '클린코드' 책에 나오는 내용임.
개발자로서 기술적인 고민도 많지만 내가 지금 잘하고 있는지 그리고 앞으로 어떻게 해나가야 하는지 고민 역시 비중이 큰 거 같습니다.
그러나 이에 대한 답을 찾기란 늘 쉽지 않은데요. 이런 주제를 담고 있는 책인 "프로그래머로 사는 법"
이 책의 내용을 토대로 개발자로서 앞으로 어떻게 나가야 할지 같이 토론해 보는 시간을 가져보려 합니다.
그렇다고 책 내용만으로 한정짓지는 않고 관련 주제에 대해 제가 갖고 있는 자료들을 취합하여 모아 정리해 보았습니다.
이 자료는 이런 자료들의 일부를 편집하여 만들어졌습니다. (프로그래머로 사는법, CODE COMPLETE, 김창준님의 애자일 이야기 블로그)
사내 세미나 - 그루비 소개 발표자료
(2013. 11. 12)
최근에 파이썬 및 장고 프레임워크를 배워 간단한 웹 사이트를 구축한 이후, 우연히 그루비를 알게 되었고 자바의 모든 라이브러리 및 기능을 그대로 사용 할 수 있고, 자바 개발자의 경우 학습 비용도 거의 들지 않는다고 하여, 그루비에 대해 알아보게 되었다.
(파이썬의 경우 간결하고 깔끔한 코드에 감탄했지만, 새로운 언어를 사용하는 터라 기존의 자바 개발경험을 이용할 수 없었던 문제는 간단한 기능을 구현하는데에도 많이 답답하였다)
그리고 그렇게 알게 된 자료를 토대로 사내 세미나 발표자료를 만들어 보았다.
Ajax 기술 문서(작성자 : 김연수)
(첫 회사에 입사하여 만든 사내 배포용 기술 문서)
Ajax In Action 도서를 참고하며 자료를 만들었으며, 이 자료를 만들면서 AJAX에 대한 많은 이해를 하게 됐던 거 같다.
작성일자는 잘못된 것이고, 2007년에 만들고 발표한 것으로 추정된다.
2. Contents Table
Ⅰ. Open API 소개
Ⅲ. Open API 활용
1. Open API란?
1. Open API의 활용 사례(매쉬업 서비
스)
2. Open API 서비스 사례
3. 웹 서비스 주요 업체들이 Open API
를 지원하는 이유
Ⅱ. Open API 기술
1. 웹 서비스
2. Open API의 대표적 웹 서비스 방식 :
SOAP vs REST
3. Open API의 대표적 데이터 형식 :
XML vs JSON
4. Open API의 표준 인증 방식 : OAuth
2
3. Ⅰ. Open API 소개
1. Open API란?
2. Open API 서비스 사례
3. 웹 서비스 주요 업체들이 Open API를 지원하는 이유
3
4. 1. Open API란?
I. Open API 소개
Open API란?
Open API는 서비스, 정보, 데이터 등 언제, 어디서나 누구나 쉽게 이용할 수 있도록 개방된 API를 의미 한
다. 또한, 통신망의 구조 및 기술에 독립적으로 새로운 응용 서비스를 쉽게 개발할 수 있도록 한다.
Open API는 데이터를 제어할 수 있는 간단하고 직관적인 인터페이스의 제공을 통해 사용자의 참여를 유
도하는 사용자 중심의 비즈니스 모델이다.
Open API의 장점이자 목적
4
5. 1. Open API란?
웹 서비스 연동방식의 장점
I. Open API 소개
Open API 같은 웹을 통한 연동 방식을 웹 서비스라 부른다.
방화벽 문제를 회피한다
• Open API 웹 서비스를 제외한 다른 연동 프로토콜은 대부분 방화벽 문제를
야기한다(대부분의 서버들이 웹 포트 방화벽은 열게 된다)
웹 서버로 해결이 가능하다
• 웹 서버 하나만 있으면 서비스가 가능해 복잡한 환경 구성이 필요 없다(대부
분의 서버에는 웹 서버가 구축됨
HTTP 프로토콜 이용
• 클라이언트 서버처럼 Tight Couple 된 관계가 아니라서, HTTP 에서는 컨텐
츠 협상을 통해, 헤더, MimeType등의 HTTP 프로토콜의 특성을 그대로 이용
할 수 있다.
5
6. 2. Open API 서비스 사례
I. Open API 소개
Open API 서비스 사례
6
7. 2. Open API 서비스 사례
I. Open API 소개
Open API 서비스 사례
카테고리별 Open API 점유율
7
8. 3. 웹 서비스 주요 업체들이 Open API를 지원하는 이유
I. Open API 소개
웹 서비스 주요 업체들이 Open API를 지원하는 이유
이베이 익스프레스를 도입하면서 상품과 판매 정보 및 쇼핑 카트 API를 제공하
겠다고 발표
좀 더 쉽게 개발자가 접근 할 수 있도록 SOAP 방식 만을 제공하던 Open API를
SSL과 서명기능을 첨부한 REST 방식도 제공하겠다고 발표
Open API 지원으로 개발자 우선 정책을 펴기로 함
주요 웹 서비스 업체들이 자기네 서비스를 공개하면서 외부 개발자들을 유혹하고 있는
이유는 스스로 다하기 보다는 공유로 인한 가치 창출이 크기 때문이다
이베이를 예로 들면, 이베이 서드 파티들은 파워 셀러를 위한 개별 쇼핑몰이나 상품 등
록기를 만들어 줄 수도 있고, 이베이에서 제공하는 마케팅 자료를 비즈니스 솔루션에 결
합하는 프로그램을 개발할 수 있다.
8
9. 3. 웹 서비스 주요 업체들이 Open API를 지원하는 이유
I. Open API 소개
• 3만명이 넘는 이베이 개발자
• 월간 30억을 넘는 API 호출 횟수
• 47% 이상의 상품이 API(서드파티)를 통해 올
려진다
• 써드파티 툴을 이용하는 사용자가 연간 45%
증가
9
10. Ⅱ. Open API 기술
1. 웹 서비스
2. Open API의 대표적 웹 서비스 방식 : SOAP vs REST
3. Open API의 대표적 데이터 형식 : XML vs JSON
4. Open API의 표준 인증 방식 : OAuth
10
11. 1. 웹 서비스
Ⅱ. Open API 기술
웹 서비스
• 기존의 서로 다른 컴퓨터에서 네트워크를 통해 데이터를 주고 받는 통신임에는 동일하다.
• 플랫폼 중립적이다
• 웹 서비스는 HTTP 프로토콜을 이용한다.
• 연결을 유지하지 않는다.
• 웹 서버를 통해 서비스 된다.
• 대표적으로 SOAP, REST 방식이 있다.(SOAP을 SOA, REST를 ROA라고 부른다)
• SOA(Service Oriented Architecture) : 서비스 지향 아키텍처
• ROA(Resource Oriented Architecture) : 리소스 지향 아키텍처
• 교환하는 데이터 형식으로 XML, JSON이 있다. (SOAP은 XML이다)
<SOAP 과 REST 비교>
11
12. 2. Open API의 대표적 웹 서비스 방식 : SOAP vs REST
Ⅱ. Open API 기술
Open API의 대표적 웹 서비스 방식 : SOAP vs REST
<SOAP 아키텍처>
<SOAP
메시지 구조>
XML로 되어 있
다
- 아키텍처 설명 : SOA 구조에 따라 UDDI 레지스트리를 통해 웹서비스를 등록하고(publish), 탐색하고(find), 바인딩하여
(bind) 이용
- 프로세스 : 서비스 요청자가 웹서비스 요청을 SOAP으로 인코딩하여 서비스 제공자에게 전달하면, 서비스 제공자는 이
를 디코딩하여 적절한 서비스 로직을 통하여 결과를 얻고, 그 결과를 다시 SOAP 인코딩하여 서비스 요청자에게 반환.
- 태동 : 기업의 비즈니스 환경에서 응용 서비스 간 상호 운용을 위해 출발함
- 기반 사상 : 서비스를 제공하고 이용하는 프로그램들이(기계) 잘 이해할 수 있도록 엄격한 문법에 따라 개발됨. 그래서
스펙을 알아야 구현이 가능하여 고난이도 프로그래밍이 필요
- 적용 기술 : 전달매커니즘(Remote Procedure Call), 전달프로토콜(SOAP/HTTP, SMTP), 서비스 명세(WSDL), 서비스
레지스트리(UDDI)
- 적용 분야 : 트랜잭션 프로세싱, 비즈니스 플로 처리를 위한 서비스 상호 연동에 주로 이용
12
13. 2. Open API의 대표적 웹 서비스 방식 : SOAP vs REST
Ⅱ. Open API 기술
- 아키텍처 설명 : ROA기반으로 리소스를 등록하고 저장해두는 중간 매체 없이 리소스 제공자가 직접 리소스 요청자
에게 제공하는 방법을 이용
- 프로세스 : 기본 HTTP 프로토콜의 메소드 GET/PUT/POST/DELETE를 이용하여 다양한 형태로 표현된(JSON,
XML, RSS 등) 리소스를 직접 실어 나름
- 태동 : 인터넷 서비스 업체들이 응용 개발자들에게 손쉬운 데이터 제공을 목적으로 출발
- 기반 사상 : 별도의 표준 없이 사람이 이해하기 쉽도록 인터넷 기본(HTTP와 XML) 매커니즘으로 구성됨
- 적용 기술 : 전달매커니즘(Publish/Syndicate Pattern), 전달프로토콜(HTTP), 서비스 명세(WADL, XML, JSON,
hREST(시맨틱 REST) 등), 서비스 레지스트리(없음)
- 적용 분야 : 데이터와 UI(User Interface) 프로세싱
13
14. 2. Open API의 대표적 웹 서비스 방식 : SOAP vs REST
Ⅱ. Open API 기술
유서깊은 SOAP 기반 검색 API를 2006/12/05일 부로 중단 했다. 대신
구글은 REST 기반의 Ajax Search API를 대안으로 제시
아마존은 자사 API에서 REST:SOAP 사용 비율이 95:5라고 했다.
2006년 페이팔은 자신들의 유명한 SOAP API를 SSL 기반인증과
REST 방식으로 결국 바꾸었다.
…….
14
15. 3. Open API의 대표적 데이터 형식 : XML vs JSON
Ⅱ. Open API 기술
Open API의 대표적 웹 서비스 방식 : XML vs JSON
JSON 은 한마디로 , 경량형의 Data 형식이다.
간단하게 설명하면, 값에 대한 표현을 키와 밸류 쌍으로 하여, 반복을 최소화하여 Data를 표현 할수 있는 방식이다.
데이터 표현형식 예
XML
JSON
JSON의 경우 XML 보다 데이터 크기가 줄어든다.
15
16. 3. Open API의 대표적 데이터 형식 : XML vs JSON
Ⅱ. Open API 기술
Performance Test
일단, XML 포맷으로 데이터를 리턴하는 페이지와 JSON 포맷으로 데이터를 리턴하는 페이지를 각각 만들고,
Client 페이지를 제작하여, 50, 100, 500, 1000, 5000, 10000 개의 데이터를 송신한후, Parsing 하여 페이지에 출력
하기까지의 걸린 시간을 측정 하였다.
각각 10번씩 측정하여, 평균을 낸 값이다.
XML
JSON
50
0.019
0.008
100
0.0312
0.0219
500
0.0906
0.0952
1000
0.2782
0.4328
5000
4.7924
16.8998
10000
16.026
69.771
16
17. 4. OAuth
Ⅱ. Open API 기술
OAuth
AuthSub
웹서비스 API
Open API
인증 방식
표준화
BBAuth
…….
17
18. 4. OAuth
Ⅱ. Open API 기술
OAuth의 Flow
A. Consumer가 Request Token 요청
B. Service Provider가 Request Token 발
급
C. Consumer는 사용자를 Service Provider
로 이동, 사용자를 인증하고 토큰 발급을
확인함
D. Service Provider는 사용자를 Consumer
로 이동
E. Consumer는 Access Token 요청
F. Service Provider는 Consumer의 신원과
Request Token 확인, Access Token 발
급
G. Consumer는 Access Token으로 사용자
정보에 접근
18
19. 4. OAuth
Ⅱ. Open API 기술
OAuth 사용 예
1.http://twitter.com/oauth_clients 에 접속하여 애플리케이션 등록(새로 만들 애플리케이션 또는 사이트)
2.등록이 완료되면 소비자 키, 소비자 시크리트 및 세개의 URL(요청 토큰
URL, 액세스 토큰 URL 및 인증 URL)을 받는다.
3.요청토큰을 가져온 후 자신의 데이터 액세스를 인증할 URL로 접속
4.승인하게 되면 PIN을 리턴한다
19
20. 4. OAuth
Ⅱ. Open API 기술
5.애플리케이션에 PIN을 입력하면, 액세스 토큰을 가져온다
이 액세스 토큰을 저장하여 사용하게 되면 서비스 제공자 외에
ID/PW를 노출하지 않고도 액세스 토큰을 통해 사용자 인증처리가
가능하다.
파란의 경우 개방형인증을 도입하여 트위터와 페이스 북 또는 이메일 계정으로 인증하여 파란의 서비스를 이용할
수 있게 하였다.
파란에서 트위터 계정을 개방
형 인증 하게 되면 파란에서
해당 트위터 계정에 접근권한
을 갖게 됨
20
22. 1. Open API의 활용 사례(매쉬업 서비스)
Ⅲ. Open API 활용
Open API의 활용 사례(매쉬업 서비스)
• 인터넷상에서 제공되고 있는 다양한 서로 다른 서비스와 기능을 합쳐서 새로운 서
비스 또는 응용으로 만들어 내는 것을 의미
• 서로 다른 오픈API를 이용해 시너지를 낼 수 있는 새로운 서비스를 만든다.
• 개방과 공유를 전제로 하는 웹2.0 개념의 핵심 기술
• 장점 : 새로운 서비스를 개발하는데 들어가는 비용이 거의 없다.
• 단점 : 매쉬업 서비스는 다른서비스에 종속적이기 때문에 지도서비스API를 중단하
거나 API가 수정된다면 그것을 이용하는 모든서비스를 바꿔야 한다.
22
23. 1. Open API의 활용 사례(매쉬업 서비스)
Ⅲ. Open API 활용
매쉬업 서비스 사례 예 : housIngmaps.com
부동산 정보를 제공하는 Craigslist에서 정보를 긁어서 모은 후에 그 정보를 구글 지도에 표시해 준다.
23
24. 1. Open API의 활용 사례(매쉬업 서비스)
Ⅲ. Open API 활용
매쉬업 서비스 사례 예 : http://lovesera.com/camp/flickr/map/
사진의 photo_ID를
입력하면
flickr.photos.geo.getLoc
ation 메소드를 이용해
위도 경도 정보를
찾아내고,
이 값을 이용해
지도위에 해당 사진을
표시해 주는 예제.
24
25. 1. Open API의 활용 사례(매쉬업 서비스)
Ⅲ. Open API 활용
매쉬업 서비스 사례 예 : http://www.dudewheresmyusedcar.com
• 구글 맵과 이베이의 자동차 카테고리 상품을 조합하여 만든 사이트
• 이 사이트는 사용자의 위치에 가장 근접한 중고차 판매자를 찾아준다.
25
26. 1. Open API의 활용 사례(매쉬업 서비스)
Ⅲ. Open API 활용
모바일 매쉬업 서비스 사례 예 : DocsPics
문서, 사진, 파일 관리
언제, 어디서나, 한번에
구글 문서도구(Docs, gDocs), 피카사(Picasa) 사용
* 광고 있습니다.
( Docs Pics Key 필요)
주요기능:
- 문서, 사진, 파일 관리
- 구글 닥스와 자동으로 동기화되는 메모*
- 텍스트 파일 편집
- 사진, 노트 위젯
- 사진 업로드/다운로드
- 앨범 업로드/다운로드
- SDCard 파일 관리
- 파일 복사, 붙이기, 옮기기
- Zip, Unzip (압축, 압축해제)
- 복수 계정 지원
- 다양한 형식으로 내보기기/가져오기
구글독스의 문서와 피카사의 사진을 DocsPics 위젯으로 장식한 폰 화면
26
27. 마치며
마치며
끝으로 앞서 말한 내용들의 요약 내용입니다.
Open API 서비스를 통해, 개방과 공유로 사용자 참여를 유도하자
SOAP 보다는 REST 방식으로 서비스하자
연동 데이터 형식은 XML로 하되 필요 시 JSON도 같이 지원하자
인증이 필요하다면 Open API의 인증방식 표준인 OAuth 를 이용하여 타 Open API 서비스와 연
동이 가능하게 하자
Open API를 활용한 매시업 서비스를 개발하여, 부가가치를 창출하자
27