- From: 이원석 <wonsuk.lee@etri.re.kr>
- Date: Tue, 5 May 2015 06:27:04 +0000
- To: 김욱래 <wlkim@inswave.com>
- CC: Sangwhan Moon <sangwhan@iki.fi>, HTML KIG <public-html-ig-ko@w3.org>, "public-html5kr@w3.org" <public-html5kr@w3.org>
- Message-ID: <927A86A7956B074D9C861431DA4BA535E55D5D@SMTP4.etri.info>
김욱래 이사님, 감사합니다^^ 6월 정도에 slot을 한번 잡아보겠습니다~^^ 이원석 드림. From: 김욱래 [mailto:wlkim@inswave.com] Sent: Monday, May 04, 2015 2:04 PM To: 이원석 Cc: Sangwhan Moon; HTML KIG; public-html5kr@w3.org Subject: Re: Fetch API, Promises Polyfill 안녕하십니까. 인스웨이브 김욱래입니다. 적당한 시간을 잡아 주시면 진행해보겠습니다. Promise 테스트만으로는 내용이 너무 없어서 뭔가를 더 추가해야할 것 같습니다. 감사합니다. 김욱래 ------------------------------------------------- 김욱래 이사 / 연구개발본부, (주)인스웨이브 시스템즈 ------------------------------------------------- Tel : 02-2082-1431 Mobile : 010-3791-6175 Fax : 02-2082-1410 Email : wlkim@inswave.com<mailto:wlkim@inswave.com> Addr : 152-790 서울특별시 구로구 구로 3동 182-13 대륭포스트타워 2차 414호 홈페이지 : http://www.inswave.com 웹스퀘어 : http://www.websquare.co.kr 기술지원 : https://www.inswave.com/support ------------------------------------------------- 2015년 5월 3일 오후 11:54, 이원석 <wonsuk.lee@etri.re.kr<mailto:wonsuk.lee@etri.re.kr>>님이 작성: 김욱래 이사님, 좋은 자료 공유해 주셔서 감사합니다. 언제 KIG회의에서 한번 어떻게 시험을 하셨는지 간단히 소개를 해주셔도 좋을 것 같습니다^^ 이원석 드림. From: 김욱래 [mailto:wlkim@inswave.com<mailto:wlkim@inswave.com>] Sent: Thursday, April 30, 2015 1:17 PM To: Sangwhan Moon Cc: HTML KIG Subject: Re: Fetch API, Promises Polyfill 안녕하세요. 좋은 내용을 소개해 주셔서 감사합니다. 얼마전에 Promise를 적용하려고 조사했던 polyfills 관련 정보 몇가지를 공유해드립니다. 1. 성능 아래는 성능 관련된 benchmark 링크입니다. https://github.com/petkaantonov/bluebird/tree/master/benchmark results for 10000 parallel executions, 1 ms per I/O op file time(ms) memory(MB) callbacks-baseline.js 232 35.86 promises-bluebird-generator.js 235 38.04 promises-bluebird.js 335 52.08 promises-cujojs-when.js 405 75.77 promises-tildeio-rsvp.js 468 87.56 promises-dfilatov-vow.js 578 125.98 callbacks-caolan-async-waterfall.js 634 88.64 promises-lvivski-davy.js 653 109.64 promises-calvinmetcalf-lie.js 732 165.41 promises-obvious-kew.js 1346 261.69 promises-ecmascript6-native.js 1348 189.29 generators-tj-co.js 1419 164.03 promises-then-promise.js 1571 294.45 promises-medikoo-deferred.js 2091 262.18 observables-Reactive-Extensions-RxJS.js 3201 356.76 observables-caolan-highland.js 7429 616.78 promises-kriskowal-q.js 9952 694.23 observables-baconjs-bacon.js.js 25805 885.55 Platform info: Windows_NT 6.1.7601 x64 Node.JS 1.1.0 V8 4.1.0.14 Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz × 4 브라우저 별 성능 테스트 자료는 찾지 못해서 HTML5ROCKS 샘플( http://www.html5rocks.com/ko/tutorials/es6/promises/ )을 이용해서 직접 수행했습니다. 대상 라이브러리는 rsvp, bluebird를 이용했고, XHR 구현도 같이 테스트 했습니다. 값이 작을 수록 더 나은 성능입니다. 참고로 아래 메일에 있는 Promises Polyfill은 rsvp의 subset입니다. RSVP Bluebird XHR IE6 427 776 422 IE8 304 367 553 IE9 347 291 494 Chrome 109 115 286 2. 브라우저 하위호환성 Internet Explorer는 최신 버전인 11에서도 promise를 지원하지 않아 polyfill을 사용해야 합니다. 하지만, 대표적인 polyfill인 rsvp, bluebird의 경우 Internet explorer 9부터 지원되는 Array.reduce, Array.map, Array.forEach를 사용하고 있어서 IE6~8과 같은 구형 버전 Internet Explorer를 지원해야 하면 es5-shims ( https://github.com/es-shims/es5-shim/blob/master/es5-shim.js )를 포함시켜야 합니다. 또한 구형 버전에서는 Promise 메소드 중 catch가 ECMAScript 예약어 catch와 충돌이 발생됩니다. .catch()대신 ["catch"]()를 사용하면 회피할 수 있습니다. 감사합니다. 김욱래 ------------------------------------------------- 김욱래 이사 / 연구개발본부, (주)인스웨이브 시스템즈 ------------------------------------------------- Tel : 02-2082-1431 Mobile : 010-3791-6175 Fax : 02-2082-1410 Email : wlkim@inswave.com<mailto:wlkim@inswave.com> Addr : 152-790 서울특별시 구로구 구로 3동 182-13 대륭포스트타워 2차 414호 홈페이지 : http://www.inswave.com 웹스퀘어 : http://www.websquare.co.kr 기술지원 : https://www.inswave.com/support ------------------------------------------------- 2015년 4월 29일 오후 5:08, Sangwhan Moon <sangwhan@iki.fi<mailto:sangwhan@iki.fi>>님이 작성: 추가 내용입니다. Fetch: https://github.com/github/fetch Promises: https://github.com/jakearchibald/es6-promise (개인적으로 사용을 해본적이 없어, 라이브러리 자체에 대한 질문은 깃헙 프로젝트 오너한테 하시는게 빠를겁니다. ^^) 감사합니다.
Received on Tuesday, 5 May 2015 06:30:45 UTC