Apache Karaf Track
Tuesday 16:55 UTC
Apache Karaf, multi purpose runtime
JB Onofré
Apache Karaf is a perfect runtime for the cloud supporting several kind of programming model. While OSGi is supported for a while, now Karaf evolved to support new kind of framework like CDI, or even Spring Boot. Thanks for that, Karaf is a perfect multi purpose and multi tenant runtime, providing bunch of ready to use features.
JB is ASF member, PMC Chair for Apache Karaf and involve in about 20 Apache projects.
Tuesday 17:35 UTCDesign Resilient Microservices using Apache Karaf and CXF: practical experience
Andrei Shakirin
Development team just has finished the last feature after months of hard work. Does this mean the software is production ready now? What aspects need to be considered before deployment your Microservices to the production environment? What should you do in emergency situations on production? How to make your software more reliable and resilient by deployment in Cloud? What are the stability and resiliency patterns and anti-patterns? All these questions will be addressed in the talk. Based on practical experience, presenter will demonstrate the best engineering practices to design resilient software using Apache Karaf, CXF, Kafka, ActiveMQ and illustrate them with real life cases. The following topics will be covered in presentation: • Stability anti-patterns (chain reactions, cascading failures, blocked threads) • Stability patterns (Timeouts, Circuit Breaker, Bulkheads, Fail Fast, Async) • Clustering and Load Balancing • Logging and Monitoring • Production Diagnostic • Pooling and Caching • Load and Stress Testing
Andrei is a software architect in the Talend team developing the open source Application Integration platform based on Apache projects. The areas of his interest are REST API design, Microservices, Cloud, resilient distributed systems, security and agile development. Andrei is PMC and committer of Apache CXF and committer of Syncope projects. He is member of OASIS S-RAMP Work Group and speaker at Java and Apache conferences. Last speaking experience: • DOAG 2019, Nov 2019, Nurnberg, Design Production-Ready Software • Karlsruhe Entwickertag 2017, Mai 2017, Karlsruhe, Microservices with OSGi • ApacheCon Europe 2016, Nov 2016, Seville, Microservices with Apache Karaf and Apache CXF: Practical Experience • ApacheCon Europe 2015, Oct 2015, Budapest, Create and Secure Your REST API with Apache CXF • ApacheCon Europe 2014, Nov 2014, Budapest, Design REST Services With CXF JAX-RS Implementation: Lessons Learned • WJAX 2011, Nov 2011, Munich, Apache Days, Enabling Services with Apache CXF
Tuesday 18:15 UTCWill it blend? Java agents and OSGi
Robert Munteanu
Java agents are a little-known but extremely powerful part of the Java ecosystem. Agents are able to transform existing classes at runtime, allowing scenarios such as logging and monitoring, hot reload or gathering code coverage. However, their usage presents a number of pitfalls as well. In this talk we will present the steps of writing a java agent from scratch, indicate various common mistakes and pain points and draw conclusions on best practices. Special care will be taken to discuss how running in an OSGi environment affects Java agents and how we can best approach integration testing in a modular environment. After this talk participants will have a better understanding of the Java instrumentation API, how it fits in with OSGi runtimes and about should / should not be done with it.
Working as a Senior Computer Scientist in the AEM Cloud Foundation team at Adobe, Robert Munteanu is a software developer with a passion for open source. He is a member of the Apache Software Foundation and frequent contributor to many open source projects, notably Apache Sling and Apache Jackrabbit. Robert is a frequent conference speaker, having spoken at Devoxx, ApacheCon and EclipseCon, amongst others.
Tuesday 18:55 UTCNetflix: Finding middle ground between monolithic and microservice architectures.
Dmitry Vasilyev, Saeid Mirzaei, George Ye
The world of business applications is evolving. Monolithic applications are being split up into smaller microservices and deployed into virtualized environments. Engineers are striving to achieve responsiveness, resilience and elasticity at the same time improving separation of concerns and deployments via CI. The tradeoffs are usually more complex operations, harder dependency testability, lower developer productivity in some cases and cognitive overhead as well as infrastructure costs. We will discuss how our team at Netflix is settling in the middle between monolithic and microservice architectures getting the best of the two worlds. We’ll go through different phases of the application development lifecycle from initiation to production deployment as well as we’ll talk how Apache Karaf enables us to achieve the aforementioned properties of the systems we build.
Dmitry Vasilyev, Saeid Mirzaei, George Ye