MICRO-BATCH-SERVICES MIT SPRING BOOT

Größe: px
Ab Seite anzeigen:

Download "MICRO-BATCH-SERVICES MIT SPRING BOOT"

Transkript

1 MICRO-BATCH-SERVICES MIT SPRING BOOT Ein Praxisbericht

2 Tobias Flohre blog.codecentric.de/en/author/tobias.flohre

3 WORUM GEHT ES? So könnte die schöne neue Welt sein!

4 WORUM GEHT ES? So könnte die schöne neue Welt sein! So ist die neue Welt! Micro-Batch-Services

5 WORUM GEHT ES? So könnte die schöne neue Welt sein! So ist die neue Welt! Micro -Batch- Services Tools, Methoden, Frameworks, Vorgehen

6 AGENDA - Motivation / Problemstellung - Entwicklung - Build - Deployment - Monitoring - Logging

7 BATCH-ARCHITEKTUR Servlet Container Cron-Job Anwendung HTTP Endpoint Scheduler Batch Application Workflow-System Logs Job- Metadaten

8 BATCH-META-FRAMEWORK Transaktionssicher Metrics Summen Zähler Deployed Jobs Job-Start Job-Execution- Details Status Test-Ressourcen Test- Unterstützung In-Memory Laufende Jobs HTTP-Endpoints Job-Stop Logfile / Protokoll Kerndaten des Joblaufs Protokoll Einheitliches Format Revisionssichere Ablage Logging Thread-Local Logfile pro Job-Execution

9 MOTIVATION / PROBLEMSTELLUNG Servlet Container HTTP Endpoint Anwendung Batch Application Job Job Job Job Job Job Job Job Job Logs Sparte A Job- Metadaten Problem! Deployment -> Test aller Jobs Jobs sind schwer zu testen Mehrere Anwendungen! Puh... Nee... Anträge, Aufsetzen, git, Build, CI, Properties für Stages, Application Server Deployment, Monitoring, Logging

10 MOTIVATION / PROBLEMSTELLUNG Ein Job pro Anwendung! Voraussetzungen schaffen! Aufsetzen des Projekts muss trivial sein Build-/CI-Jobs nicht manuell erzeugen Application Server loswerden Deployment vereinfachen Monitoring und Logauswertung von vielen Anwendungen ermöglichen

11 ENTWICKLUNG Spring Boot makes it easy to create stand-alone, productiongrade Spring based Applications that you can "just run".

12 ENTWICKLUNG Spring Boot Starter liefern Dependencies liefern Konfiguration einfach erweiterbar Spring Boot makes it easy to create stand-alone, productiongrade Spring based Applications that you can "just run".

13 ENTWICKLUNG Embedded Servlet Container Start per main-methode Startfähiges Fat-Jar java jar app.jar Spring Boot makes it easy to create stand-alone, productiongrade Spring based Applications that you can "just run".

14 ENTWICKLUNG Monitoring Properties Remote Shell CRaSH Spring Boot makes it easy to create stand-alone, productiongrade Spring based Applications that you can "just run".

15 ENTWICKLUNG - spring-boot-starter-batch - Batch-Ausführung standalone - Lösung: eigener Spring Boot Starter - Infrastruktureller Code wird geteilt <dependency> <groupid>de.codecentric</groupid> <artifactid>spring-boot-starter-batch-web</artifactid> <version>1.3.4.release</version> </dependency>

16 ENTWICKLUNG Transaktionssicher Metrics Summen Zähler Deployed Jobs Job-Start Job-Execution- Details Status Test-Ressourcen Test- Unterstützung In-Memory Laufende Jobs HTTP-Endpoints Job-Stop Logfile / Protokoll Kerndaten des Joblaufs Protokoll Einheitliches Format Revisionssichere Ablage Logging Thread-Local Logfile pro Job-Execution

17 ENTWICKLUNG 1. Wähle eine Basis aus existierenden Spring Boot Startern spring-boot-starter-web spring-boot-starter-batch spring-boot-starter-jdbc spring-boot-starter-actuator

18 ENTWICKLUNG 2. Eigene Konfiguration und Auto-Configuration META-INF/spring.factories org.springframework.boot.autoconfigure.enableautoconfiguration= de.codecentric.batch.configuration.batchwebautoconfiguration

19 ENTWICKLUNG 3. Konfigurierbarkeit durch private int public TaskExecutor taskexecutor() { ThreadPoolTaskExecutor taskexecutor = new ThreadPoolTaskExecutor(); taskexecutor.setmaxpoolsize(maxpoolsize); taskexecutor.afterpropertiesset(); return taskexecutor; }

20 ENTWICKLUNG 4. Erweiterbarkeit durch überschreibbare public class TaskExecutorBatchConfigurer implements BatchConfigurer {} public interface BatchConfigurer { JobRepository getjobrepository() throws Exception; PlatformTransactionManager gettransactionmanager() throws Exception JobLauncher getjoblauncher() throws Exception; JobExplorer getjobexplorer() throws Exception; }

21 ENTWICKLUNG 5. Abhängigkeit von Klassenpfad und protected static class @ConditionalOnProperty

22 ENTWICKLUNG Voraussetzungen schaffen! Aufsetzen des Projekts muss trivial sein Build-/CI-Jobs nicht manuell erzeugen Application Server loswerden Deployment vereinfachen Monitoring und Logauswertung von vielen Anwendungen ermöglichen

