(Far south) Works for: Red Hat Role: EMEA Technical Partner Development Manager - DX and Cloud-Native Experience: Red Hat Technical Head of DX EMEA Self introduction
sensor drivers (also Open Source), is upstream technology Red Hat: ▸ OS: Fedora IoT * ・ The new generation of Operating System for edge devices. Productization TBD ▸ Quarkus * + GraalVM ** ・ Cost Savings: Low memory, fast startup, cloud efficiency, low learning curve, serverless, high density on K8s & cloud ・ Faster time to value/market: Developer productivity, extensions ecosystem, low learning curve, keep competitive edge ・ Reliability: Trusted technology, active community, trusted sponsor, fast release cadence, unnoticed failovers Data Center The Data Center Software stack is entirely composite of Red Hat enterprise technologies: ▸ Openshift ▸ Red Hat A-MQ ▸ Red Hat AMQ-Streams ▸ Red Hat Runtimes ・ Quarkus ・ Node.js Architectural Overview
OS (not just its kernel) ▸ Must have a very small memory footprint ▸ Must be immutable or at least, modular ▸ Must have the ability to run a container engine with the minimum memory footprint, like Podman or CRI-O ▸ Must support all of the following hardware component used by the sensor board: ・ I2C ・ SPI ・ Serial port Sensors Service ▸ Small memory footprint ▸ Python library from technology vendor ▸ Flask project guarantees multithreading and performance (for a PoC) ▸ Container-Ready EdgeService ▸ Small memory footprint ▸ Optimized performance ▸ Container-Native ▸ Integration with server-side endpoints
wait 2 to 3 mins to see their changes. Live coding does away with this.” A cohesive platform for optimized developer joy: ▸ Based on standards and more ▸ Unified configuration ▸ Live coding ▸ Streamlined code for the 80% common usages, flexible for the 20% ▸ No hassle native executable generation What is Quarkus
both Reactive and imperative development in the same application ▸ Inject the EventBus or the Vertx context ▸ Use the technology that fits your use-case ▸ Key for reactive systems based on event driven apps @Inject SayService say; @GET @Produces(MediaType.TEXT_PLAIN) public String hello() { return say.hello(); } @Inject @Stream(”kafka”) Publisher<String> reactiveSay; @GET @Produces(MediaType.SERVER_SENT_EVENTS) public Publisher<String> stream() { return reactiveSay; } What is Quarkus
“When you adopt Quarkus, you will be productive from day one since you don’t need to learn new technologies.” Eclipse Vert.x Hibernate RESTEasy Apache Camel Eclipse MicroProfile Netty Kubernetes OpenShift Jaeger Prometheus Apache Kafka Infinispan Flyway Neo4j MongoDB MQTT KeyCloak Apache Tika What is Quarkus
(maven, gradle…) Build Time Runtime Load config file from file system Parse it Classpath scanning to find annotated classes Attempt to load class to enable/disable features Build its model of the world. Start the management (thread, pool…) Quarkus role in the project
Hat Runtimes Red Hat Middleware Portfolio LEARN MORE IDC Quarkus Report (Coming Soon!) Four Reasons To Try Quarkus What is a Java Framework? DEVELOPERS Documentation Interactive Tutorials Start Coding QUARKUS COMMUNITY My article reproducing the whole process step by step: https://quarkus.io/blog/quarkus-native-on-a-raspberry-pi/ Resources
provider of enterprise open source software solutions. Award-winning support, training, and consulting services make Red Hat a trusted adviser to the Fortune 500. Thank you 27