SlideShare a Scribd company logo
1 of 29
Download to read offline
Matt Hamilton
                          &
                   Matt Sital-Singh

Plone Conference 2011                 Matt Hamilton
San Francisco                         Matt Sital-Singh
0
Plone Conference 2011
San Francisco
                        Background


                                     Matt Hamilton
                                     Matt Sital-Singh
Use Case

        • Learning Management-type system
        • A lot of content
        • Users ‘editing’ content, but not necessarily
            aware of it
        • Lots of ‘clustering’ of load on resources
Plone Conference 2011                              Matt Hamilton
San Francisco                                      Matt Sital-Singh
Scale
        • Plone 3
        • User accounts: 30,000
        • Messages: 160,000
        • Course questions: 260,000
        • Other: 60,000
Plone Conference 2011                 Matt Hamilton
San Francisco                         Matt Sital-Singh
1     Don’t Create Ghost
                 Content

Plone Conference 2011
San Francisco
                             Matt Hamilton
                             Matt Sital-Singh
• User perception of speed
        • If they expect a ‘read’ they want a ‘read’
            - user signups
            - course starting

        • Will accept a delay if you are actually
            processing something


Plone Conference 2011                               Matt Hamilton
San Francisco                                       Matt Sital-Singh
2         Use Optimization
                    Products

Plone Conference 2011
San Francisco
                                   Matt Hamilton
                                   Matt Sital-Singh
• experimental.catalogqueryplan
        • experimental.contentcreation
        • experimental.daterangeindexoptimisations
        • experimental.aggressiveopaquespeedup
        • collective.indexing
Plone Conference 2011                          Matt Hamilton
San Francisco                                  Matt Sital-Singh
3        One Plone site or
                  Multiple?

Plone Conference 2011
San Francisco
                                   Matt Hamilton
                                   Matt Sital-Singh
• One Plone site per ‘site’
        • Multiple ‘sites’ per Plone site
        • Common content?


Plone Conference 2011                       Matt Hamilton
San Francisco                               Matt Sital-Singh
4       Large Catalogs are
                    Slow

Plone Conference 2011
San Francisco
                                   Matt Hamilton
                                   Matt Sital-Singh
• We had 260,000 questions
        • each had 2-4 answers
        • = 520,000 - 1,400,000 answers
                        All in portal_catalog!

Plone Conference 2011                            Matt Hamilton
San Francisco                                    Matt Sital-Singh
5
      Optimize your Catalogs


Plone Conference 2011
San Francisco
                         Matt Hamilton
                         Matt Sital-Singh
• Pre-load Catalog Queryplan
        • Balance your BTrees


Plone Conference 2011                  Matt Hamilton
San Francisco                          Matt Sital-Singh
effective date index:


                           1308585257

                           1319126057

                           1319730857

                           1319817170

                           1319817198

Plone Conference 2011                           Matt Hamilton
San Francisco                                   Matt Sital-Singh
1308585257

                 1319126057

                        1319730857

                               1319817170

                                      1319817198

Plone Conference 2011                       Matt Hamilton
San Francisco                               Matt Sital-Singh
• Used catalog multiplexer to assign ‘Answer’
            content type to dummy catalog

        • Moved messages to separate
            message_catalog

        • Monkey-patch items out of the catalog?

Plone Conference 2011                              Matt Hamilton
San Francisco                                      Matt Sital-Singh
6     If You Know Where
           Something Is - Don’t
                 Search for it

Plone Conference 2011
San Francisco
                              Matt Hamilton
                              Matt Sital-Singh
• Got into bad habit of using the catalog
            ALL the time

        • Don’t just blindly use catalog when
            unrestrictedTraverse / contentValues will
            do

        • RAM is cheap, user patience is NOT

Plone Conference 2011                               Matt Hamilton
San Francisco                                       Matt Sital-Singh
7        Use
   unrestrictedSearchResults
           if possible

Plone Conference 2011
San Francisco
                        Matt Hamilton
                        Matt Sital-Singh
• unrestrictedSearchResults does not check:
         • effective index
         • allowed_roles_and_users index
       ➡ A lot less work for the catalog to do

Plone Conference 2011                            Matt Hamilton
San Francisco                                    Matt Sital-Singh
8Is Plone the Right Tool?


Plone Conference 2011
San Francisco
                             Matt Hamilton
                             Matt Sital-Singh
• “When you have a hammer, everything
            looks like a nail...”

        • A lot of this data is relational...
        • Not much of it is CMSish
        • Maybe should have used Pyramid?

Plone Conference 2011                           Matt Hamilton
San Francisco                                   Matt Sital-Singh
9        Use Event Driven
                  Workflow
              (Don’t recalculate)

Plone Conference 2011
San Francisco
                                    Matt Hamilton
                                    Matt Sital-Singh
