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
220
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
440
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
460
Decouple all the things - asynchronous messaging keeps it simple
titanoboa
0
600
Other Decks in Technology
See All in Technology
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
150
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
180
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
1
4.9k
Agentic RAG with LangGraph
atsushii
0
110
OPENLOGI Company Profile for engineer
hr01
1
17k
DUSt3R, MASt3R, MASt3R-SfM にみる3D基盤モデル
spatial_ai_network
3
480
Google Cloud で始める Cloud Run 〜AWSとの比較と実例デモで解説〜
risatube
PRO
0
140
I could be Wrong!! - Learning from Agile Experts
kawaguti
PRO
8
1.8k
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
3
1.6k
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
320
The key to VCP-VCF
mirie_sd
0
150
Storage Browser for Amazon S3
miu_crescent
1
340
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Statistics for Hackers
jakevdp
796
220k
Thoughts on Productivity
jonyablonski
68
4.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
BBQ
matthewcrist
85
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Bash Introduction
62gerente
609
210k
KATA
mclloyd
29
14k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
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