23 BUILD Ziel 1: Build-/CI-Jobs nicht manuell erzeugen Ziel 2: Ein Job für alles -> Build, Release, Deployment

24 BUILD Build now bei SCM Commit mvn clean package Release manuell mvn build-helper:parse-version versions:set DnewVersion=${...} mvn clean package mvn deploy mvn scm:tag Promotion manuell Deployment auf Stages -> Trigger eines deployapplication-jobs

25 BUILD trigger job create repo Job DSL Plugin Seed-Job Job, der Job erzeugt

26 ENTWICKLUNG Voraussetzungen schaffen! Aufsetzen des Projekts muss trivial sein Build-/CI-Jobs nicht manuell erzeugen Application Server loswerden Deployment vereinfachen Monitoring und Logauswertung von vielen Anwendungen ermöglichen

27 DEPLOYMENT Ziel: Deployment vereinfachen

28 DEPLOYMENT Build erzeugt RPM (Red Hat Package Manager) Maven RPM Plugin Startskript + Spring Boot Fat Jar Installationslogik (<preinstallscriptlet>) Properties umgebungsabhängig aus SCM Alternative: Spring Cloud Config Java Property- Resolver deployapplication Job ermittelt Server für Stage ssh -> yum install <artefakt> Spring Boot Anwendung

29 ENTWICKLUNG Voraussetzungen schaffen! Aufsetzen des Projekts muss trivial sein Build-/CI-Jobs nicht manuell erzeugen Application Server loswerden Deployment vereinfachen Monitoring und Logauswertung von vielen Anwendungen ermöglichen

30 MONITORING Spring Boot Actuator + Spring Boot Admin: Live-Demo

31 LOGGING Anwendung Anwendung Anwendung Anwendung ElasticSearch + Logstash + Kibana

32 LOGGING

33 ENTWICKLUNG Voraussetzungen schaffen! Aufsetzen des Projekts muss trivial sein Build-/CI-Jobs nicht manuell erzeugen Application Server loswerden Deployment vereinfachen Monitoring und Logauswertung von vielen Anwendungen ermöglichen

34 RESSOURCEN

35 FRAGEN? Tobias Flohre Merscheider Straße Solingen tobias.flohre@codecentric.de blog.codecentric.de

Dennis Schulte / Tobias Flohre codecentric AG. Enterprise Java Batch mit Spring

Dennis Schulte / Tobias Flohre codecentric AG. Enterprise Java Batch mit Spring Dennis Schulte / Tobias Flohre Enterprise Java Batch mit Spring Dennis Schulte Düsseldorf @denschu www.github.com/denschu blog.codecentric.de/author/dsc tel +49 (0) 1515 _ 288 2395 dennis.schulte@codecentric.de

Mehr

Architektur im Kontext der Cloud: Patterns und Best Practices 62. Logging. Auswirkung moderner Architektur auf den Betrieb 32

Architektur im Kontext der Cloud: Patterns und Best Practices 62. Logging. Auswirkung moderner Architektur auf den Betrieb 32 Architektur im Kontext der Cloud: Patterns und Best Practices 62 JAVA Mag Sonderdruck 11.2014 magazin Java Architekturen Web www.javamagazin.de Apache DeltaSpike Portabilität und Community 16 Der Rest

Mehr

Continuous Everything

Continuous Everything Continuous Everything Development, Integration, Deployment, DevOps Peter Hormanns cusy GmbH, Berlin Vortrag OpenRheinRuhr 5./6. November 2016 de.slideshare.net/cusyio/continuous-everything Kapitel you

Mehr

Build Management Tool?

Build Management Tool? Build Management Tool? Funktionen Dependency Management Kompiliert den Sourcecode in Binaries Führt automatisierte Tests aus Installiert Software oder Lädt sie in Repositories Erstellt eine Dokumentation

Mehr

Operation am offenen Herzen

Operation am offenen Herzen Operation am offenen Herzen Case Study zur erfolgreichen JEE-7 Migration Dirk Ehms, GameDuell GmbH GameDuell Plattform Topologie Classic Platform Social Platform 64x Frontend Server OpenMQ 16x Frontend

Mehr

Schritt 4: Hallo Enterprise Bean

Schritt 4: Hallo Enterprise Bean Prof. Dr. Th. Letschert FB MNI JEE Schritt 4: Hallo Enterprise Bean Einstieg: EJBs erzeugen und nutzen Meine erstes EJB Projekt Enterprise Beans sind eine Backend Technologie, die mit unterschiedlichen

Mehr

Build Management Tool

Build Management Tool Build Management Tool Build-Prozess? Source Code 3rd Party libraries Veröffentlichung Download all 3rd Party libs by hand Compile your sources: javac -sourcepath./src1;./src2 Byte Code -cp lib1.jar;lib2.jar

Mehr

Gradle 2.0. Ab in den siebten Himmel 34 Best Practices: WildFly-8- Installationen verwalten 40. Multi-Browser-Tab-Support 50

Gradle 2.0. Ab in den siebten Himmel 34 Best Practices: WildFly-8- Installationen verwalten 40. Multi-Browser-Tab-Support 50 Micro Batch Services powered by Spring Boot 58 JAVA Mag 10.2014 magazin Java Architekturen Web Agile www.javamagazin.de Semantic Versioning Gradle 2.0 Sinn für die Versionsnummer 12 Die neuen Features

Mehr

Vernetzte Gebäudereinigung - Aufbau einer Cloud-Lösung

