Feature #546
Cursor-based frontend/backend communication
| Status: | New | Start: | 11/09/2010 | |
| Priority: | Normal | Due date: | ||
| Assigned to: | % Done: | 0% |
||
| Category: | Common | |||
| Target version: | - | |||
| Complexity: | High |
|||
| Votes: | 1 (View) |
Description
It seems that, currently, the Smuxi frontend maintains a copy of a lot of the backend's IRC state, and needs to synchronise these on server connect. This results in connecting to the backend taking a significant period of time (for me, around a minute) and consuming a significant amount of memory (again for me, Smuxi is eating >500MiB RSS).
It seems that both of these problems could be resolved by not sharing this state between the frontend and the backend, and instead having a cursor-based interface between the frontend & backend. Then the frontend would only need to get the most recent page of text from the backend on connect, which should speed up that process. It would also reduce frontend memory usage, as the frontend would need to store less state.
Finally, it would allow the removal of the non-obvious distinction between “buffer lines” and “engine buffer lines”, and would make adding “unlimited” as an option more feasible.
History
Updated by Mirco Bauer 864 days ago
With regards to the memory usage you are seeing my Smuxi never uses more than ~50MB on X86 with 1000 buffer lines. I suspect GTK+ or the theme plays a role here.