OSGi Community Event 2018 Presentation by Jurgen Albert (Data In Motion Consulting GmbH)
Abstract: OSGi is often conceived as a tool to write efficient Java Applications for resource limited Devices or If resources are a real issue in complex applications. On the other hand Microservices became the buzzword of the cloud and is often implemented using Spring or other Programming languages. OSGi carries the concept of microservices in its core and is therefore much better suited to the task then most other approaches. This talk will show you how a service can be built with a real-worldish use case, leveraging the power of OSGi R7. It will show the combined usage of PushsStreams, the JaxRS Whiteboard, the configurator, remote deployment and a lot of the other cool things OSGi has to offer.
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...mfrancis
OSGi Community Event 2018 Presentation by Mark Hoffmann (Data In Motion)
Abstract: This talk will show you how the EMF framework can be used in pure OSGi environments other than Equinox. We will introduce you into free configurable ResourceSets and the principle of a ResourceSetFactory. This enables your application to have multiple tenants with different model visibillity. The profit of OSGi services provides a behavior where even models can come and go all the time.
We will also give you look inside, how easy it is to extend the default code generation process of EMF to generate OSGi service component that handle the model registration in an OSGi way.
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...mfrancis
OSGi Community Event 2018 Presentation by Udo Hafermann (Software AG)
Abstract: In this talk we will share our experiences in developing a tool chain from classes, to bundles, to containers, to systems.
OSGi and Docker come together in a compelling way where the former provides modularity "in the small" and the latter "modularity in the large". We discover how the unique characteristics of OSGi enable a smooth transition from small to large.
The resulting environment enables developers to grow distributed systems on their local machine and test them with plain JUnit at all levels of granularity - classes to systems. During development OSGi enables the tool chain to update the system without container rebuilds.
While an increase in productivity is one benefit of such an environment, an arguably more important benefit is the way it empowers developers to gain new insights.
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...mfrancis
OSGi Community Event 2018 Presentation by Tim Verbelen (imec) & Jan S. Rellermeyer (TU Delft)
Abstract: With the proliferation of cloud computing and more recently mobile and edge computing, there is a increasing demand to build flexible and robust distributed applications. The OSGi service and module technology is a key enabler for such deployment. Recent additions to the OSGi standards provide a set of services that provide interfaces for managing distributed instances of OSGi frameworks. The REST Service (added in R6 compendium) offers an easy and language-independent way to manage bundes and introspect services from outside the network. The Cluster Information specifications (added in R7 compendium) provide means for applications to manage and monitor the deployment intrinsically, building on top of the Remote Service specifications. In the Eclipse Concierge project, we have provided the reference implementations of both specifications. In this talk, we will show how the services can be used to build distributed applications that benefit from the OSGi modularity.
[WSO2Con EU 2018] Deploying Applications in K8S and DockerWSO2
Within the last four years container technologies have become very popular. A lot of companies and developers are now using containers to ship their applications. Docker provides an easy-to-use packaging model to bundle the application. However in many cases, a single container is not enough to run an application. It requires multiple containers, scaled into multiple host machines to become a production grade deployment. Kubernetes is an open source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery. This presentation discusses best practices of deploying application in Docker and Kubernetes while discussing Docker and Kubernetes concepts.
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...mfrancis
OSGi Community Event 2018 Presentation by Mark Hoffmann (Data In Motion)
Abstract: This talk will show you how the EMF framework can be used in pure OSGi environments other than Equinox. We will introduce you into free configurable ResourceSets and the principle of a ResourceSetFactory. This enables your application to have multiple tenants with different model visibillity. The profit of OSGi services provides a behavior where even models can come and go all the time.
We will also give you look inside, how easy it is to extend the default code generation process of EMF to generate OSGi service component that handle the model registration in an OSGi way.
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...mfrancis
OSGi Community Event 2018 Presentation by Udo Hafermann (Software AG)
Abstract: In this talk we will share our experiences in developing a tool chain from classes, to bundles, to containers, to systems.
OSGi and Docker come together in a compelling way where the former provides modularity "in the small" and the latter "modularity in the large". We discover how the unique characteristics of OSGi enable a smooth transition from small to large.
The resulting environment enables developers to grow distributed systems on their local machine and test them with plain JUnit at all levels of granularity - classes to systems. During development OSGi enables the tool chain to update the system without container rebuilds.
While an increase in productivity is one benefit of such an environment, an arguably more important benefit is the way it empowers developers to gain new insights.
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...mfrancis
OSGi Community Event 2018 Presentation by Tim Verbelen (imec) & Jan S. Rellermeyer (TU Delft)
Abstract: With the proliferation of cloud computing and more recently mobile and edge computing, there is a increasing demand to build flexible and robust distributed applications. The OSGi service and module technology is a key enabler for such deployment. Recent additions to the OSGi standards provide a set of services that provide interfaces for managing distributed instances of OSGi frameworks. The REST Service (added in R6 compendium) offers an easy and language-independent way to manage bundes and introspect services from outside the network. The Cluster Information specifications (added in R7 compendium) provide means for applications to manage and monitor the deployment intrinsically, building on top of the Remote Service specifications. In the Eclipse Concierge project, we have provided the reference implementations of both specifications. In this talk, we will show how the services can be used to build distributed applications that benefit from the OSGi modularity.
[WSO2Con EU 2018] Deploying Applications in K8S and DockerWSO2
Within the last four years container technologies have become very popular. A lot of companies and developers are now using containers to ship their applications. Docker provides an easy-to-use packaging model to bundle the application. However in many cases, a single container is not enough to run an application. It requires multiple containers, scaled into multiple host machines to become a production grade deployment. Kubernetes is an open source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery. This presentation discusses best practices of deploying application in Docker and Kubernetes while discussing Docker and Kubernetes concepts.
OSDC 2017 - Dr. Udo Seidel - VMwares (open source) Way of ContainerNETWAYS
In the Open Source hypervisor world VMware is not a first class citizen. Things change a lot once you enter the universe of containers. VMware has started its journey there 100% open source and is continueing to do so. The most famous projects are Photon OS and Photon Controller. This talk will give some insights of VMware's way to deal with Containers: for more traditional and for more cloud-native IT landscapes. The focus will be on the Open Source projects mentioned above.
CON6423: Scalable JavaScript applications with Project NashornMichel Graciano
In the age of cloud computing and highly demanding systems, some new approaches for application architectures such as the event-driven model have been proposed and successfully implemented with Node.js. With the Nashorn JavaScript engine, it is possible to run JavaScript applications directly in the JVM, enabling access to the latest Node.js frameworks while taking advantage of the Java platform’s scalability, manageability, tools, and extensive collection of Java libraries and middleware. This session demonstrates how to use Nashorn to create highly scalable JavaScript applications leveraging the full power of the JVM by using the projects Avatar and Node.js with Avatar.js and Vert.x, highlighting their key benefits, issues, and challenges.
A stateful application walks into a Kubernetes bar - Arthur Berezin, JovianX ...Cloud Native Day Tel Aviv
Cloud native applications are commonly thought as stateless, horizontally scalable workloads that you can scale-up and down on-demand. Kubernetes, as the commodity cloud native orchestrator, was originally designed for such workloads. A lot has evolved since Kubernetes’ inception, and nowadays many of the stateful applications are migrating to Kubernetes. While not everything is perfect, more and more features are added to support complex stateful use-cases. In this session Arthur will cover the following topics:
- Breakdown of a stateful application
- Planning a stateful application on Kubernetes
- The state of Kubernetes StatefulSets, Persistent Volumes, DNS, Networking, operators and High Availability
- A practical use-case and DEMO of a stateful application with Kubernetes
Kubernetes is hard! Lessons learned taking our apps to Kubernetes - Eldad Ass...Cloud Native Day Tel Aviv
You might think taking your application to Kubernetes is easy. Just pack them in a Docker container, deploy and you're done!
In reality, the challenges of taking your existing application to the cloud native environment of Kubernetes are huge! They require changes in the way your applications behave and the way you administer them.
Do you really know how to get up and running with your existing applications in Kubernetes?
In this talk I will share my lessons learned taking JFrog's existing applications, prepping and deploying them to Kubernetes.
I'll go over some best practices of preparing your application for Kubernetes with some examples for what we did.
.NET Core is a new framework inside .NET Ecosystem. It helps developers to the new challenges of a Cloud First World, and it is not a replacement for the .NET Framework.
Users need the ability to increase storage space available in oVirt storage data domains (ISCSI & FC) without increasing the number of LUNs presented to it.
Feature Page: http://www.ovirt.org/Features/LUN_Resize
Introduction of the Red Hat OpenShift Service Mesh. What are service meshes? What is the difference between the Red Hat OpenShift Service Mesh and Istio?
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...mfrancis
OSGi requires additional expertise from Java developers. During the first OSGi Code Camp (OCC) [1] organized by OSGi Users’ Forum Germany [2], we tried to bring OSGi beginners and experts together, to learn the core concepts and ideas behind OSGi. There will be a 2nd OSGi Code Camp held on 1st of October in Berlin extending the idea of a software craftsmanship training for OSGi beginners and experts. The first part of the talk describes the agile method we used to teach OSGi core concepts by developing an OSGi demo application in pair-programming mode. In the second part of the talk we will explain how we intend to advance the code camp approach by providing a running example - a Robot running on OSGi [3]. The core OSGi concepts will be demonstrated and teached through extensions to the prepared sample application, developed by the Code Camp participants. The extensions are developed in pairs with one OSGi expert and a beginner. The final part of the talk shows the running interactive 3D robot demo application, and explains which OSGi concepts we think should be added during the next code camp. [1] http://germany.osgiusers.org/Main/SummerOCC2010 |2] http://germany.osgiusers.org [3] http://code.google.com/a/eclipselabs.org/p/occ2010/
OSDC 2017 - Dr. Udo Seidel - VMwares (open source) Way of ContainerNETWAYS
In the Open Source hypervisor world VMware is not a first class citizen. Things change a lot once you enter the universe of containers. VMware has started its journey there 100% open source and is continueing to do so. The most famous projects are Photon OS and Photon Controller. This talk will give some insights of VMware's way to deal with Containers: for more traditional and for more cloud-native IT landscapes. The focus will be on the Open Source projects mentioned above.
CON6423: Scalable JavaScript applications with Project NashornMichel Graciano
In the age of cloud computing and highly demanding systems, some new approaches for application architectures such as the event-driven model have been proposed and successfully implemented with Node.js. With the Nashorn JavaScript engine, it is possible to run JavaScript applications directly in the JVM, enabling access to the latest Node.js frameworks while taking advantage of the Java platform’s scalability, manageability, tools, and extensive collection of Java libraries and middleware. This session demonstrates how to use Nashorn to create highly scalable JavaScript applications leveraging the full power of the JVM by using the projects Avatar and Node.js with Avatar.js and Vert.x, highlighting their key benefits, issues, and challenges.
A stateful application walks into a Kubernetes bar - Arthur Berezin, JovianX ...Cloud Native Day Tel Aviv
Cloud native applications are commonly thought as stateless, horizontally scalable workloads that you can scale-up and down on-demand. Kubernetes, as the commodity cloud native orchestrator, was originally designed for such workloads. A lot has evolved since Kubernetes’ inception, and nowadays many of the stateful applications are migrating to Kubernetes. While not everything is perfect, more and more features are added to support complex stateful use-cases. In this session Arthur will cover the following topics:
- Breakdown of a stateful application
- Planning a stateful application on Kubernetes
- The state of Kubernetes StatefulSets, Persistent Volumes, DNS, Networking, operators and High Availability
- A practical use-case and DEMO of a stateful application with Kubernetes
Kubernetes is hard! Lessons learned taking our apps to Kubernetes - Eldad Ass...Cloud Native Day Tel Aviv
You might think taking your application to Kubernetes is easy. Just pack them in a Docker container, deploy and you're done!
In reality, the challenges of taking your existing application to the cloud native environment of Kubernetes are huge! They require changes in the way your applications behave and the way you administer them.
Do you really know how to get up and running with your existing applications in Kubernetes?
In this talk I will share my lessons learned taking JFrog's existing applications, prepping and deploying them to Kubernetes.
I'll go over some best practices of preparing your application for Kubernetes with some examples for what we did.
.NET Core is a new framework inside .NET Ecosystem. It helps developers to the new challenges of a Cloud First World, and it is not a replacement for the .NET Framework.
Users need the ability to increase storage space available in oVirt storage data domains (ISCSI & FC) without increasing the number of LUNs presented to it.
Feature Page: http://www.ovirt.org/Features/LUN_Resize
Introduction of the Red Hat OpenShift Service Mesh. What are service meshes? What is the difference between the Red Hat OpenShift Service Mesh and Istio?
Getting started with OSGi using a 3D OSGi Robot sample application - Christia...mfrancis
OSGi requires additional expertise from Java developers. During the first OSGi Code Camp (OCC) [1] organized by OSGi Users’ Forum Germany [2], we tried to bring OSGi beginners and experts together, to learn the core concepts and ideas behind OSGi. There will be a 2nd OSGi Code Camp held on 1st of October in Berlin extending the idea of a software craftsmanship training for OSGi beginners and experts. The first part of the talk describes the agile method we used to teach OSGi core concepts by developing an OSGi demo application in pair-programming mode. In the second part of the talk we will explain how we intend to advance the code camp approach by providing a running example - a Robot running on OSGi [3]. The core OSGi concepts will be demonstrated and teached through extensions to the prepared sample application, developed by the Code Camp participants. The extensions are developed in pairs with one OSGi expert and a beginner. The final part of the talk shows the running interactive 3D robot demo application, and explains which OSGi concepts we think should be added during the next code camp. [1] http://germany.osgiusers.org/Main/SummerOCC2010 |2] http://germany.osgiusers.org [3] http://code.google.com/a/eclipselabs.org/p/occ2010/
When Google released the first SDK for Android, which was way before the first mobile phones running it were released, Karl and Marcel decided to try and see what it would take to get Apache Felix running OSGi on Android.
This presentation introduces the Android platform, OSGi, and demonstrates how to run Apache Felix on Android. It builds on an earlier blog article that was published on this subject, an article that inspired many other OSGi implementations to try the same.
Let data flow, like an endless river into your OSGi application - M Hoffmannmfrancis
OSGi Community Event 2017 Presentation by Mark Hoffmann [Data In Motion]
Data can be like water flowing along the river. Its a stream never ends.
Especially the many IoT devices can produce such endless flow of data, pushing it using various asynchonous messaging protocols like e.g. MQTT, Websockets, JMS, STOMP, XMPP or whatever you imagine. The OSGi frameowrk provides a lot of stuff to get such streams handled!
This track will give you a clue, how to get these data stream into your application. We show you an overview how to stream data using different protocol implementations like e.g. Websocket or MQTT using one common interface in an OSGi manner. Pushstreams play an imporant role to consume all the data. You will see the new OSGi pushstreams in action and how the consumer can control the speed of flow.
Presenting some cool libs from http://square.github.io/ to help you with developing and testing your Android.
The source code is here:
Android App
https://github.com/nhachicha/GDGDevFestAlgiers2013Android
Backend
https://github.com/nhachicha/GoogleDevFest2013Algiers
This is a one hour technical talk on serverless computing with Google Cloud (Platform). It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, and shows inspirational examples of apps built using these technologies.
This is a one hour technical talk by @wescpy on serverless computing with Google Cloud (Platform). It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, and shows inspirational examples of apps built using these technologies. There is a bonus section covering serverless in-practice featuring how to think about app development, common use cases, flexibility, best practices, and local dev & testing.
Similar to A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting GmbH) (20)
OSGi Community Event 2018 Presentation by BJ Hargrave (IBM)
Abstract: Java 9 introduced the Java Platform Module System (JPMS) as a way to modularize the Java platform and it can be also be used by developers to modularize their own applications, although JPMS lack a number of important features for software running on the Java platform.
As people look to support the latest versions of the Java platform, changes introduced in Java 9 related to JPMS led to the needs for some features in the OSGi Core specification. OSGi framework implementations like Eclipse Equinox and Apache Felix and tools like Bnd were updated to support these new features.
This session will explore the Java 9+ support added to OSGi Core R7 and Bnd and help you learn how to navigate the world of Java 9+ and OSGi.
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)mfrancis
OSGi Community Event 2018 Presentation by Paul Fraser (A2Z Living)
Abstract: This talk will demonstrate how easy it is to create great web user interfaces using the OSGi Service registry and Declarative Services.
OSGi has developed to the point that much can be achieved with much reduced code complexity. Forget all the past OSGi techniques and see how it can be done now.
A short introduction will introduce OSGi in general and even if beginners do not fully understand the finer details of the talk, they will be amazed at what can be achieved using the OSGi service registry.
Do not be frightened by the terminology, come along and experience the magic of OSGi modularity.
User interfaces do not seem to get much attention in the OSGi community, it is time for a change.
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruumfrancis
OSGi Community Event 2018 Presentation by Frank Lyaruu
Abstract: OSGi offers an excellent service discovery mechanism, it is limited to services inside the JVM. That limits us in two ways: It limits us to Java services, and it limits us to one single machine, and neither are acceptable in this day and age. Can we connect our OSGi runtime to a cluster orchestration manager like Kubernetes so our runtime can interact with the cluster and allow us to respond to changes in the cluster as dynamically as we are used to in OSGi itself. I think we can.
Notes:
I will show how to discover Kubernetes services (and their pods) in a cluster, and inject those as configuration objects into an OSGi runtime. That allows us to monitor the Kubernetes cluster and dynamically have our OSGi services respond to (Kubernetes) service changes.
In general I hope to nudge the OSGi community to be more focused on connecting to other technologies rather than trying to stay in the OSGi walled garden. A well engineered OSGi application is perfectly suited to the dynamic nature of the cloud native world, but if we can't easily integrate with other services, well, nobody will care.
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)mfrancis
OSGi Community Event 2018 Presentation by David Bosschaert (Adobe)
Abstract: OSGi lends itself well to develop extensible applications assembled from reusable modules, where a set of bundles together with a set of configurations deployed to a provisioned OSGi framework is the application.
While this works very well for the originally intended use-cases, maintaining and building large applications developed by multiple teams often requires to assemble multiple larger components for which there is limited support in OSGi as of today. This is especially true in cases where multiple groups of bundles, configuration, metadata, and other artifacts need to be combined.
In this talk we will introduce you to OSGi RFP-188, named OSGi Features, which defines the requirements on providing a solution. We'll establish a shared understanding of the problem space and how it relates to already available mechanisms in OSGi (like e.g. subsystems, deploymentadmin, startlevels, etc.) and will subsequently, review it in the context of some of the current (open source) solutions like Apache Karaf Features and Apache Sling Features and Bnd.
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...mfrancis
OSGi Community Event 2018 Presentation by Amit Kumar Mondal (Deutsche Telekom AG) & Jochen Hiller (Deutsche Telekom AG)
Abstract: QIVICON is an Eclipse SmartHome based solution from Deutsche Telekom AG. It utilises OSGi to provide a modular Java runtime.
Since the beginning, QIVICON leveraged Eclipse PDE with Maven & Eclipse Tycho as its build technology but over the time, the complexity increased. It became hard to get an overview and manage the runtime and build dependencies. Especially maintaining target configurations for IDE and CI/CD build, having different embedded gateways for installation increased complexity significantly.
Bndtools is the 'swiss army knife' in the context of OSGi development since it takes the nitty-gritty pains and loads off the developer's chest. And that's why we decided to avail the benefits of Bndtools.
But, many other OSGi-based projects still cannot avail the benefits as they are very tightly coupled with Eclipse PDE. Want to make a switch from your existing PDE source base to Bndtools? This talk would give you an overview to proceed towards this.
We would like to further demonstrate in this talk how to set up a Bndtools workspace from an existing PDE workspace, convert all current projects to Bnd projects and embrace the OSGi-way of developing bundles.
Since QIVICON containing more than 350 projects utilised this solution to move to a higher modularity maturity level, this talk would, therefore, outline the pros, cons and the learnings using Bndtools in such a big OSGi project for embedded development.
OSGi CDI Integration Specification - Ray Augé (Liferay)mfrancis
OSGi Community Event 2018 Presentation by Ray Augé (Liferay)
Abstract: This talk discusses the upcoming OSGi CDI Integration Specification and demonstrates common usage patterns and its component model that brings OSGi dynamics; like services and configuration, to CDI and provides for an ecosystem of CDI portable extentions.
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...mfrancis
OSGi Community Event 2018 Presentation by Jörn Tümmler (SMA Solar Technology)
Abstract: SMA is a leading global specialist in photovoltaic system technology with more than 3,000 SMA employees in 20 countries.
In 2015 SMA decided to develop the ennexOS platform - a cross-sector platform for holistic, intelligent energy management. An important part of this platform is the data-manager - an IoT gateway that acquires information from various energy generators, storages and loads and performs commissioning and management tasks.
This new generation of data-managers demanded for new approaches in software-architecture to:
run on a broad range of hardware platforms, and
be extendible e.g. to support different protocols for easy integration, and
to enable a broad range of applications in the energy-management field that may be customized by apps installed during runtime
After an exhaustive investigation on existing solutions, OSGi was chosen as the key technology for this new generation of devices - a quite challenging decision, because at this point there was only limited experience in Java and OSGi development in the company.
This talk will present the key factors that lead to this decision, how we very carefully build up Java and OSGi knowledge, and started with an initial design. OSGi enRoute and the support of OSGi experts helped us to accelerate our development and become familiar with OSGi - although we also had times when we were struggling because of the new technology.
The talk will demonstrate what we have reached until now and we will tell you if OSGi has kept it's promise ...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...mfrancis
OSGi Community Event 2018 Presentation by Lukasz Dywicki (Code-House)
Abstract: During this short presentation I will revisit existing mechanisms and approach towards OSGi and JEE development. I will show how many manual steps can be avoided and how to maintain project in effective manner. I will try to find a balance between execution environment requirements and programmer happines at same time.
I believe that OSGi and Eclipse ecosystem experience troubles gaining people from outside for few reasons. Beside overall impression of OSGi complexity there is equally old and invalid complain about quaility of developer tooling. Since invention of BND development experience can be really pleasant and independent of text editor/IDE preferences. Sadly lots of people still rely on former experiences spreading black/bad PR. I would like to clarify their point.
After this presentation attendees will learn:
How to use Maven to build OSGi projects (without Tycho).
How to automate manual tasks.
How to build custom software distributions with Maven artifacts and run it with Apache Karaf.
That OSGi development doesn't differ much from regular day-to-day usage of application servers or microservice runtimes.
This talk is intended for people who know basics of OSGi as it will show few basic technics towards better developer productivity.
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...mfrancis
OSGi Community Event 2018 Presentation by Christer Larsson (Makewave)
Abstract: OSGi was originally designed for Smart Homes and Residential Gateways almost 20 years ago.
This talk will present how the OSGi specifications have evolved over the years, and how you today, in 2018, design an OSGi based Smart Home System.
A real world use case of a Swedish Smart Home start-up company will be used to illustrate different design principles and how OSGi remains as relevant today as it was when it started.
Popular patterns revisited on OSGi - Christian Schneider (Adobe)mfrancis
OSGi Community Event 2018 Presentation by Christian Schneider (Adobe)
Abstract: We will look at common cloud and design patterns and see how the special properties of the OSGi environment allows us to rethink these patterns. The talk shows some well known patterns like the service registry and the whiteboard but also some unique patterns like out of band circuit breaker or graceful degregation.
The patterns are shown with some examples using declarative services(DS). So some basic OSGi and DS knowledge is of advantage but not required.
For OSGi beginners the well established OSGi patterns will help getting started the right way. Experienced OSGi developers will find some new patterns to think about. Cloud or enterprise developers will get a new approach to some patterns they are used to which hopefully inspires them to take another look at the current state of OSGi.
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)mfrancis
OSGi Community Event 2018 Presentation by BJ Hargrave (IBM)
Abstract: OSGi Compendium R7 provides a major update to the OSGi LogService specification. A new logging API is added which supports logging levels and dynamic logging administration. A new Push Stream-based means of receiving log entries is also added. But it is quite often the case you need to use other code such as open source projects which are using slf4j for their logging API. This session will explore the new OSGi LogService changes and how you can integrate code using both slf4j logging and OSGi LogService logging.
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)mfrancis
OSGi Community Event 2018 Presentation by Tim Verbelen (imec)
Abstract: Nowadays AI is reaching new heights on the hype cycle, especially due to recent advances in deep learning techniques. A lot of deep learning frameworks exist for creating and training deep neural networks, the most popular ones being PyTorch and TensorFlow. However, how to integrate, deploy and manage these neural networks in complex software systems is often overlooked. In this talk we show how OSGi can be used as a modular runtime for deep learning models. We embed those models inside OSGi bundles, and use the extender pattern to make these available as OSGi services. You can then use your favorite OSGi specs such as DS and PushStreams to integrate these into your application.
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...mfrancis
OSGi Community Event 2018 Presentation by Tony Walsh (ESA) & Hristo Indzhov (Telespazio Vega)
Abstract: The European Space Operations Centre (ESOC) is the main operations center for the European Space Agency (ESA), operating a number of earth observation and scientific missions. Monitoring and control functions needed by spacecraft operators are provided by software systems which are reused across missions, but tailored and extended for mission specific needs. The current generation of monitoring and control systems are becoming obsolete and a European wide initiative called the European Ground Systems Common Core (EGS-CC) (http://www.egscc.esa.int) has been started to develop the next generation.
This talk will explain why OSGi was chosen and how it is used in the development of next generation of monitoring and control software. It will describe how OSGi provides the necessary framework that enables the software to be extended for the different space systems it is expected to support. The overall software architecture will be discussed, some of the challenges faced and the benefits gained by using OSGi. The first target mission for the system is JUICE (http://sci.esa.int/juice) which will explore the moons of Jupiter and which is scheduled for launch in 2022.
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)mfrancis
OSGi Community Event 2018 Presentation by Ray Augé (Liferay)
Abstract: The craze is fully on. The past couple of years have seem micro services grow from next _flava_ to fully consuming of the software industry. The Eclipse micorprofile.io project is tackling the issue putting common usage patterns together over a foundation of CDI. What better assembly driver is there than OSGi to put it all together. This talk will demonstrate building your own MicroProfile using OSGi and the OSGi enRoute packaging model.
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...mfrancis
OSGi Community Event 2018 Presentation by Bruce Jackson (Myriad)
Abstract: Node-RED is often used as a protyping tool for IoT systems. However, there are also a large number of OSGi components that have already been built to interface to devices, sensors and systems. In this talk I will show how two completely different runtime environments (OSGi and Node-RED) can be combined into a single platform for prototyping (and more) combining the strengths of both languages and systems.
Being able to quickly and simply prototype IoT application is extremely useful, and to this end many people have adopted Node-Red, a Node.js based runtime with extensive support for plugins to interface to various IoT hardware and protocols. However, this requires these services/protocols to be developed in Javascript, and there is already a significant body of code developed in Java/OSGi that it would be desirable to re-use.
The talk will explain how it is possible to:
Create and manage a Node-Red runtime from within an OSGi bundle
Share OSGi components and object into the Node-Red runtime
Interact and build Node-Red flows that exchange data and call methods between Node.js and OSGi
This is obviously useful for the original purpose: prototyping IoT systems, but also demonstrates some interesting techniques for bridging between different languages and runtimes.
How to connect your OSGi application - Dirk Fauth (Bosch)mfrancis
OSGi Community Event 2018 Presentation by Dirk Fauth (Bosch)
Abstract: In todays connected world the requirement to connect applications across network boundaries has become a common requirement. With OSGi there are several ways to accomplish this, as there are different specifications to achieve this. In this talk we will look at some of these specifications to show what options there are and which might fit your requirements. Starting from an architecture that makes use of the HTTP Whiteboard pattern, over Remote Services to finally showing the usage of the JAX-RS Whiteboard specification introduced with R7. We will show the general usage of these specifications and explaining the advantages and disadvantages of each solution.
Visualization of OSGi based Software Architectures in Virtual Reality - Lisa ...mfrancis
OSGi Community Event 2018 Presentation by Lisa Nafeie (DLR)
Abstract: Classic software architecture visualizations such as UML diagrams are widely used in practice but are not always the best solution, for example to get an high level overview of large component-based software systems. In this talk, we show other suitable technologies for software visualization to understand complex software architectures. Especially, we show how to visualize OSGi based software architectures in Virtual Reality (VR) using VR headsets.
We address the question, how software visualizing can help during the development process and what are the resulting benefits for developers and software testers. We focus on four aspects: Development, evaluation, quality assurance, and visualization technology. We demonstrate software visualization using the software ”IslandViz”, which visualizes OSGi based software systems using an island metaphor, where islands on a virtual water level represents OSGi bundles, regions on the islands represents packages, and buildings represents classes. We describe how to get all relevant data for the visualization by repository mining on the whole source tree and data mining on source code level. We store all data in a graph database for further analysis and visualization.
Through software visualization we were able to answer many important questions, which have already taken a lot of time in development and test-phases. In addition, it’s very important to make the software architecture tangible, which makes it easier way to talk about technical problems in teams formed by people with different knowledge, communications skills, and backgrounds.
Turtles all the Way Up – From OSGi bundles to Fog Computing - Tim Ward (Paremus)mfrancis
OSGi Community Event 2018 Presentation by Tim Ward (Paremus)
Abstract: The model of centralized cloud compute is changing. As large-scale IoT deployments have started to become real organizations are realizing that a single central cloud can’t cope with the data security, data volumes, latency or robustness that they need for their businesses. Centralizing in a single cloud also offers a huge operational risk – if the cloud fails, their business must continue!
This talk will introduce BRAIN-IoT, an EU Horizon 2020 funded project. BRAIN-IoT uses the latest OSGi R7 specifications to create an adaptive modular “Fog” environment with decentralized data processing and decision making. We’ll review the current design decisions made by the BRAIN-IoT team, including the issues concerning generic Edge Device discovery & integration, and see how they can be applied across different IoT use cases, including Smart Utilities and Industry 4.0 Factories of the Future.
OSGi in Action - How we use OSGi to build Open Liberty - Alasdair Nottingham ...mfrancis
OSGi Community Event 2018 Presentation by Alasdair Nottingham (IBM).
Abstract: The OSGi framework, and the service specifications, is a powerful and simple way to build modular software. However writing modular software is hard and even a simple framework doesn’t necessarily make things easy, especially when you are writing an application server consisting of over 100 discrete features. When that application server needs to dynamically respond to configuration changes, provisioning (or deprovisioning) features as required. Even worse when it has to support Java EE applications which are written with a totally different modularity (cough-cough) model.
Open Liberty was designed from the ground up to use OSGi as it’s core modularity framework, making extensive use of declarative services, metatype, and subsystems. We did a lot right, we made mistakes, some we fixed some not so much, we fixed a lot of bugs including a number in Felix SCR. Come along to hear a lessons learned about how we used OSGi to build the most flexible application runtime for building web and cloud applications.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
JMeter webinar - integration with InfluxDB and Grafana
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting GmbH)
1. A real world use case with
OSGi R7
Jürgen Albert
Data In Motion Consulting GmbH
1
2. About Us
● Founded in 2010
● Located in Jena/Thuringia - Germany
● OSGi Contributing Associate Member
● OSGi / MDSD related company
● Consulting, Independent R&D, Development, Training,
2
3. The Customer - radio.net
● Radio Stream Aggregator and Podcast Platform
● 10 brands for 10 countries in 24 languages
● Over 40K Stations and Podcasts
● 7 Mio. Monthly Unique Users
● 27 Mio App Downloads
● Integrations in many platforms (Amazon FireTV, Echo,
Google Home etc.)
3
4. History
● We developed a custom OSGi and Lucene based
Backend providing search results and all kinds of lists
● Tomcat based monolith serves as API Gateway to the
search backend
● radio.net currently migrates from the monolith to
Microservice/Docker infrastructure
4
5. The Requirements
● radio.net has implementations for voice based devices like
Amazon Echo or Google Home
● A special API is required
● The index needs to be smaller and much more specialized
for search by voice
● Small
5
6. The Old Search Server
● Equinox
● Gyrex
● PDE with tycho Build
● EMF
● Lucene 4.8
● Data In Motion Search Framework
● MongoDB
6
7. The new VUI Search
● VUI - Voice User Interface
● Felix with BND
● OSGi R7
○ JaxRS Whiteboard
○ PushStreams
○ Configurator
● GeckoSearch based on Lucene 6.8
● GeckoEMF
● MongoDB
● Docker
7
10. Where can it lead?
● radio.net wants to use Backend for Frontents (BFF)
● A BFF is specialized API for a certain kind of client (Apps,
Website etc.)
● A BFF consumes n services consuming and aggregating
data provided by different docker containers
● Nobody is allowed to call a service directly
10