975
edits
| Line 30: | Line 30: | ||
'''Ways to Optimize''' | '''Ways to Optimize''' | ||
* fix server-side components to properly use HTTP headers | * fix server-side components to properly use HTTP headers | ||
* honor HTTP headers properly in the client | |||
** do not explicitly send no-cache headers for all pages | |||
** set healthy cache expiry css, jpg, js | |||
** set healthy cache expiry for persona data | |||
* modify failure or timeout handling in client | |||
** no network connection - in offline mode it shouldn't even try | |||
** low timeout - try header first and if no response, keep current persona | |||
** check cache timeout and if not expired, don't check for new | |||
** check content-length and if nothing is different, don't download new | |||
* discuss capacity planning assuming the above are addressed | |||
** if N users updated N times per day, how many requests does that create | |||
** what hardware would we need to purchase | |||
** better database server with multiple read-only slaves | |||
** more memory to support memcache partitions | |||
** N web nodes for Apache/PHP | |||
** what software changes would we need to make | |||
** add memcached support | |||
** add multiple database support | |||
** fix session persistence to be efficient in a clustered environment with load balancer | |||
'''Ryan Suggestions''' | '''Ryan Suggestions''' | ||
I feel like we need more resources for getpersonas.com to achieve the level of features, stability and momentum that we're expecting of it. The current backend codebase is relatively messy as it was developed as fast as possible. This is now a technical debt that is gradually slowing us down. | I feel like we need more resources for getpersonas.com to achieve the level of features, stability and momentum that we're expecting of it. The current backend codebase is relatively messy as it was developed as fast as possible. This is now a technical debt that is gradually slowing us down. | ||
| Line 38: | Line 57: | ||
A few solutions come to mind for me: | A few solutions come to mind for me: | ||
# <strong>DONE</strong> - Ryan is web dev for getpersonas.com Assigning (or hiring) a full-time web developer to getpersonas.com to re-write/fix the codebase (and stay as the full-time developer) | |||
# Move hosting of personas to AMO | |||
Retrieved from "https://wiki.mozilla.org/Firefox/Projects/Personas_Uplift_Exploration/Capacity" | |||
<br> | <br> | ||
edits