• User rating / Course ranking
        • Use workflow event subscribers, don’t re-
            calculate on view every time




Plone Conference 2011                          Matt Hamilton
San Francisco                                  Matt Sital-Singh
10     Some things don’t need
          to be immediate

Plone Conference 2011
San Francisco
                           Matt Hamilton
                           Matt Sital-Singh
• “You have 10 new messages”
        • Not everything has to be updated all the
            time in every location on the site




Plone Conference 2011                            Matt Hamilton
San Francisco                                    Matt Sital-Singh
Thanks!


Plone Conference 2011             Matt Hamilton
San Francisco                     Matt Sital-Singh

More Related Content

More from Matt Hamilton

Supercharge Your Career with Open Source
Supercharge Your Career with Open SourceSupercharge Your Career with Open Source
Supercharge Your Career with Open SourceMatt Hamilton
 
Plone and Sharepoint
Plone and SharepointPlone and Sharepoint
Plone and SharepointMatt Hamilton
 
How to get started with the Pluggable Authentication System
How to get started with the Pluggable Authentication SystemHow to get started with the Pluggable Authentication System
How to get started with the Pluggable Authentication SystemMatt Hamilton
 
Plone and Single-Sign On - Active Directory and the Holy Grail
Plone and Single-Sign On - Active Directory and the Holy GrailPlone and Single-Sign On - Active Directory and the Holy Grail
Plone and Single-Sign On - Active Directory and the Holy GrailMatt Hamilton
 
BathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneBathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneMatt Hamilton
 
Plone Symposium East 2011 Keynote: Plone, A Solution not a Product
Plone Symposium East 2011 Keynote: Plone, A Solution not a ProductPlone Symposium East 2011 Keynote: Plone, A Solution not a Product
Plone Symposium East 2011 Keynote: Plone, A Solution not a ProductMatt Hamilton
 
Plone: Event Driven Programming
Plone: Event Driven ProgrammingPlone: Event Driven Programming
Plone: Event Driven ProgrammingMatt Hamilton
 
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)Matt Hamilton
 
The Flexibility of Open Source - Plone in the Public Sector
The Flexibility of Open Source - Plone in the Public SectorThe Flexibility of Open Source - Plone in the Public Sector
The Flexibility of Open Source - Plone in the Public SectorMatt Hamilton
 
The Flexibility of Open Source: A Case Study of a large Corporate Intranet
The Flexibility of Open Source: A Case Study of a large Corporate IntranetThe Flexibility of Open Source: A Case Study of a large Corporate Intranet
The Flexibility of Open Source: A Case Study of a large Corporate IntranetMatt Hamilton
 
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)Matt Hamilton
 
An introduction to Zope Page Templates and their use outside of Zope (+Audio)
An introduction to Zope Page Templates and their use outside of Zope (+Audio)An introduction to Zope Page Templates and their use outside of Zope (+Audio)
An introduction to Zope Page Templates and their use outside of Zope (+Audio)Matt Hamilton
 
Lipstick On a Pig (+Audio)
Lipstick On a Pig (+Audio)Lipstick On a Pig (+Audio)
Lipstick On a Pig (+Audio)Matt Hamilton
 
Lipstick on a Pig - European Plone Symposium 2009
Lipstick on a Pig - European Plone Symposium 2009Lipstick on a Pig - European Plone Symposium 2009
Lipstick on a Pig - European Plone Symposium 2009Matt Hamilton
 
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...Matt Hamilton
 
NextGen Roadshow Bmex Case Study
NextGen Roadshow Bmex Case StudyNextGen Roadshow Bmex Case Study
NextGen Roadshow Bmex Case StudyMatt Hamilton
 
Open Source and Content Management (+audio)
Open Source and Content Management (+audio)Open Source and Content Management (+audio)
Open Source and Content Management (+audio)Matt Hamilton
 

More from Matt Hamilton (17)

Supercharge Your Career with Open Source
Supercharge Your Career with Open SourceSupercharge Your Career with Open Source
Supercharge Your Career with Open Source
 
Plone and Sharepoint
Plone and SharepointPlone and Sharepoint
Plone and Sharepoint
 
How to get started with the Pluggable Authentication System
How to get started with the Pluggable Authentication SystemHow to get started with the Pluggable Authentication System
How to get started with the Pluggable Authentication System
 
Plone and Single-Sign On - Active Directory and the Holy Grail
Plone and Single-Sign On - Active Directory and the Holy GrailPlone and Single-Sign On - Active Directory and the Holy Grail
Plone and Single-Sign On - Active Directory and the Holy Grail
 
BathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneBathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - Plone
 
Plone Symposium East 2011 Keynote: Plone, A Solution not a Product
Plone Symposium East 2011 Keynote: Plone, A Solution not a ProductPlone Symposium East 2011 Keynote: Plone, A Solution not a Product
Plone Symposium East 2011 Keynote: Plone, A Solution not a Product
 
