Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Masahiro Nagano
40,691 views
Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT
Slide for Shibuya.pm Tech Talk #17 LT
Technology
◦
Read more
5
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 19
2
/ 19
3
/ 19
4
/ 19
5
/ 19
6
/ 19
7
/ 19
8
/ 19
9
/ 19
10
/ 19
11
/ 19
12
/ 19
13
/ 19
14
/ 19
15
/ 19
16
/ 19
17
/ 19
18
/ 19
19
/ 19
More Related Content
PDF
Mackerel & Norikra mackerel meetup #4 LT
by
Masahiro Nagano
PDF
メルカリでのNorikraの活用、 Mackerelを添えて
by
Masahiro Nagano
PDF
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
by
Masahiro Nagano
PDF
Mackerelによる 簡単サーバー管理入門と発展形
by
Shinji Tanaka
PPT
Performance and Scalability of Web Service
by
Shinji Tanaka
PDF
Devlove mackerel
by
Daisuke Kasuya
PDF
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
by
Daisuke Masubuchi
PDF
nginxの紹介
by
Takashi Takizawa
Mackerel & Norikra mackerel meetup #4 LT
by
Masahiro Nagano
メルカリでのNorikraの活用、 Mackerelを添えて
by
Masahiro Nagano
ISUCONの勝ち方 YAPC::Asia Tokyo 2015
by
Masahiro Nagano
Mackerelによる 簡単サーバー管理入門と発展形
by
Shinji Tanaka
Performance and Scalability of Web Service
by
Shinji Tanaka
Devlove mackerel
by
Daisuke Kasuya
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
by
Daisuke Masubuchi
nginxの紹介
by
Takashi Takizawa
What's hot
PPTX
Pythonユーザのための構成管理入門 #pyconapac
by
Takeshi Komiya
PDF
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
by
gree_tech
PDF
Ansibleではじめるサーバー・ネットワークの自動化(2018/07/05)
by
akira6592
PDF
Vagrant環境のAnsibleを速くしたい
by
Kazuhiro Oinuma
PPTX
全部見せ。マイクロソフトのゲーム開発テクノロジー最新Update
by
Daisuke Masubuchi
PPTX
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
by
toshi_pp
PDF
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
by
Daisuke Masubuchi
PDF
nginx + lua + ObjectStorage ファイルアップロード/ダウンロードの高速化
by
Shuichi Yukimoto
PDF
フィードフォースと AWS と私
by
a know
PPTX
入門者の方向け Azure PlayFab の簡単な紹介
by
YutoNishine
PPTX
Playfabmeetup#4
by
勝成 鈴江
PPTX
Azure Service Fabric概要
by
Daiyu Hatakeyama
PDF
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
by
さくらインターネット株式会社
PPTX
st2-docker ことはじめ
by
Shu Sugimoto
PDF
さくらのインフラコード
by
Yukihiko SAWANOBORI
PDF
lua_nginx_module JSON-RPC 2.0 Batch Request
by
mosa siru
PDF
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
by
gree_tech
PDF
松本克彦 ピグにおけるリアルタイムランキングの導入
by
matsumoto_katsuhiko
PPTX
Azure Service Fabric 概要
by
Daiyu Hatakeyama
PDF
Introduction of Azure Docker Integration
by
Takekazu Omi
Pythonユーザのための構成管理入門 #pyconapac
by
Takeshi Komiya
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
by
gree_tech
Ansibleではじめるサーバー・ネットワークの自動化(2018/07/05)
by
akira6592
Vagrant環境のAnsibleを速くしたい
by
Kazuhiro Oinuma
全部見せ。マイクロソフトのゲーム開発テクノロジー最新Update
by
Daisuke Masubuchi
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
by
toshi_pp
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
by
Daisuke Masubuchi
nginx + lua + ObjectStorage ファイルアップロード/ダウンロードの高速化
by
Shuichi Yukimoto
フィードフォースと AWS と私
by
a know
入門者の方向け Azure PlayFab の簡単な紹介
by
YutoNishine
Playfabmeetup#4
by
勝成 鈴江
Azure Service Fabric概要
by
Daiyu Hatakeyama
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
by
さくらインターネット株式会社
st2-docker ことはじめ
by
Shu Sugimoto
さくらのインフラコード
by
Yukihiko SAWANOBORI
lua_nginx_module JSON-RPC 2.0 Batch Request
by
mosa siru
CEDEC2015_OpenStack で運用する Private Cloud の泥臭い(リアル)な話
by
gree_tech
松本克彦 ピグにおけるリアルタイムランキングの導入
by
matsumoto_katsuhiko
Azure Service Fabric 概要
by
Daiyu Hatakeyama
Introduction of Azure Docker Integration
by
Takekazu Omi
Viewers also liked
PDF
Rhebok, High Performance Rack Handler / Rubykaigi 2015
by
Masahiro Nagano
PDF
Norikraで作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
by
Masahiro Nagano
PDF
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
by
Masahiro Nagano
PDF
Big Master Data PHP BLT #1
by
Masahiro Nagano
PDF
Rrdtool基礎から応用
by
Shoichi Masuhara
PDF
ZabbixによるOpenStack監視のご紹介
by
VirtualTech Japan Inc.
PDF
仮想化専門コンサルタントが教える「成功するエンタープライズクラウド環境構のポイント」
by
VirtualTech Japan Inc.
PDF
Deep Learning on iOS #360iDev
by
Shuichi Tsutsumi
PDF
飛び道具ではないMetal #iOSDC
by
Shuichi Tsutsumi
PDF
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
by
Eiji Sekiya
PDF
ICLR読み会 奥村純 20170617
by
Jun Okumura
PPTX
医療データ解析界隈から見たICLR2017
by
RIKEN, Medical Sciences Innovation Hub Program (MIH)
PDF
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
by
Takanori Nakai
PDF
[ICLR2017読み会 @ DeNA] ICLR2017紹介
by
Takeru Miyato
PDF
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
by
Takahiro Kubo
PDF
170614 iclr reading-public
by
Katsuhiko Ishiguro
PDF
Q prop
by
Reiji Hatsugai
Rhebok, High Performance Rack Handler / Rubykaigi 2015
by
Masahiro Nagano
Norikraで作るPHPの例外検知システム YAPC::Asia Tokyo 2015 LT
by
Masahiro Nagano
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
by
Masahiro Nagano
Big Master Data PHP BLT #1
by
Masahiro Nagano
Rrdtool基礎から応用
by
Shoichi Masuhara
ZabbixによるOpenStack監視のご紹介
by
VirtualTech Japan Inc.
仮想化専門コンサルタントが教える「成功するエンタープライズクラウド環境構のポイント」
by
VirtualTech Japan Inc.
Deep Learning on iOS #360iDev
by
Shuichi Tsutsumi
飛び道具ではないMetal #iOSDC
by
Shuichi Tsutsumi
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
by
Eiji Sekiya
ICLR読み会 奥村純 20170617
by
Jun Okumura
医療データ解析界隈から見たICLR2017
by
RIKEN, Medical Sciences Innovation Hub Program (MIH)
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
by
Takanori Nakai
[ICLR2017読み会 @ DeNA] ICLR2017紹介
by
Takeru Miyato
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
by
Takahiro Kubo
170614 iclr reading-public
by
Katsuhiko Ishiguro
Q prop
by
Reiji Hatsugai
More from Masahiro Nagano
PDF
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
by
Masahiro Nagano
PDF
Stream processing in Mercari - Devsumi 2015 autumn LT
by
Masahiro Nagano
PDF
ISUCON4 予選問題で(中略)、”my.cnf”に1行だけ足して予選通過ラインを突破するの術
by
Masahiro Nagano
PDF
Isucon makers casual talks
by
Masahiro Nagano
PDF
blogサービスの全文検索の話 - #groonga を囲む夕べ
by
Masahiro Nagano
PDF
Gazelle - Plack Handler for performance freaks #yokohamapm
by
Masahiro Nagano
PDF
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
by
Masahiro Nagano
PDF
Web Framework Benchmarksと Perl の現状報告会 YAPC::Asia Tokyo 2014 LT
by
Masahiro Nagano
PDF
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
by
Masahiro Nagano
PDF
Webアプリケーションの パフォーマンス向上のコツ 実践編
by
Masahiro Nagano
PDF
Webアプリケーションの パフォーマンス向上のコツ 概要編
by
Masahiro Nagano
PDF
Webアプリケーションとメモリ
by
Masahiro Nagano
PDF
最近作ったN個のCPANモジュール Yokohama.pm #10
by
Masahiro Nagano
PDF
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
by
Masahiro Nagano
PDF
How to build a High Performance PSGI/Plack Server
by
Masahiro Nagano
PDF
Apache::LogFormat::Compiler YAPC::Asia 2013 Tokyo LT-Thon
by
Masahiro Nagano
PDF
MHA for MySQL の話
by
Masahiro Nagano
KEY
1台から500台までのMySQL運用(YAPC::Asia編)
by
Masahiro Nagano
KEY
監視ツールの話
by
Masahiro Nagano
KEY
捗れ!Operation
by
Masahiro Nagano
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
by
Masahiro Nagano
Stream processing in Mercari - Devsumi 2015 autumn LT
by
Masahiro Nagano
ISUCON4 予選問題で(中略)、”my.cnf”に1行だけ足して予選通過ラインを突破するの術
by
Masahiro Nagano
Isucon makers casual talks
by
Masahiro Nagano
blogサービスの全文検索の話 - #groonga を囲む夕べ
by
Masahiro Nagano
Gazelle - Plack Handler for performance freaks #yokohamapm
by
Masahiro Nagano
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
by
Masahiro Nagano
Web Framework Benchmarksと Perl の現状報告会 YAPC::Asia Tokyo 2014 LT
by
Masahiro Nagano
ISUCONで学ぶ Webアプリケーションのパフォーマンス向上のコツ 実践編 完全版
by
Masahiro Nagano
Webアプリケーションの パフォーマンス向上のコツ 実践編
by
Masahiro Nagano
Webアプリケーションの パフォーマンス向上のコツ 概要編
by
Masahiro Nagano
Webアプリケーションとメモリ
by
Masahiro Nagano
最近作ったN個のCPANモジュール Yokohama.pm #10
by
Masahiro Nagano
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
by
Masahiro Nagano
How to build a High Performance PSGI/Plack Server
by
Masahiro Nagano
Apache::LogFormat::Compiler YAPC::Asia 2013 Tokyo LT-Thon
by
Masahiro Nagano
MHA for MySQL の話
by
Masahiro Nagano
1台から500台までのMySQL運用(YAPC::Asia編)
by
Masahiro Nagano
監視ツールの話
by
Masahiro Nagano
捗れ!Operation
by
Masahiro Nagano
Gazelle & CPAN modules for performance. Shibuya.pm Tech Talk #17 LT
1.
Gazelle & CPAN
modules for Performance 長野雅広 @kazeburo Shibuya Perl Mongers テクニカルトーク #17 LT
2.
Me • 長野雅広(Masahiro Nagano) •
@kazeburo • Mercari, Inc. • Operations Engineer, Site Reliability • PHP, YAML
3.
Gazellehttps://www.flickr.com/photos/ckindel/424610604/
4.
Gazelle • Plack Handler
/ PSGI Server • HTTP/1.1 Web Server • Starlet compatible / Hot Deploy • Fast
5.
Benchmark 0 100000 200000 300000 400000 starman Starlet Gazelle 96577 60562 43588 334752 92027 48888 hello
world counter https://gist.github.com/kazeburo/71603b4bc0994e2222b4
6.
なぜGazelleは速いのか • Simple Architecture •
Prefork • no keepalive support • Mostly written in XS • Ultra fast HTTP processing using picohttpparser • Use accept4(2) and writev(2)
7.
Gazelleの使いどころ • ISUCON!!!1 • ソーシャルゲーム、広告、大規模サイト •
高度に最適化されたWebアプリケーショ ン • 普通に使えます
8.
実績 • livedoorBlog • 日本最大級のBlogサービス •
Starletからの移行でCPU使用率が 1~3%下がった
9.
WWW::Form::UrlEncoded WWW::Form::UrlEncoded::XS parser and builder
for application/x-www-form-urlencoded
10.
s_id=1&type=foo&message1=foo+bar+baz+hoge +hoge+hoge+hoge+hogehogemessage2= %E6%97%A5%E6%9C%AC%E8%AA%9E %E3%81%A7%E3%81%99%E3%82%88%E3%83%BC (s_id => 1,
type => 'foo', message1 => 'foo bar baz hoge hoge hoge hoge hogehoge', message2 => '日本語ですよー') parse build
11.
Rate wwwform_pp wwwform_xs
urlencode_xs wwwform_pp 21764/s -- -90% -91% wwwform_xs 227555/s 946% -- -1% urlencode_xs 229375/s 954% 1% -- parseのベンチマークで9.5倍 * URL::Encode(::XS)は若干互換性がない
12.
Rate use_uri concat_escape
build_xs use_uri 23640/s -- -32% -97% concat_escape 34796/s 47% -- -96% build_xs 843158/s 3467% 2323% -- buildのベンチマークで35倍
13.
W::F::UE::XS使いどころ • Query String付きのリクエストが非常に多い ところ •
Plack::Requestと互換性あるので置き換え可 能 • Query String付きのURLを大量に生成する場合 • URL::Builderがおすすめ
14.
Cookie::Baker Cookie::Baker::XS
15.
my $cookie =
bake_cookie('foo', { value => 'val', path => "test", domain => '.example.com', expires => '+24h' }); $headers->push_header(‘Set-Cookie’,$cookie); my $cookie_hashref = crush_cookie($headers->header(‘Cookie’)); build parse
16.
Benchmark: running pp,
xs for at least 1 CPU seconds... crush_pp: 1 wallclock secs @ 16592.59/s (n=17920) crush_xs: 1 wallclock secs @ 182043.81/s (n=191146) Rate pp xs crush_pp 16593/s -- -91% crush_xs 182044/s 997% -- Benchmark: running pp, xs for at least 1 CPU seconds... crush_pp: 2 wallclock secs @ 201749.06/s (n=213854) crush_xs: 0 wallclock secs @ 1042617.50/s (n=1251141) Rate pp xs crush_pp 201749/s -- -81% crush_xs 1042618/s 417% -- ## length($cookie) == 675 ## length($cookie) == 17
17.
C::B使いどころ • Cookie::BakerはすでにPlack@1.0035- TRIALで使われている • Cookieのparseだけを行うシンプルな モジュールがなかった •
Cookie::Baker::XSを入れる事 で”parse”が高速化
18.
C::B::XS使いどころ • Cookieがすごくたくさん付いて来るサ イト • Google
Analytics, Ninja, Ad, Ad tracking, Session and more
19.
使ってくださいまし
Download