`Neighborhood.query.get` is all over the place.  For example in a discussion 
thread, each post calls `User.icon_url` which calls `private_project` which 
uses `self.neighborhood` but even though that is a `LazyProperty` it is 
instance-level so doesn't get re-used much.  There are many other places too.

We could have a general purpose Neighborhood cache system and use it in lots of 
places.  Some tests might not want it to be cached though.  Another even 
generalized possibility is to extend Ming's identity map.  It currently indexes 
objects by `_id` only, but we could make it do lookups by any unique key(s) for 
a given model (e.g. `url_prefix` for `Neighborhood`).


---

** [tickets:#6388] Deep trace of single pageload**

**Status:** in-progress
**Labels:** performance 
**Created:** Mon Jun 24, 2013 04:38 PM UTC by Dave Brondsema
**Last Updated:** Mon Dec 16, 2013 11:07 PM UTC
**Owner:** Dave Brondsema

Let's do a trace (e.g. start with TimerMiddleware verbose mode to get every 
pymongo call; maybe try `line_profiler` later) of common functionality to every 
page.  Focus on just the core parts of allura, not looking into the specifics 
of whatever page you're on.  Might be helpful to test hitting an external link 
URL, so there's not much tool-specific going on, just core route handling, 
project/tool lookup, permission checks, etc.  Identify opportunities for 
improvement.


---

Sent from sourceforge.net because [email protected] is subscribed 
to https://sourceforge.net/p/allura/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/allura/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.

Reply via email to