More Related Content Similar to MuleSoft Meetup Singapore #8 March 2021 (20) MuleSoft Meetup Singapore #8 March 20214. All contents © MuleSoft Inc.
Agenda
4
• 4:00 pm: Welcome & Introduction
• 4:10 pm: MuleSoft & Kafka
• 4:40 pm: IoT & MuleSoft
• 5:10 pm: Events roundup and quiz
• 5:30 pm: Meetup concludes
6. All contents © MuleSoft Inc.
Co-host
6
Julian Douch – Senior Director
Capgemini
Integration veteran of 20 years, transformation strategist, and digital leader, established WhiteSky
Labs in ASEAN, and now leading the growth of MuleSoft adoption across JAPAC with Capgemini.
Passion for growing talent and dispersion of knowledge, I'm now driving fast to similarly establish
the MuleSoft community also, forging relationships with the current developer community,
expanding the community by reaching new technologists who've a passion for building out a new
API-centric digital economy.
7. All contents © MuleSoft Inc.
Co-organizer / host
7
Royston Lobo
Senior Technical Architect
MuleSoft
Royston is part of the Customer Success Strategy and Architecture team at MuleSoft. He helps enable
MuleSoft customers to make the most of their MuleSoft experience through education, solving
problems and advising on strategic use of the platform.
Has the privilege of collaborating with customers, Professional Services, Product, Engineering,
Support, Marketing, Training and Sales teams to create value for MuleSoft and for our customers
8. Intro to Kafka and Integration with MuleSoft
Senthil Ramu
Technical , MuleSoft
9. All contents © MuleSoft Inc.
Presenter
9
Senthil Ramu - Technical Architect
MuleSoft
Senthil is a Technical Architect on MuleSoft's Professional Services team, based in
Singapore. He has more than 12 years of experience in Integration space and works with
solution consultants and customers to solve enterprise integration challenges using an API-
led approach.
10. All contents © MuleSoft Inc.
1
0
Agenda
Kafka Overview
Use-cases of Kafka
Mule Integration With Kafka
Mule Connector Configuration & Features
11. All contents © MuleSoft Inc.
Kafka Overview
Apache Kafka is an open source distributed publish-subscribe based durable messaging
system exchanging data between processes, applications. In a distributed commit log
architecture for fast, fault-tolerant communication between producers and consumers using
message based topics. Kafka provides the messaging backbone for building a new
generation of distributed applications capable of handling billions of events and millions of
transactions
13. All contents © MuleSoft Inc.
Kafka Architecture Components
13
Components Functions
Broker A Kafka cluster is made up of a number of brokers. Kafka cluster to achieve load balancing
and reliable redundancy and failover.
ZooKeeper ZooKeeper to manage and coordinate the Kafka cluster. ZooKeeper notifies all nodes when the
topology of the Kafka cluster changes, including when brokers and topics are added or
removed.
Producer A Kafka producer serves as a data source that publishes messages to Kafka topic.
Consumer Consumers read the committed message from a Kafka topic.
Topics A Kafka topic defines a channel through which data is streamed. Producers publish messages
to topics, and consumers read messages from the topic they subscribe to.
Partition Within the Kafka cluster, topics are divided into partitions, and the partitions are replicated
across brokers.
14. All contents © MuleSoft Inc.
Use-cases of Kafka
14
Different use-cases of Kafka. Messaging use-case predominately used in integration space.
15. All contents © MuleSoft Inc.
Use case – Guarantee Order of the Message
Order Management System of a telecom service provider captures customer requests to
modify contact, account details etc. The important criteria is to process the requests in the
same order without duplication.
Kafka integration using Mule connector
16. All contents © MuleSoft Inc.
Use case – Guarantee Order of the Message
High level block diagram,
17. All contents © MuleSoft Inc.
Kafka – Criteria details
❑ Set unique key in each message. In this use-case, customer id is used as
unique key. Kafka does the hashing on the key and store the messages to
particular partition.
❑ Keep only one consumer group. At any given point in time, only one
consumer per group read from that partition.
❑ Number of consumer in the group either same or more than the number of
partition for better throughput.
❑ Additional consumer group will not guarantee the order of the messages.
18. All contents © MuleSoft Inc.
Kafka Configurations
❑ Ensure durability of your data at Producer by setting ack= none (fire and forget) , leader_only (The
producer waits for the lead broker to acknowledge) , all (The producer waits for an acknowledgment
from the lead broker and from the following brokers). Default is all
❑ min.insync.replicas (enforces the number of replicas that must be in sync for the write to proceed)
along with ack field. Default is 1
❑ request.timeout.ms (the maximum amount of time the client will wait for the response of a request)
❑ max.block.ms (this timeout bounds the total time waiting for both metadata fetch and buffer allocation).
Default is 120000(2mins)
❑ compression.type (The compression type for all data generated by the producer. The default is none
(i.e. no compression). Valid values are none, gzip, snappy, lz4, or zstd)
❑ retries (Setting a value greater than zero will cause the client to resend any record whose send fails
with a potentially transient error.)
❑ group.id (A unique string that identifies the consumer group this consumer belongs to.)
❑ enable.auto.commit=true (consumer's offset will be periodically committed in the background.).
Default is true.
❑ auto.commit.interval.ms=5000(5sec) (The frequency in milliseconds that the consumer offsets are
auto-committed to Kafka if enable.auto.commit is set to true.)
❑ log.retention.hours: by default, logs will be retained 7 days. Think carefully if this default is good
enough. Any data older than that is not be available when replaying the topic.
19. All contents © MuleSoft Inc.
Kafka Connector Features
❑ batch.size - The producer will attempt to batch records together into fewer requests whenever multiple
records are being sent to the same partition.
❑ buffer.memory - The total bytes of memory the producer can use to buffer records waiting to be sent
to the server. If records are sent faster than they can be delivered to the server the producer will block
for max.block.ms.
❑ receive.buffer.bytes - defaults to 64kB. The values are too small for high-throughput environments,
particularly if the network’s bandwidth-delay product between the broker and the consumer is larger
than a local area network (LAN). For high-bandwidth networks (10 Gbps or higher) with latencies of 1
millisecond or more, consider setting the socket buffers to 8 or 16 MB.
22. All contents © MuleSoft Inc.
Presenter
2
2
Hui Tan – Principal Architect
Capgemini
Hui is a Principal Architect at Capgemini and experienced MuleSoft consultant. More than 20 years
IT experience working across Asia delivering transformational digital solutions for international
banks, insurance & media industries
24. All contents © MuleSoft Inc.
Introduction to IoT
o The Internet of Things (IoT) describes the network of physical
objects—“things”—that are embedded with sensors, software,
and other technologies for the purpose of connecting and
exchanging data with other devices and systems over the internet.
o By 2021, 35 billion IoT devices will be installed around the world
(Sources: Forbes / Security Today)
25. All contents © MuleSoft Inc.
IoT Trends 2021
Healthcare
1 Industrial 4.0
2
Retail
3 Smart City
4
Finance
5
26. All contents © MuleSoft Inc.
1. IoT in Healthcare
o Tech-driven healthcare transformation
o New ”normal” – post COVID (tracker, tracing
devices, hand sanitizer dispenser)
o Senior generation – smart devices (fall
detections, real- time heart monitor)
o Health monitoring – smart sensors (real-time
blood glucose monitor, no more test stripe)
o Health insurance – Manulife MOVE (smart
watch, smart app, insurance discounts, lower
premium)
Blood sugar digital monitor
27. All contents © MuleSoft Inc.
2. IoT In Industry 4.0
o Industrial automation
o Robotic – sensor, data analytics, fault
detection
o Production assembly line – PLC health
sensor
o Production line – real-time production
monitoring – real time demand monitoring
(perishable food manufacturing)
o Machine lifespan – predictive maintenance
(sensors, usage pattern analytic)
Motorcycle electronic fuel injection tuner and monitor
28. All contents © MuleSoft Inc.
3. IoT in Retail
o Retail Revolution
o Digital shopping experience – Hema
supermarket in China (info counters, home
delivery system – tracking devices, facial
recognition)
o Supply Chain automation – robotic delivery
o Personalized manufacturing – printer’s
sensor for uninterrupted services, smart
shelves for perishable goods
Hema supermarket employs various IoT in their stores
29. All contents © MuleSoft Inc.
4. IoT in Smart Cities
o Smart Cities innovation
o Traffic management – traffic sensor, traffic
coordination
o Smart meters – power consumption, usage,
utilization
o Smart waste management – collection of
waste, sorting of recycle materials
o Elderly assistance – robot grocery delivery,
emergency care
Robots deliver groceries and parcels to
Punggol residents
30. All contents © MuleSoft Inc.
5. IoT in Finance
OCBC ATM facial recognition, this move makes the bank the first in South-east
Asia and takes it a step closer to eliminating a physical ATM card. PHOTO: OCBC
o Evolving Financial System
o Multi-channel approach (mobile banking, P2P, screenless banking, self-service
banking
o Smarter bank, BoT, Open Banking API
ATM 2.0
Screenless banking
Virtual Teller Machine at DBS
IoT Payment (next
generation POS) terminal
(NFC enabled, Bluetooth, QR
code, Internet)
31. All contents © MuleSoft Inc.
MuleSoft IoT Reference Architecture
https://www.mulesoft.com/resources/api/internet-of-things-expanding-connectivity
32. All contents © MuleSoft Inc.
Demo
3
3
Edge Layer Server Layer
On-Premise / WAN / LAN
/env-control-edge /environment-control
CloudHub
Local Environment
Client Layer
/product
Salesforce
SaaS Environment
34. All contents © MuleSoft Inc.
Demo - Food Storage Environment Control System
37. All contents © MuleSoft Inc.
MuleSoft Advancements in last months
Latest 4.3 release .
• New Connectors
• Advanced and improved
runtime in 4.3
• Composer for Salesforce
• Expansion on the RTF
capability
• Full GA of Service Mesh
38. All contents © MuleSoft Inc.
MuleSoft Composer
MuleSoft Anypoint
embedded within
Salesforce.
MuleSoft Composer for
Salesforce enables
Salesforce admins to
connect apps and data to
Salesforce and automate
integrations quickly and
easily with clicks, not code
— all inside of the
Salesforce UI
Connect apps and data to Salesforce quickly and easily with clicks, not code.
https://www.salesforce.com/products/integration/products/mulesoft-composer/
39. All contents © MuleSoft Inc.
Certification Maintenance
• Extend your certification status and keep your MuleSoft skills up-to-date.
• Select MuleSoft Certifications are now eligible for the Certification Maintenance process, which
provides you with the ability to take a short maintenance exam to extend your certification and
continue to showcase your expertise to the market.
• Certification Maintenance exams validate that you continue to have the knowledge and skills required
for your certification. Exams are 45 minutes and consist of 25 questions – with 2 attempts maximum.
Once you pass your Certification Maintenance exam, your certification will be valid for two years from
your pass date.
• Valid through May 31, 2021, we are extending the Certification Maintenance process to anyone who
holds one of the below certifications — even if it is invalid and past the expiry date. After May 31,
2021, an expired certification can only be renewed by taking the full Certification exam
• The following Certification Maintenance exams are available:
– MuleSoft Certified Developer - Level 1 (Mule 4)
– MuleSoft Certified Platform Architect - Level 1
– MuleSoft Certified Integration Architect - Level 1
https://training.mulesoft.com/certification-maintenance
40. All contents © MuleSoft Inc.
Next meetup session – June 24th (tbc)
4
1
• 4:00 pm: Welcome & Introduction
• 4:10 pm: Topic 1 – TBC
• 4:40 pm: Topic 2 – TBC
• 5:10 pm: Events roundup and quiz
• 5:30 pm: Meetup concludes
Please contact the meetup team to propose your presentation topic –
e.g. Case study, technical feature, point of view
42. All contents © MuleSoft Inc.
Brainteasers
• 3 brain teasers
• Write your answer in the chat window
• First answer for each brain teaser will win a prize
• All winners will be contacted by email so please don’t forget to
provide registration name if you’ve joined via a different name
44. See you next time
Please send topic suggestions to the organizer