8 language deployments on GCE and GAE #gcpja

17
8 language deployments on GCE and GAE gcp ja night #27 (2014/04/22) #gcpja @tagomoris 14423日水曜日

description

in GCP ja night 27 #gcpja

Transcript of 8 language deployments on GCE and GAE #gcpja

Page 1: 8 language deployments on GCE and GAE #gcpja

8 language deploymentson GCE and GAEgcp ja night #27 (2014/04/22) #gcpja

@tagomoris

14年4月23日水曜日

Page 2: 8 language deployments on GCE and GAE #gcpja

TAGOMORI Satoshi (@tagomoris)LINE Corp.

14年4月23日水曜日

Page 3: 8 language deployments on GCE and GAE #gcpja

It’s been a a long time.Appengine ja night (2010)

appengine ja night 9

appengine ja night 11

appengine ja night 13

GAETestBase (in Kay Framework later)

remote_driver

14年4月23日水曜日

Page 4: 8 language deployments on GCE and GAE #gcpja

Now: poet

14年4月23日水曜日

Page 5: 8 language deployments on GCE and GAE #gcpja

Products:Fluentd (a committer)

Fluentd plugins (ex: fluent-plugin-bigquery)

Norikra (v0.2.0 soon!)

Woothee

...

14年4月23日水曜日

Page 6: 8 language deployments on GCE and GAE #gcpja

Wootheehttps://github.com/woothee/woothee

User-Agent parser for many languagesString => Hash(Map)parse(string)[“name”] #=> “Chrome”

Many implementationsJava, Javascript, Perl, Ruby, Python, PHP, Go

Just same result over languagescommon test case exists

14年4月23日水曜日

Page 7: 8 language deployments on GCE and GAE #gcpja

Woothee synopsishttps://github.com/woothee/woothee

14年4月23日水曜日

Page 8: 8 language deployments on GCE and GAE #gcpja

Woothee demo sitewoothee.github.io

Demo app hosted on GCE/GAEhttps://github.com/woothee/woothee-site-app

GCE: Perl, Ruby, Node.js, Java(JRuby)

14年4月23日水曜日

Page 9: 8 language deployments on GCE and GAE #gcpja

Woothee demo site: ruby

14年4月23日水曜日

Page 10: 8 language deployments on GCE and GAE #gcpja

GCE: us-central1-bg1-small: 1 node

1 vCPU, 1.7GB

Perl v5.18.2 (+Starlet)

Ruby 2.1.1 (+unicorn)

JRuby 1.7.11 (+mizuno, jetty)

Node v0.10.26

14年4月23日水曜日

Page 11: 8 language deployments on GCE and GAE #gcpja

Woothee demo sitewoothee.github.io

Demo app hosted on GCE/GAEhttps://github.com/woothee/woothee-site-app

GCE: Perl, Ruby, Node.js, Java(JRuby)

Java, Python, PHP, Go

14年4月23日水曜日

Page 12: 8 language deployments on GCE and GAE #gcpja

Woothee demo sitewoothee.github.io

Demo app hosted on GCE/GAEhttps://github.com/woothee/woothee-site-app

GCE: Perl, Ruby, Node.js, Java(JRuby)

GAE: Java, Python, PHP, Go

14年4月23日水曜日

Page 13: 8 language deployments on GCE and GAE #gcpja

GAE:Python: no frustrations! (1 hour)

PHP: dev server doesn’t work ... but fine! (2 hours)

Go: no frustrations! (2 hours)

Java: maven is really fxxxxxxkin’ (7 hours)

14年4月23日水曜日

Page 14: 8 language deployments on GCE and GAE #gcpja

Response times:GCE (ms)perl 369ruby 400jruby 407node 366

GAE (1 instance) (ms)java 264

python 219php 259go 212

14年4月23日水曜日

Page 15: 8 language deployments on GCE and GAE #gcpja

Response times:GCE (ms)perl 369ruby 370jruby 407node 366GAE 1 instance (ms) 0 instance (ms)java 264 6820

python 219 214php 259 374go 212 229

14年4月23日水曜日

Page 16: 8 language deployments on GCE and GAE #gcpja

Response times:GCE us-central1-b(ms) asia-east1-b(ms)perl 369 103ruby 370 108jruby 407 128node 366 138GAE 1 instance (ms) 0 instance (ms)java 264 6820

python 219 214php 259 374go 212 229

14年4月23日水曜日

Page 17: 8 language deployments on GCE and GAE #gcpja

Conclusion:GCE/GAE: use cases

GCE: Many features on 1 serverOR low-latency service (asia-east)

GAE: 1 feature for large (or ex-small) scale

Fluentd is good for GCE :-)Norikra is also good for GCE :-)Woothee is great for everywhere :-)

14年4月23日水曜日