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
Entwicklungsprozess und Architektur
Search
Kerstin Puschke
March 26, 2014
Technology
1
210
Entwicklungsprozess und Architektur
Entwicklungsprozess und Architektur einer gewachsenen Webanwendung - German Perl Workshop 2014
Kerstin Puschke
March 26, 2014
Tweet
Share
More Decks by Kerstin Puschke
See All by Kerstin Puschke
High availability by offloading work - background jobs, message queues, or Kafka
titanoboa
0
430
Background jobs at scale (Montreal.rb)
titanoboa
0
350
EuRuKo 2018: Scaling a monolith isn't scaling microservices
titanoboa
2
120
Background jobs at scale
titanoboa
1
58
Background jobs at scale
titanoboa
0
55
Decouple all the things: Asynchronous messaging keeps it simple
titanoboa
0
110
Decouple all the things - Asynchronous messaging keeps it simple
titanoboa
0
84
Decouple all the things - asynchronous messaging keeps it simple
titanoboa
0
450
Decouple all the things - asynchronous messaging keeps it simple
titanoboa
0
600
Other Decks in Technology
See All in Technology
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
130
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
120
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
180
podman_update_2024-12
orimanabu
1
260
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
20241220_S3 tablesの使い方を検証してみた
handy
3
320
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
100
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
180
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
160
Featured
See All Featured
Fireside Chat
paigeccino
34
3.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
The Cult of Friendly URLs
andyhume
78
6.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Mobile First: as difficult as doing things right
swwweet
222
9k
A Tale of Four Properties
chriscoyier
157
23k
A better future with KSS
kneath
238
17k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Scaling GitHub
holman
458
140k
Transcript
Entwicklungs- prozess und Architektur Entwicklungsprozess und Architektur einer gewachsenen Webanwendung
Kerstin Puschke German Perl Workshop 2014
Wer bin ich Kontakt • http://www.kpuschke.eu • twitter: @titanoboa42 •
https://www.xing.com/profile/ Kerstin_Puschke software engineer bei XING Hamburg • xing.com soziales Netzwerk für berufliche Kontakte • ~14 Mio. Mitglieder • debian, perl, javascript, ruby on rails, mysql, redis, riak, . . . Wir stellen ein! http://corporate.xing.com/ deutsch/unternehmen/karriere- bei-xing/ März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 2
Überblick März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 3 • Einleitung • Technologien & Architektur • Programmiersprachen, Datenbanken, Storage und mehr • Anwendungen, APIs & asynchrone Kommunikation • Entwicklungsprozess & -werkzeuge • Entwicklungs- und Testumgebungen • Versionskontrolle • continous integration, Releasezyklen / continous deployment
Einleitung März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 4 • xing.com • soziales Netzwerk für berufliche Kontakte • ~14 Mio. Mitglieder • XING • xing.com • amiando aka XING EVENTS • kununu
xing.com März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 5 perl rails rails (public API) rails mobile ...
Frontend • HTML • Javascript • jquery • backbone März
2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 6
Backend • Perl • Ruby on Rails • Scala •
Hadoop • Elastic Search • Insect / Arachnid März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 7
Storage, Datenbanken & Cache • MySQL • Riak • Swift
/ Open Stack • Redis • Memcache März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 8
Perl „core“ März 2014 // Entwicklungsprozess und Architektur // Kerstin
Puschke // German Perl Workshop 2014 9 perl „core“ rails rails (public API) rails mobile ...
Perl App • vor ~10 Jahren begonnen • kein modernes
Webframework • selbstentwickeltes Templating • aber auch „modern perl“ (Moose,...) • Perl 5.12 März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 10
Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin
Puschke // German Perl Workshop 2014 11 • ~600k Zeilen, davon ~300k Zeilen Perl
Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin
Puschke // German Perl Workshop 2014 12 • ~30M externe Zugriffe / Tag
Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin
Puschke // German Perl Workshop 2014 13 • ~360M interne REST Zugriffe / Tag, 6k / Sekunde
Rails März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 14 perl „core“ rails jobs rails (public API) rails events mobile rails profile rails ~ 20 apps
Kommunikation • REST API • RabbitMQ AMQP • plus Beetle
März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 15 perl „core“ rails jobs rails (public API) rails events mobile rails profile
Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin
Puschke // German Perl Workshop 2014 16 2 x 6 Anwendungsserver 2 x 18 API-Server 2 x 4 Worker-Server DC1 DC2
Entwicklung • ~520 Leute aus ~28 Ländern, ~80 engineers •
Hamburg, München, Barcelona, Wien • Crossfunktionale Entwicklungsteams • Scrum, Kanban • pair programming, code reviews • QA März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 17
Provisioning Development-VMs März 2014 // Entwicklungsprozess und Architektur // Kerstin
Puschke // German Perl Workshop 2014 18 • Vagrant & Chef
Versionskontrolle März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 19 • Github >1800 repositories
Continuous Integration & Deployment März 2014 // Entwicklungsprozess und Architektur
// Kerstin Puschke // German Perl Workshop 2014 20 • Jenkins CI ~30 Projekte, ~250 build jobs • wöchentliches bis zu continuous deployment
Monitoring März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 21 • logjam
Monitoring März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 22 • graphite
Monitoring März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke
// German Perl Workshop 2014 23 • cube
famous last words die "WTF?"; # should not be possible
März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 24
www.xing.com Vielen Dank für Eure Aufmerksamkeit!
Wer bin ich Kontakt • http://www.kpuschke.eu • twitter: @titanoboa42 •
https://www.xing.com/profile/ Kerstin_Puschke software engineer bei XING Hamburg • xing.com soziales Netzwerk für berufliche Kontakte • ~14 Mio. Mitglieder • debian, perl, javascript, ruby on rails, mysql, redis, riak, . . . Wir stellen ein! http://corporate.xing.com/deutsch/ unternehmen/karriere-bei-xing/ März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 26