mirror of
https://github.com/quasar/Quasar.git
synced 2026-04-25 23:35:58 +03:00
[GH-ISSUE #254] Performance Enhancing #116
Labels
No labels
bug
bug
cant-reproduce
discussion
duplicate
easy
enhancement
help wanted
improvement
invalid
need more info
pull-request
question
wont-add
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/Quasar#116
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @yankejustin on GitHub (Jun 1, 2015).
Original GitHub issue: https://github.com/quasar/Quasar/issues/254
Context
With the desirability of many possible connected clients or tasks that may otherwise be intensive or expensive even for a few clients, some changes are necessary to fix the large memory usage and much of the CPU usage of the server.
Reasons
At first glance, it is visible that the Client object is expensive: the client has a variable named
Valuethat stores 8 Forms each, with other items that can be large, such asUnsafeStreamCodecafter some use.Plan
I suggest changing some of how a Client is perceived by the server. Implementation of client management is something that will need to be abstracted from the
Serverobject and should be placed in aClientPoolobject that will handle much of the interaction between the otherClientobjects. While interaction between Client and the GUI of the server will remain somewhat the same, the big changes introduced by this suggestion is similar to the following:ListViewof them.Listusing indices that can be incorrect.Clientobject.Clientobject, things suddenly become much more simple.Request for Action
I have been mashing away on my keyboard a bit tonight, but I do not want to put this right into
MaxXor/masterand I don't want to only keep this code on my branch either. I would appreciate it if you would create a newMaxXor/Performancebranch for some collaboration on this task. This task will require that some Forms are loaded a bit differently (to pull data from the client instead of setting or changing the Form itself into the client).@yankejustin commented on GitHub (Jun 7, 2015):
The biggest performance kicker is management of the buffers. For this reason, I this issue will be closed.