Vernetzte Gebäudereinigung - Aufbau einer Cloud-Lösung IT-Development & Consulting Vernetzte Gebäudereinigung - Aufbau einer Cloud-Lösung 08. März 2018 it-people it-solutions Übersicht I Fachliche Problemstellung und Zielsetzung unseres Projekts I Technische

Mehr

Build Management Tool?

Build Management Tool? Build Management Tool? Funktionen Dependency Management Kompiliert den Sourcecode in Binaries Führt automatisierte Tests aus Installiert Software oder Lädt sie in Repositories Erstellt eine Dokumentation

Mehr

Referat. Continuous Integration. mit Maven und Jenkins. Benjamin Keeser. Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master)

Referat. Continuous Integration. mit Maven und Jenkins. Benjamin Keeser. Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master) # Entwicklung verteilter Java Anwendungen # Referat Continuous Integration mit Maven und Jenkins Benjamin Keeser Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master) 2 Ablauf... Continuous

Mehr

Continuous Integration mit GitLab CI. Christine Koppelt Philipp Haußleiter GUUG-Frühjahrsfachgespräch 1. März 2018

Continuous Integration mit GitLab CI. Christine Koppelt Philipp Haußleiter GUUG-Frühjahrsfachgespräch 1. März 2018 Continuous Integration mit GitLab CI Christine Koppelt Philipp Haußleiter GUUG-Frühjahrsfachgespräch 1. März 2018 Continuous Integration (CI) Continuous Integration (CI) Sourcecode Source Repository Deploybare

Mehr

Platform as a Service (PaaS) & Containerization

Platform as a Service (PaaS) & Containerization Platform as a Service (PaaS) & Containerization Open Source Roundtable Bundesverwaltung; Bern, 23. Juni 2016 André Kunz Chief Communications Officer Peter Mumenthaler Head of System Engineering 1. Puzzle

Mehr

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder

OSGi. The Next Generation Java Service Platform. SOA - The Java Way or My classpath is killing me. Michael Greifeneder Michael Greifeneder OSGi The Next Generation Java Service Platform SOA - The Java Way or My classpath is killing me Bilder von Peter Kriens W-JAX Keynote 2007 und Neil Bartletts Getting Started with OSGi

Mehr

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012 Buildsystem Maven & Scons Controls Entwicklungsforum Januar 2012 1 2 a call from the past Binary Repository Speichern von Artefakten (z.b. Shared Library und zugehörige Header) Versionierung von Artefakten

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 2. Einführung Java EE 5 Plattform 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5.

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

Erhöhe den Nutzen deines Dienstes

Erhöhe den Nutzen deines Dienstes Erhöhe den Nutzen deines Dienstes Qualitätskontrolle für OGC-konforme Geodatendienste mit TEAM Engine von Dirk Stenger (stenger@lat-lon.de) 1 Agenda 1. Einleitung 2. TEAM Engine 3. OGC Testsuites für die

Mehr

Serverless Computing mit AWS-Lambda

Serverless Computing mit AWS-Lambda Die Beschaffungsplattform für Geschäftskunden Serverless Computing mit AWS-Lambda Jörg Adler und Benjamin Otto, 29.9.2017 Wir @ Mercateo Mercateo ist Europas führende Beschaffungsplattform. > 1 Mio. Geschäftskunden

Mehr

Der Weisheit letzter Schluss:

Der Weisheit letzter Schluss: Der Weisheit letzter Schluss: Maven 2 in der Java Entwicklung Web Site: www.soebes.de Blog: blog.soebes.de Email: info@soebes.de Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1. Was ist Maven? 2. Features von

Mehr

Enterprise JavaBeans Überblick: 8. Test-Driven Development. 8.1 Einleitung 8.2 Beispiel 8.3 Anwendung mit Eclipse und dem JBoss Application Server

Enterprise JavaBeans Überblick: 8. Test-Driven Development. 8.1 Einleitung 8.2 Beispiel 8.3 Anwendung mit Eclipse und dem JBoss Application Server Enterprise JavaBeans Überblick 1. Überblick Komponententechnologien 2. Einführung 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

DOTS - reloaded. EntwicklerCamp René Winkelmeyer midpoints GmbH

DOTS - reloaded. EntwicklerCamp René Winkelmeyer midpoints GmbH DOTS - reloaded EntwicklerCamp 2014 René Winkelmeyer midpoints GmbH Über mich midpoints GmbH http://www.midpoints.de IBM Advanced Business Partner IBM Design Partner Services Notes / Domino Consulting

Mehr

Tobias Flohre / Dennis Schulte codecentric AG. Spring Batch Performance und Skalierbarkeit

Tobias Flohre / Dennis Schulte codecentric AG. Spring Batch Performance und Skalierbarkeit Tobias Flohre / Dennis Schulte Spring Batch Performance und Skalierbarkeit Dennis Schulte Düsseldorf @denschu www.github.com/denschu blog.codecentric.de/author/dsc tel +49 (0) 1515 _ 288 2395 dennis.schulte@codecentric.de

Mehr

Dominik Helleberg inovex GmbH. Auf Augenhöhe mit Android Studio und Gradle

Dominik Helleberg inovex GmbH. Auf Augenhöhe mit Android Studio und Gradle Dominik Helleberg inovex GmbH Auf Augenhöhe mit Android Studio und Gradle Dominik Helleberg Mobile Development Android / Embedded Tools http://dominik-helleberg.de/+ The new Dream Team Gradle + Android

