You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-08-10 22:11:50 +02:00
Desktop: Add support for multiple instances (#11963)
This commit is contained in:
25
readme/dev/spec/multiple_instances.md
Normal file
25
readme/dev/spec/multiple_instances.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Multiple instance support
|
||||
|
||||
Joplin Desktop supports multiple instances through **profile locking** and **IPC messaging**.
|
||||
|
||||
### Profile Locking
|
||||
|
||||
- A lock file is updated every `x` seconds by each instance.
|
||||
|
||||
- If a valid lock exists, the new instance sends a message to all running instances and closes. This message prompts the other active instance to move to the front.
|
||||
|
||||
### IPC Messaging
|
||||
|
||||
- IPC is implemented using lightweight HTTP servers in each instance, communicating via `POST` requests.
|
||||
|
||||
- When a message is sent, the implementation automatically discovers running IPC servers.
|
||||
|
||||
### Instance Differentiation
|
||||
|
||||
- The `--alt-instance-id` flag must be used to launch an alternative instance. This disables services like the Web Clipper.
|
||||
|
||||
- The `altInstanceId` setting is consulted by the application to determine its type (main or alternative instance).
|
||||
|
||||
### Current Limitations
|
||||
|
||||
The system is designed to handle multiple instances but currently supports only two through the UI: a **main instance** and an **alternative instance**.
|
Reference in New Issue
Block a user