Split up development pages
This commit is contained in:
parent
8bee265142
commit
a4adf87fe3
36 changed files with 372 additions and 286 deletions
43
source/developers/multiple_instances.markdown
Normal file
43
source/developers/multiple_instances.markdown
Normal file
|
@ -0,0 +1,43 @@
|
|||
---
|
||||
layout: page
|
||||
title: "Multiple Instances"
|
||||
description: "Quick primer on how multiple instances work together."
|
||||
date: 2016-04-16 14:24 -07:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Home Assistant supports running multiple synchronized instances using a master-slave model. Whenever `events.fire` or `states.set` is called on the salve it will forward it to the master. The master will replicate all events and changed states to its slaves.
|
||||
|
||||
<p class='img'>
|
||||
<a href='/images/architecture/architecture-remote.png'>
|
||||
<img src='/images/architecture/architecture-remote.png' />
|
||||
</a>
|
||||
Overview of the Home Assistant architecture for multiple devices.
|
||||
</p>
|
||||
|
||||
A slave instance can be started with the following code and has the same support for components as a master instance.
|
||||
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
import homeassistant.bootstrap as bootstrap
|
||||
|
||||
# Location of the Master API: host, password, port.
|
||||
# Password and port are optional.
|
||||
remote_api = remote.API("127.0.0.1", "password", 8124)
|
||||
|
||||
# Initialize slave
|
||||
hass = remote.HomeAssistant(remote_api)
|
||||
|
||||
# To add an interface to the slave on localhost:8123
|
||||
bootstrap.setup_component(hass, 'frontend')
|
||||
|
||||
hass.start()
|
||||
hass.block_till_stopped()
|
||||
```
|
||||
|
||||
<p class='note'>
|
||||
Because each slave maintains its own Service Registry it is possible to have multiple slaves respond to one service call.
|
||||
</p>
|
Loading…
Add table
Add a link
Reference in a new issue