Mehr

Hinter den Kulissen: Die Magie von Spring Boot

Hinter den Kulissen: Die Magie von Spring Boot Leipzig, 12. April 2018 JUG Saxony Hinter den Kulissen: Die Magie von Spring Boot Michael Simons @rotnroll666 INNOQ Beratung Konzeption Entwicklung Training 3 Über mich Michael Simons Senior Consultant

Mehr

Continuous Integration mit GitLab CI Christine Koppelt Open-Source-Treffen, 26. Januar 2018

Continuous Integration mit GitLab CI Christine Koppelt Open-Source-Treffen, 26. Januar 2018 Continuous Integration mit GitLab CI Christine Koppelt christine.koppelt@gmail.com Open-Source-Treffen, 26. Januar 2018 Continuous Integration Softwareentwicklung & Deployment Aufgaben eines Continuous

Mehr

Die Magie von MBeans und JMX. DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV

Die Magie von MBeans und JMX. DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV Die Magie von MBeans und JMX DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV Bio Andreas Chatziantoniou Freelance Oracle Fusion Middleware Consultant 16 Jahre Oracle Erfahrung/26 Jahre IT (Unix/C) Oracle

Mehr

CI von Eclipse RCP Anwendungen mit Gradle/Jenkins

CI von Eclipse RCP Anwendungen mit Gradle/Jenkins Make Catchphrase Eclipse RCP gradle again CI von Eclipse RCP Anwendungen mit Gradle/Jenkins Johannes Tandler Michael Barth 09.03.2017 Dresden Agenda 1. Eclipse IDE 2. Eclipse RCP 3. Repositories I 4. Architecture

Mehr

Brownbag Zieht den Helm auf

Brownbag Zieht den Helm auf Brownbag Zieht den Helm auf Helm The Kubernetes Package Manager Karlsruhe, 30.5.2017 Ablauf Kurz Kubernetes Warum wird Helm benötigt? Was ist Helm? Was sind Helm Charts? Demo 2 Kubernetes Allgemein Tool

Mehr

Continuous Integration ist nicht schwer Hudson, Plugins, Skripte umrühren und fertig

Continuous Integration ist nicht schwer Hudson, Plugins, Skripte umrühren und fertig Beratung Software Lösungen Continuous Integration ist nicht schwer Hudson, Plugins, Skripte umrühren und fertig Andreas Koop Consultant Oracle Technologies TEAM GmbH Über mich Andreas Koop Diplom-Informatiker

Mehr

Das neue Android Build System

