Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Perl Platform as a Service Shootout
Search
Jade Allen
June 14, 2012
Programming
490
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Perl Platform as a Service Shootout
Comparing and contrasting various platform as a service provider's Perl support
Jade Allen
June 14, 2012
More Decks by Jade Allen
See All by Jade Allen
All About Regular Expressions
jadeallenx
1
300
Hexes, Charms and Spells
jadeallenx
0
180
3 > 2
jadeallenx
0
1.1k
Idiomatic Erlang
jadeallenx
0
200
The Sharp Edges of Leaky Abstractions
jadeallenx
0
140
Sagas: Distributed Transactions Without Locks
jadeallenx
0
590
Before Unix: Early History of Time-Sharing
jadeallenx
0
260
Functional Programming Made Me a Better Perl Developer
jadeallenx
1
380
Assigning Meanings to Programs
jadeallenx
0
300
Other Decks in Programming
See All in Programming
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.6k
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.7k
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
7k
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.5k
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
800
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
210
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.8k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.6k
はてなアカウント基盤 State of the Union
cockscomb
1
1.2k
A2UI という光を覗いてみる
satohjohn
1
170
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
220
Featured
See All Featured
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
Site-Speed That Sticks
csswizardry
13
1.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
160
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Chasing Engaging Ingredients in Design
codingconduct
0
230
Claude Code のすすめ
schroneko
67
230k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
Product Roadmaps are Hard
iamctodd
PRO
55
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
A better future with KSS
kneath
240
18k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Transcript
Perl Platform as a Service Shootout Mark Allen
[email protected]
https://github.com/mrallen1
https://metacpan.org/author/MALLEN
"Platform as a Wha?" Coders don't have to be system
administrators • Deploy your code • Magic happens • Your application is live • Web applications • Now queue workers too
Platform as a service shootout Most PaaS providers support python,
php, ruby or node.js "natively" A few support Perl deployments. How magical is Perl support?
Test application: geotz Given a JSON encoded list of IP
addresses, return the UTC offset for each IP's timezone. Input: ["24.24.24.24"] Output: { "24.24.24.24" : { "country_name": "United States", "region_name": "New York", "city": "Buffalo", "time_zone": "America/New_York", "utc_offset": -14400 } }
Implementations Perl • Dancer • Mojolicious Python • Flask Erlang
• Webmachine
Perl Dependencies Dancer • Try::Tiny • Regexp::Common • DateTime • DateTime::TimeZone • JSON • Geo::IP <=
hard to automate
Perl Dependencies Mojolicious::Lite • Mojo::JSON • Try::Tiny • Regexp::Common • DateTime • DateTime::TimeZone • Geo::IP <=
hard to automate
Python Dependencies • Flask (and Werkzeug, Jinja2) • PyTZ (core python tz
support sucks) • pygeoip
Erlang Dependencies • webmachine • mochiweb • egeoip
Providers • Heroku • dotCloud • Stackato (my 45 day
trial ended) • OpenShift (Red Hat) • flexflux.com (closing) • Juju (Ubuntu)
Evaluation Criteria • Ease of deployment • Performance? • Cost?
• How "magical" Perl support is relative to other supported languages. (First class or hacked together?)
Evaluation Criteria • Ease of deployment • Performance? • Cost?
• How "magical" Perl support is relative to other supported languages. (First class or hacked together?)
Findings • Getting PSGI compliant Perl web apps (with sensible dependencies)
into PaaS environments is generally pain free. • But python is still less painful. • Erlang is a unicorn. (Some PaaS providers have alpha quality support.)
Resources https://github.com/mrallen1/perl-PaaS-Shootout https://speakerdeck.com/u/mrallen1/p/Perl- Platform-as-a-Service-Shootout Try the service: http://dancerperlpaas-mrallen1.dotcloud.com/ http://flaskperlpaas-mrallen1.dotcloud.com/ http://blazing-sky-3007.herokuapp.com
(mojo) curl -s -X POST -d'["24.24.24.24"]' URL | json_pp