A discussion of the Internet of Things and how I explored the use of an event-based API and microservices inside a unique architecture based on persistent compute objects, or picos, in the connected car platform called Fuse.
20. Event System Properties
Events are autonomous
Event-driven system are more loosely coupled
Downstream (receiver) driven flow control
Near real-time propagation
24. Picos are online computers
Identity—they represent a specific entity
Storage—they persistently encapsulate both structured
and unstructured data
Open event network—they respond to events
Processing—they run applications autonomously
Event Channels—they have connections to other picos
Services—The provide a consistent set of services
APIs—they provide access to and access other online
services
29. Rather than a model where a system
presents an API for a collection of
resources….
30. Rather than a model where a system
presents an API for a collection of
resources….
Picos present a model wherein each
pico presents it’s own, customizable
API
39. Picos Support A Familiar Model
Kynetx Rules Engine
Other
Data
Sources
APIs
Web
Services
Rulesets
Persistent
Data
APIs
container
40. Picos Support A Familiar Model
Persistent Compute Object object
Kynetx Rules Engine
Other
Data
Sources
APIs
Web
Services
Rulesets
Persistent
Data
APIs
container
41. Picos Support A Familiar Model
Persistent Compute Object object
Kynetx Rules Engine
Other
Data
Sources
APIs
Web
Services
Rulesets
Persistent
Data
APIs
container
CloudOS
Configuration
Management
CloudOS
Service
Notification
Service
Personal Data
Service
UI Support
File
Social
Social
Fuse
Library
Guard
Tour
Library
libraries
42. Picos Support A Familiar Model
Kynetx Rules Engine
Other
Data
Sources
Web
Services
APIs
Rulesets
Persistent
Data
APIs
container
Persistent Compute Object object
Forevr.us
(contact)
Timeline
(social)
Vehicle
Manangement
To Do &
Reminders
Intentcasting
Home
Management
Fuse
Guard
Tour
applications
CloudOS
Personal Data
Service
Configuration
Management
CloudOS
Service
Notification
Service
UI Support
File
Social
Social
Fuse
Library
Guard
Tour
Library
libraries
43. Picos Are Decentralized & Networked
pico
pico
Pico
Space
Hosting
Space
Hosting
Company A
Hosting
Company B
Self
Hosted
pico
pico
pico
pico
pico
pico
pico
KRE KRE KRE Pico
Containers
46. Institution
Managers
Tour
Index
Report
"1"
Location
Index
Report
Index
Guard
"Frank"
Tour
"LUFX"
Tour
"KUFF"
Location
"R7RK"
Location
"G5YH"
Report
"current"
Location
"T67G"
Guards
Subscriptions
permanent
temporary
This can get complex…
Report
R"2e"port
R"2e"port
R"2e"ports
Tours
Tours
Tours
Tours
Locations
Locations
Locations
Locations
47. Picos Use an Event Query API
functions return results based
on persistent data
pico
functions
rules
persistent
storage
User Interface
name
email
phone
UI updates presentation
Done or Cancel
using query API
query API
event API
user makes change in UI
resulting in an event
rules validate and process event,
often updating model
48. Programming Model
Program in any language you like
OAuth access to pico
Pico provides
user data
processing
API and inter-pico communications
49. Microservices
Organized around a single business
capability
Small, generally less than 1000 lines and
code and usually much smaller
Event-based and asynchronous
Run in their own process
Independently deployable
Decentralized data storage
54. carvoyant:
numeric_data_key
fuse:
update_fuel_level
vehicle event bus
fuel level
low
fuse:
new_alert
create
alert
notification:
status
send
notification
55. carvoyant:
numeric_data_key
fuse:
update_fuel_level
vehicle event bus
fuel level
low
fuse:
new_alert
create
alert
record
new fuel
notification:
status
send
notification
56. carvoyant:
numeric_data_key
fuse:
update_fuel_level
vehicle event bus
fuel level
low
fuse:
new_alert
create
alert
IFTTT
record
new fuel
notification:
status
send
notification
57. carvoyant:
numeric_data_key
fuse:
update_fuel_level
save trip IFTTT
vehicle event bus
fuel level
low
fuse:
new_alert
create
alert
record
new fuel
notification:
status
send
notification