Das neue Android Build System Das neue Android Build System Besser Builden mit Gradle JUGS Event, 18. Juni 2015 Kaspar von Gunten, Ergon Informatik AG whois( kvg ) Software-Engineering seit 2002 Entwicklung in Java (Client/Server,

Mehr

Continuous Delivery mit OpenShift, 2nd Edition

Continuous Delivery mit OpenShift, 2nd Edition Daniel Tschan CTO Continuous Delivery mit OpenShift, 2nd Edition OpenShift Tech Lab, Bern, 27.10.2014 1 Grundlagen Kleine Geschichte «Integration Hell» und «Works on My Machine» 1991: Object Oriented Design:

Mehr

Maven 2.0. DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH. 2008 codecentric GmbH

Maven 2.0. DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH. 2008 codecentric GmbH Maven 2.0 DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH Agenda Einführung Project Object Model (POM) Repositories Maven und Eclipse Maven - LIVE 1. EINFÜHRUNG Einführung - Was

Mehr

docker.io @ CentOS 7 Secure And Portable Containers Made Easy Jürgen Brunk Köln, 04.08.2014

docker.io @ CentOS 7 Secure And Portable Containers Made Easy Jürgen Brunk Köln, 04.08.2014 docker.io @ CentOS 7 Secure And Portable Containers Made Easy Jürgen Brunk Köln, 04.08.2014 Agenda 1. Was ist Docker? 2. Was sind Container? 3. Warum Docker? 4. Architektur 5. Praxis 6. Docker unter CentOS

Mehr

Operation am offenen Herzen

Operation am offenen Herzen Operation am offenen Herzen Praxisbericht einer erfolgreichen JEE-7 Migration Dirk Ehms, GameDuell GmbH GameDuell Plattform Topologie Classic Platform Social Platform 64x Frontend Server OpenMQ 16x Frontend

Mehr

Pre-tested commit 2.0 mit Gerrit und Jenkins

Pre-tested commit 2.0 mit Gerrit und Jenkins Pre-tested commit.0 mit und Orientation in Objects GmbH Weinheimer Str. 68 6809 Mannheim Steffen Schäfer Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Pre-tested commit und Pre-tested commit

Mehr

Agenda. Anwendungsfälle. Integration in Java

Agenda. Anwendungsfälle. Integration in Java Florian Hopf @fhopf Agenda Anwendungsfälle Integration in Java Agenda Vorbereitung Installation # download archive wget https://download.elastic.co/ elasticsearch/elasticsearch/elasticsearch-1.7.1.zip

Mehr

Continuous Integration in JBF. Johannes Kellner

Continuous Integration in JBF. Johannes Kellner Continuous Integration in JBF Johannes Kellner Ziel dieses Vortrags Betrachtung der Entwicklung des JBF Buildmanagements Nutzen und Aufwand für Continuous Integration einschätzen Betrachtung der genutzten

Mehr

Eclipse, Spring und OSGi 1

Eclipse, Spring und OSGi 1 Eclipse, Spring und OSGi Eclipse, Spring und OSGi 1 Was erwartet Sie? Wer ist t&p? Wie war die Ausgangslage? Wie sieht die Architektur der migrierten Applikation aus? Welche Rolle spielen Eclipse, Spring

Mehr

Programmieren II. Exkurs: Apache Maven. Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Programmieren II. Exkurs: Apache Maven.  Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft Programmieren II Exkurs: Apache Maven KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Agenda Einführung in Apache Maven Was ist Apache Maven? Verwendung Einbindung in IDE APACHE

Mehr

Docker für Java Entwickler

Docker für Java Entwickler Wir unternehmen IT. Docker für Java Entwickler Dr. Roland Huß, ConSol* Software GmbH JavaLand, 24.3.2015 Agenda Docker Crash Intro Docker für Java Entwickler Integrationstests Paketierung von Anwendungen

Mehr

Schedulingund Thread-Ausführer

Schedulingund Thread-Ausführer Schedulingund Thread-Ausführer Scheduling Ein Scheduler arbeitet Programmstücke nach einer festen Zeitspanne oder zu einer fixen Zeitpunkt wiederholt oder einmal ab. Notwendigkeiten für Scheduling sind

Mehr

Build-Pipeline mit Jenkins

Build-Pipeline mit Jenkins JUG Augsburg 24.10.2013 Seite 1 Wer sind wir? Agiler Architekt und Entwickler Eigenes Produkt mit kompletter Pipeline / CD aktuell: Architekt / Entwickler in einem großen Entwicklungsprojekt im Automotiv

Mehr

Aspektorientierte Middleware Florian Wagner

Aspektorientierte Middleware Florian Wagner Anwendungen der Aspektorientierung (5) Übersicht Middleware? Middleware-Concerns Java 2 Enterprise Edition AO Implementierung AOP & JBoss 2 mid dle ware (mĭd'l-wâr') n. Software that serves as an intermediary

Mehr

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit und ein Traumpaar für Pre-Tested Commit Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Steffen Schäfer Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Pre-tested commit und

Mehr

Teile und herrsche: Integration und Automatisierung der Tools im Entwicklerstack

Teile und herrsche: Integration und Automatisierung der Tools im Entwicklerstack Teile und herrsche: Integration und Automatisierung der Tools im Entwicklerstack Dr.-Ing. Dehla Sokenou, Carsten Pfeiffer GEBIT Solutions GmbH Typische Projektlandschaft (?) locker 150 Projekte im Workspace,

Mehr

Continuous Integration (CI) Workshop

Continuous Integration (CI) Workshop Continuous Integration (CI) Workshop Seminarunterlage Version: 1.05 Version 1.05 vom 28. Februar 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen 2 Oracle übergibt in Absprache mit IBM und Red Hat die Weiterentwicklung von Java EE an die Eclipse Foundation keine Abhängigkeit von

Mehr

Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de

Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de ADF Spotlight - Entwicklungswerkzeuge & - methoden - ADF 12c mit Git, Maven & Co. - Status Quo Ulrich Gerkmann-Bartels Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de +++ Bitte

Mehr

CamelCaseCon 2011 Vortrag von Stefan Glase am 07.09.2011. Statische Code-Analyse für Groovy & Grails mit CodeNarc

CamelCaseCon 2011 Vortrag von Stefan Glase am 07.09.2011. Statische Code-Analyse für Groovy & Grails mit CodeNarc Statische Code-Analyse für Groovy & Grails mit CodeNarc CamelCaseCon 2011 Vortrag von Stefan Glase am 07.09.2011 OPITZ CONSULTING GmbH 2011 Folie 1 Stefan Glase, OPITZ CONSULTING Software-Entwickler Java

Mehr

Ohne Build geht's besser: Makeloses Java mit dem z 2 -Environment. Henning Blohm 5.7.2012

Ohne Build geht's besser: Makeloses Java mit dem z 2 -Environment. Henning Blohm 5.7.2012 Ohne Build geht's besser: Makeloses Java mit dem z 2 -Environment Henning Blohm 5.7.2012 1 Z2 ist ein radikal neuer* Ansatz für System Life-Cycle Management in Java * jedenfalls für Java Ein Builtool?

Mehr

Backend as a Service: Neues Geschäftsfeld für die Cloud 64. NoSQL mit Cassandra. Skalierungssieger auf der ganzen Linie 48

Backend as a Service: Neues Geschäftsfeld für die Cloud 64. NoSQL mit Cassandra. Skalierungssieger auf der ganzen Linie 48 Backend as a Service: Neues Geschäftsfeld für die Cloud 64 Java Mag 11.2013 magazin Java Architekturen Web Agile www.javamagazin.de Tomcat 8 Erste Rauchzeichen der neuen Version 14 NoSQL mit Cassandra

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 12: Metawissen Java Bibliotheken, Maven Robert Jakob Albert-Ludwigs-Universität Freiburg, Germany SS 2013 Robert Jakob (Univ. Freiburg) Programmieren in Java JAVA 1 / 33

Mehr

Make-loses Java für mehr Produktivität: Das z 2 -Environment. Henning Blohm 25.6.2012

Make-loses Java für mehr Produktivität: Das z 2 -Environment. Henning Blohm 25.6.2012 Make-loses Java für mehr Produktivität: Das z 2 -Environment Henning Blohm 25.6.2012 1 Z2 ist ein radikal neuer* Ansatz für System Life-Cycle Management in Java * jedenfalls für Java Oh je noch ein Tool?

Mehr

Enterprise Java, Services und Systemintegration. Java EE Quo Vadis? Vorstellung. Software-Architekt, Entwickler und Trainer Fachliche Schwerpunkte

Enterprise Java, Services und Systemintegration. Java EE Quo Vadis? Vorstellung. Software-Architekt, Entwickler und Trainer Fachliche Schwerpunkte Enterprise Java, Services und Systemintegration Java EE Quo Vadis? http://www.frotscher.com @thfro thilo@frotscher.com Vorstellung Software-Architekt, Entwickler und Trainer Fachliche Schwerpunkte Enterprise

Mehr

Renée Bäcker. Perl $foo Magazin

Renée Bäcker. Perl $foo Magazin Renée Bäcker Renée Bäcker Perl Renée Bäcker Perl $foo Magazin Renée Bäcker Perl $foo Magazin OTRS Renée Bäcker Perl $foo Magazin OTRS u.v.m Früher... Am Anfang steht der Kunde... dann kommt der Auftrag

Mehr

Java Batch Der Standard für's Stapeln

Java Batch Der Standard für's Stapeln Java Batch Der Standard für's Stapeln Berlin Expert Days 18.09.2015 Dirk Weil, GEDOPLAN GmbH Dirk Weil GEDOPLAN GmbH, Bielefeld GEDOPLAN IT Consulting Konzeption und Realisierung von IT-Lösungen GEDOPLAN

Mehr

It's time to rethink Datenbank-Design in der schönen neuen Welt

It's time to rethink Datenbank-Design in der schönen neuen Welt It's time to rethink Datenbank-Design in der schönen neuen Welt Java User Group Kaiserslautern 2016 Version: 1.2 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr

Mehr

Inhaltsverzeichnis. 2.2 Grundlagen der UML... 41. 2.3 Zusammenfassung... 53

Inhaltsverzeichnis. 2.2 Grundlagen der UML... 41. 2.3 Zusammenfassung... 53 Vorwort......................................................... 13 1 Vorbereitungen.................................................. 17 1.1 JDK-Installation unter Windows................................

Mehr

Projektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi

Projektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi Projektgruppe Thomas Kühne Komponentenbasiertes Software Engineering mit OSGi Anforderungen der PG IDSE an ein Komponenten- Client Nativer Client Web Client Alternativen IDSE Nutzer Szenario Pipe IDSE

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Continuous Delivery mit OpenShift

Continuous Delivery mit OpenShift Daniel Tschan Technischer Leiter Continuous Delivery mit OpenShift Puzzle Tech Talk, Bern, 23.10.2014 1 Grundlagen Kleine Geschichte «Integration Hell» und «Works on My Machine» 1991: Object Oriented Design:

Mehr

APEX OOS TOOLS & HELFER

APEX OOS TOOLS & HELFER APEX OOS TOOLS & HELFER About me Oracle > 8 Jahre APEX > 8 Jahre Freelancer seit 2016 Vorher APEX Entwickler im Versicherungsumfeld aktiver Open Source Entwickler auf Github Mit-Entwickler von apex.world!

Mehr

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit und ein Traumpaar für Pre-Tested Commit Orientation in Objects GmbH Weinheimer Str. 68 6809 Mannheim Steffen Schäfer Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Pre-tested commit und Pre-tested

Mehr

v i r t u a l 7 G m b H Consulting- und Softwarepartner Unternehmergeführt 1996 gegründet 85 Mitarbeiter 1 Team aus Spezialisten W E R W I R S I N D

v i r t u a l 7 G m b H Consulting- und Softwarepartner Unternehmergeführt 1996 gegründet 85 Mitarbeiter 1 Team aus Spezialisten W E R W I R S I N D v i r t u a l 7 G m b H Consulting- und Softwarepartner Unternehmergeführt 1996 gegründet 85 Mitarbeiter 1 Team aus Spezialisten W E R W I R S I N D K A R L S R U H E 50 Mitarbeiter Consulting Development

Mehr

Integration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components

Integration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components Integration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components Integration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components

Mehr

Eine Einführung, aktuell zur Version An imprint of Pearson Education

Eine Einführung, aktuell zur Version An imprint of Pearson Education 8» Kai Uwe Bachmann Maven 2 Eine Einführung, aktuell zur Version 2.0.9 A VV ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico

Mehr

Katello / Pulp / Candlepin

Katello / Pulp / Candlepin Katello / Pulp / Candlepin OSDCM: Repository Management Jürgen Brunk München, 23.05.2014 Agenda 1. Was ist Katello? 2. Übersicht 3. Architektur 4. Software Stack 5. Umgebung 6. Was ist Pulp? 7. Was ist

Mehr

Martin. Spiller. Maven 3. Konfigurationsmanagement mit Java

Martin. Spiller. Maven 3. Konfigurationsmanagement mit Java Martin Spiller Maven 3 Konfigurationsmanagement mit Java Danksagungen............................................ 17 Vorwort.................................................. 19 1 Einführung...............................................

Mehr

Mit dem Google-Web-Toolkit moderne Web-Anwendungen entwickeln

Mit dem Google-Web-Toolkit moderne Web-Anwendungen entwickeln Mit dem Google-Web-Toolkit moderne Web-Anwendungen entwickeln Ziel dieses Vortrags Ich möchte Sie davon überzeugen, dass das Google-Web-Toolkit (GWT) das aktuell beste Tool zur Erstellung von modernen

Mehr

VAADIN, SPRING BOOT & REST

VAADIN, SPRING BOOT & REST VAADIN, SPRING BOOT & REST Ein Einstieg für Domino Entwickler Stephan Kopp 1 STEPHAN KOPP Software & Solutions Development Tel.: +49 6182 7869420 Mobil: +49 173 3089806 E-Mail: stephan.kopp@axians.de 2

Mehr

Automatisierter Java EE Entwicklungs-Lifecycle mit WebLogic Server 12c. Robin Müller-Bady Systemberater, Oracle Deutschland

Automatisierter Java EE Entwicklungs-Lifecycle mit WebLogic Server 12c. Robin Müller-Bady Systemberater, Oracle Deutschland Automatisierter Java EE Entwicklungs-Lifecycle mit WebLogic Server 12c Robin Müller-Bady Systemberater, Oracle Deutschland The following is intended to outline our general product direction. It is intended

Mehr

Operation am offenen Herzen

Operation am offenen Herzen Operation am offenen Herzen Dirk Ehms GameDuell GmbH Berlin Schlüsselworte Migration, High Availability, Zero Downtime, Glassfish, JEE7, Continuous Delivery, Maven Einleitung Dieser Praxisbericht basiert

Mehr

... Created by Michael Kirsch & Beat Rossmy

... Created by Michael Kirsch & Beat Rossmy PROCESSING... Created by Michael Kirsch & Beat Rossmy INHALT JAVAFX WIE KÖNNEN WIR IN JAVA GRAFISCHEN OUTPUT ERZEUGEN? JAVAFX JavaFX ist ein Framework, dass es uns ermöglicht gra sche Elemente und die

Mehr

Model-Driven Development in der Praxis. mit objectif. Herzlich willkommen

Model-Driven Development in der Praxis. mit objectif. Herzlich willkommen Model-Driven Development in der Praxis mit objectif Herzlich willkommen Die Themen: microtool stellt sich vor live Model-Driven Development die Grundlagen Model-Driven Development von Web-Anwendungen in

Mehr

Daniel Tschan Technischer Leiter. Continuous Delivery mit OpenShift

Daniel Tschan Technischer Leiter. Continuous Delivery mit OpenShift Daniel Tschan Technischer Leiter Continuous Delivery mit OpenShift Puzzle Tech Talk, Bern, 30.10.2014 Geschichte Integration Hell und «works on my machine» 1991: Object Oriented Design: With Applications

Mehr

Softwareprojekte mit Kultur

Softwareprojekte mit Kultur Maven Softwareprojekte mit Kultur Patrick Zeising Konfigurationsmanagement Motivation Projektaufbau unterschiedlich Abläufe zum Übersetzen und Deployen unterschiedlich Verwendete Tools, Prozesse, Skripte

Mehr

Modulare Anwendungen und die Lookup API. Geertjan Wielenga NetBeans Team Deutschsprachige Überarbeitung, Aljoscha Rittner NetBeans Dream Team

Modulare Anwendungen und die Lookup API. Geertjan Wielenga NetBeans Team Deutschsprachige Überarbeitung, Aljoscha Rittner NetBeans Dream Team Modulare Anwendungen und die Lookup API Geertjan Wielenga NetBeans Team Deutschsprachige Überarbeitung, Aljoscha Rittner NetBeans Dream Team Die Notwendigkeit modularer Anwendungen Die Notwendigkeit modularer

Mehr

Continuous Delivery. für Java Anwendungen. Axel Fontaine 28.10.2010. Software Development Expert

Continuous Delivery. für Java Anwendungen. Axel Fontaine 28.10.2010. Software Development Expert 28.10.2010 Continuous Delivery für Java Anwendungen Axel Fontaine Software Development Expert twitter.com/axelfontaine blog.axelfontaine.eu business@axelfontaine.eu Ceci n est pas une build tool. Ceci

Mehr

Docker für Entwickler

Docker für Entwickler Docker für Entwickler Dr. Roland Huß, ConSol* Software GmbH Seamless DevOps Day, 16. April 2015 Agenda Docker Crash Intro Docker für Java Entwickler Integrationstests Anwendungs-Paketierung docker-maven-plugin

Mehr

Dr. Roland Huß, ConSol* (@ro14nd) Docker für Java-Entwickler

Dr. Roland Huß, ConSol* (@ro14nd) Docker für Java-Entwickler Dr. Roland Huß, ConSol* (@ro14nd) Docker für Java-Entwickler Docker Crash Intro Agenda Docker für Java Entwickler Integrationstests Anwendungs-Paketierung docker-maven-plugin Demo Roland Huß ro14nd @ Java

Mehr

AVID-Übung 3. EJB mit JBoss und Eclipse. 17. Juni Andreas I. Schmied Abteilung Verteilte Systeme Projektgruppe AspectIX

AVID-Übung 3. EJB mit JBoss und Eclipse. 17. Juni Andreas I. Schmied Abteilung Verteilte Systeme Projektgruppe AspectIX Abteilung Verteilte Systeme Projektgruppe AspectIX Universität Ulm Fakultät für Informatik AVID-Übung 3 EJB mit JBoss und Eclipse 17. Juni 2004 Andreas I. Schmied (schmied@inf...) AVID-Übung 3 Aufgabenstellung

Mehr

Was kann man in APEX automatisieren?

Was kann man in APEX automatisieren? Was kann man in APEX automatisieren? Oleg Kiriltsev Düsseldorf, 10.06.2015 Persönliche Daten Oleg Kiriltsev (31) Dipl.-Inform. Uni Duisburg-Essen Seit März 2013 IT-Berater bei MT AG, Oracle APEX Development

Mehr

Vorbereitung auf die Prüfung. Arthur Zaczek

Vorbereitung auf die Prüfung. Arthur Zaczek Vorbereitung auf die Prüfung Arthur Zaczek Jän 2015 1/38 Einleitung Einleitung 2/38 Inhalt Dieses Dokument soll Ihnen helfen, sich besser auf die Prüfung vorzubereiten. Es wird der Inhalt der LV mit der

Mehr

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sommersemester Michael Theis, Lehrbeauftragter 1

FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sommersemester Michael Theis, Lehrbeauftragter 1 FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Sommersemester 2017 2017 Michael Theis, Lehrbeauftragter 1 2 Java EE Spezifikation definiert ein Programmiermodell für Applikationen

Mehr

Am Ziel angekommen? Über Ant und Maven zu SBT und Gradle. Andreas Hartmann Dr. Halil-Cem Gürsoy adesso AG

Am Ziel angekommen? Über Ant und Maven zu SBT und Gradle. Andreas Hartmann Dr. Halil-Cem Gürsoy adesso AG Am Ziel angekommen? Über Ant und Maven zu SBT und Gradle Andreas Hartmann Dr. Halil-Cem Gürsoy adesso AG Über Ant und Maven zu SBT und Gradle Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr.

Mehr

Enterprise Java, Services und Systemintegration. Zu neuen Ufern. Jakarta EE & MicroProfile. Vorstellung

Enterprise Java, Services und Systemintegration. Zu neuen Ufern. Jakarta EE & MicroProfile. Vorstellung Enterprise Java, Services und Systemintegration Zu neuen Ufern Jakarta EE & MicroProfile http://www.frotscher.com @thfro thilo@frotscher.com Vorstellung Software-Architekt, Entwickler und Trainer Fachliche

Mehr

Modellierung CORBA-basierter Anwendungssysteme mit der UML

Modellierung CORBA-basierter Anwendungssysteme mit der UML Verteidigung der Diplomarbeit über das Thema: Modellierung CORBA-basierter Anwendungssysteme mit der UML Andreas Mucha Technische Universität Dresden Institut für Software- und Multimediatechnik Lehrstuhl

Mehr

Build Management. Präsentation von Daniel Mies daniel.mies@1und1.de

Build Management. Präsentation von Daniel Mies daniel.mies@1und1.de Build Management Präsentation von Daniel Mies daniel.mies@1und1.de Agenda 1&1 Member of United Internet Build Management mit Maven Motivation Kompilieren & Paketieren Dependency Management Software Analyse

Mehr

Eclipse in der Java-Entwicklung

Eclipse in der Java-Entwicklung Patrick Kiwitter Eclipse in der Java-Entwicklung aktuell zur Version 3.4 ^Y '! I rwaddison-wesley An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney

Mehr

Virtual Unified Environments Infrastructure Service Installation und Lifecycle im Oracle Produktumfeld

Virtual Unified Environments Infrastructure Service Installation und Lifecycle im Oracle Produktumfeld www.ise-informatik.de Virtual Unified Environments Infrastructure Service Installation und Lifecycle im Oracle Produktumfeld Andreas Chatziantoniou Fusion Middleware Expert Foxglove-IT BV Matthias Fuchs

Mehr

OSGi: Toolunterstützung und Softwareentwicklungsprozess

OSGi: Toolunterstützung und Softwareentwicklungsprozess OSGi: Toolunterstützung und Softwareentwicklungsprozess Thementag OSGi 03.11.2009 Autor: Thorsten Vogel Agenda Herausforderungen der OSGi Entwicklung: Beispiel Webanwendung Was wird entwickelt? - Bundles

Mehr

Neue Wege mit Contao 4

Neue Wege mit Contao 4 Neue Wege mit Contao 4 Schöne neue PHP-Welt Contao Konferenz 2016 Über mich Andreas Schempp / terminal42 gmbh Schweiz Contao Core Entwickler Vorstand (Schatzmeister) Contao Association Hauptentwickler

Mehr

JAX-RS 2.0 REST mit Java EE 7

JAX-RS 2.0 REST mit Java EE 7 Enterprise Java, Web Services und XML JAX-RS 2.0 REST mit Java EE 7 Java User Group Darmstadt 13. Juni 2013 http://www.frotscher.com thilo@frotscher.com Vorstellung Freiberuflicher Softwarearchitekt und

Mehr

Vaadin 8 What s new Jakob Magun, Benjamin Schupp

Vaadin 8 What s new Jakob Magun, Benjamin Schupp Vaadin 8 What s new 26.09.2017 Jakob Magun, Benjamin Schupp Vaadin Release 8 Was bringt die Version 8 von Vaadin mit sich? Was bedeutet dies für meine Projekte? mp technology AG / 2 Recap: Neu in Vaadin

Mehr

Gemeinsam mehr erreichen.

Gemeinsam mehr erreichen. Gemeinsam mehr erreichen. Mavenize SOA Templates Nürnberg 19. November 2015 "Mit unserer Begeisterung für führende Technologien vernetzen wir Systeme, Prozesse und Menschen. EINFACH MEHR > BEGEISTERUNG

Mehr