Plone: Event Driven Programming
Plone: Event Driven ProgrammingPlone: Event Driven Programming
Plone: Event Driven Programming
 
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)
 
The Flexibility of Open Source - Plone in the Public Sector
The Flexibility of Open Source - Plone in the Public SectorThe Flexibility of Open Source - Plone in the Public Sector
The Flexibility of Open Source - Plone in the Public Sector
 
The Flexibility of Open Source: A Case Study of a large Corporate Intranet
The Flexibility of Open Source: A Case Study of a large Corporate IntranetThe Flexibility of Open Source: A Case Study of a large Corporate Intranet
The Flexibility of Open Source: A Case Study of a large Corporate Intranet
 
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)
 
An introduction to Zope Page Templates and their use outside of Zope (+Audio)
An introduction to Zope Page Templates and their use outside of Zope (+Audio)An introduction to Zope Page Templates and their use outside of Zope (+Audio)
An introduction to Zope Page Templates and their use outside of Zope (+Audio)
 
Lipstick On a Pig (+Audio)
Lipstick On a Pig (+Audio)Lipstick On a Pig (+Audio)
Lipstick On a Pig (+Audio)
 
Lipstick on a Pig - European Plone Symposium 2009
Lipstick on a Pig - European Plone Symposium 2009Lipstick on a Pig - European Plone Symposium 2009
Lipstick on a Pig - European Plone Symposium 2009
 
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...
 
NextGen Roadshow Bmex Case Study
NextGen Roadshow Bmex Case StudyNextGen Roadshow Bmex Case Study
NextGen Roadshow Bmex Case Study
 
Open Source and Content Management (+audio)
Open Source and Content Management (+audio)Open Source and Content Management (+audio)
Open Source and Content Management (+audio)
 

Recently uploaded

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Recently uploaded (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Mistakes Made and Lessons Learnt Scaling Plone post-Launch

  • 1.
  • 2. Matt Hamilton & Matt Sital-Singh Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 3. 0 Plone Conference 2011 San Francisco Background Matt Hamilton Matt Sital-Singh
  • 4. Use Case • Learning Management-type system • A lot of content • Users ‘editing’ content, but not necessarily aware of it • Lots of ‘clustering’ of load on resources Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 5. Scale • Plone 3 • User accounts: 30,000 • Messages: 160,000 • Course questions: 260,000 • Other: 60,000 Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 6. 1 Don’t Create Ghost Content Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 7. • User perception of speed • If they expect a ‘read’ they want a ‘read’ - user signups - course starting • Will accept a delay if you are actually processing something Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 8. 2 Use Optimization Products Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 9. • experimental.catalogqueryplan • experimental.contentcreation • experimental.daterangeindexoptimisations • experimental.aggressiveopaquespeedup • collective.indexing Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 10. 3 One Plone site or Multiple? Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 11. • One Plone site per ‘site’ • Multiple ‘sites’ per Plone site • Common content? Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 12. 4 Large Catalogs are Slow Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 13. • We had 260,000 questions • each had 2-4 answers • = 520,000 - 1,400,000 answers All in portal_catalog! Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 14. 5 Optimize your Catalogs Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 15. • Pre-load Catalog Queryplan • Balance your BTrees Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 16. effective date index: 1308585257 1319126057 1319730857 1319817170 1319817198 Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 17. 1308585257 1319126057 1319730857 1319817170 1319817198 Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 18. • Used catalog multiplexer to assign ‘Answer’ content type to dummy catalog • Moved messages to separate message_catalog • Monkey-patch items out of the catalog? Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 19. 6 If You Know Where Something Is - Don’t Search for it Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 20. • Got into bad habit of using the catalog ALL the time • Don’t just blindly use catalog when unrestrictedTraverse / contentValues will do • RAM is cheap, user patience is NOT Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 21. 7 Use unrestrictedSearchResults if possible Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 22. • unrestrictedSearchResults does not check: • effective index • allowed_roles_and_users index ➡ A lot less work for the catalog to do Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 23. 8Is Plone the Right Tool? Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 24. • “When you have a hammer, everything looks like a nail...” • A lot of this data is relational... • Not much of it is CMSish • Maybe should have used Pyramid? Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 25. 9 Use Event Driven Workflow (Don’t recalculate) Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 26. • User rating / Course ranking • Use workflow event subscribers, don’t re- calculate on view every time Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 27. 10 Some things don’t need to be immediate Plone Conference 2011 San Francisco Matt Hamilton Matt Sital-Singh
  • 28. • “You have 10 new messages” • Not everything has to be updated all the time in every location on the site Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh
  • 29. Thanks! Plone Conference 2011 Matt Hamilton San Francisco Matt Sital-Singh