Entwicklungsprozess und Architektur

Entwicklungsprozess und Architektur

Entwicklungsprozess und Architektur einer gewachsenen Webanwendung - German Perl Workshop 2014

5e8e44a4f6632772c47925006aff31d9?s=128

Kerstin Puschke

March 26, 2014
Tweet

Transcript

  1. Entwicklungs- prozess und Architektur Entwicklungsprozess und Architektur einer gewachsenen Webanwendung

    Kerstin Puschke German Perl Workshop 2014
  2. 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
  3. Ü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
  4. 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
  5. xing.com März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke

    // German Perl Workshop 2014 5 perl rails rails (public API) rails mobile ...
  6. Frontend •  HTML •  Javascript •  jquery •  backbone März

    2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 6
  7. Backend •  Perl •  Ruby on Rails •  Scala • 

    Hadoop •  Elastic Search •  Insect / Arachnid März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 7
  8. Storage, Datenbanken & Cache •  MySQL •  Riak •  Swift

    / Open Stack •  Redis •  Memcache März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 8
  9. Perl „core“ März 2014 // Entwicklungsprozess und Architektur // Kerstin

    Puschke // German Perl Workshop 2014 9 perl „core“ rails rails (public API) rails mobile ...
  10. 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
  11. Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin

    Puschke // German Perl Workshop 2014 11 •  ~600k Zeilen, davon ~300k Zeilen Perl
  12. Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin

    Puschke // German Perl Workshop 2014 12 •  ~30M externe Zugriffe / Tag
  13. Perl App März 2014 // Entwicklungsprozess und Architektur // Kerstin

    Puschke // German Perl Workshop 2014 13 •  ~360M interne REST Zugriffe / Tag, 6k / Sekunde
  14. 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
  15. 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
  16. 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
  17. 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
  18. Provisioning Development-VMs März 2014 // Entwicklungsprozess und Architektur // Kerstin

    Puschke // German Perl Workshop 2014 18 •  Vagrant & Chef
  19. Versionskontrolle März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke

    // German Perl Workshop 2014 19 •  Github >1800 repositories
  20. 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
  21. Monitoring März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke

    // German Perl Workshop 2014 21 •  logjam
  22. Monitoring März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke

    // German Perl Workshop 2014 22 •  graphite
  23. Monitoring März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke

    // German Perl Workshop 2014 23 •  cube
  24. famous last words die "WTF?"; # should not be possible

    März 2014 // Entwicklungsprozess und Architektur // Kerstin Puschke // German Perl Workshop 2014 24
  25. www.xing.com Vielen Dank für Eure Aufmerksamkeit!

  26. 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