Building a SEO friendly website requires to respond as fast a possible to crawlers with right content. The challenge is twofold :
Single Page Application tend to require a complete rewrite for SEO handling
Websites tend to have a poor performance for the first access.
Not handling these challenges may result in poor SEO ranking.
In this talk we will address how to make Jahia handle these challenges and serve content that is SEO friendly in near realtime .
5. Alternatives
Use EH-CACHE
What about the first time access ?
How large should be my JVM memory ?
What about the first time access ?
How consuming is it to synchronize my servers ?
Use a front end cache
How do I solve content updates in realtime ?
What about Single Page Applications ?
Site duplication
Create a JSP/HTML version of the site and route the
crawler to this dedicated version ?
My boss loves this €€€
6. How we did it
The short answer
Put a browser on the server
Preload the server-side browser with the Jahia
content
End user access the server side browser cache
What did it solve
Solves The first access
Content is preloaded in the browser cache
Solves the Single Page Application
Browser cache content host the DOM exactly as it is
displayed
7. The caching architecture
Step 1
Build the full list of URLs from the JCR
Step 2
Request from PhantomJS the URLs
Step 3
Put the DOM content in cache
What is PhantomJS
Webkit engine that render DOM as Chrome /
Safari would
8. Benefits
First time access at full speed
Preloading content in the cache
Support for Single Page Applications
Build cache content with the Webkit engine /
PhantomJS
What makes it possible
Modular and open Jahia Architecture
Notes de l'éditeur
This talk is about first time performance only.
It is about best practices for applicaitons. Jahia is not the problem here
Performance is above everything
Code may be crap but not performance
Even commercial versions of eh cache don’t solve the first time access.
Even commercial versions of eh cache don’t solve the first time access.
Even commercial versions of eh cache don’t solve the first time access.