Comments (9)
Created a branch that makes the following files only cache for 30mins (pdf|doc|docx|txt|xls|xlsx|ppt|pptx|pps|ppsx|odt|ods|odp|mp3|mov|mp4|m4a|m4v|mpeg|avi|ogg|oga|ogv|weba|webp|webm):
https://github.com/govCMS/govCMS/tree/binary_cache_times
Just needs a PR and approval etc.
from govcms7.
Hey @paulkilla , we shouldn't need to have custom branches in the main govCMS repo for changes. Instead, contributors should fork govCMS to their own account and make changes there. That way they can submit back easily as a pull request. This is also a viable workflow for non-maintainer contributors.
You can go ahead and remove that branch from the core repo.
from govcms7.
from govcms7.
If files need to be updated then it sounds like a Digital Asset Management (DAM) requirement? We should note that govCMS is a CMS and not a DAM. We do support the use of files PDF but the not the ability to manage them with such advanced capabilities.
It would be great to get some context around why these files must be files and cannot be HTML pages instead (e.g. its because they're images or audio). Just want to be sure we're meeting a requirement that doesn't discourage use of structured data that help make the site more semantic.
@gollyg - probably good to get your insights here too.
from govcms7.
Josh's points around structured data not withstanding, there is an immediate need to support agencies that publish in file formats such as .pdf that are consumed by their audience on a regular basis. These files are frequently updated with changing information and if they are to be an authoritative source of information we can't have technology such as cache impeding their consumption.
from govcms7.
Our issue with file caching is not the length of time the files are cached for, but our limited ability to remove individual URLs from the cache on demand on a daily basis. In fact, an even longer cache period would be absolutely fine if we could remove individual files from the cache immediately. Our perfect world scenario looks like this:
- A user unpublishes a page or file
- An automatic call is made to Varnish to remove that object from the Varnish cache.
- An automatic call is made to Akamai to remove that object from the Akamai cache
We actually think this scenario is a publisher's expected result from any CMS when unpublishing a document.
The second best scenario would be our admins having the ability to remove specific objects from both caches without having to raise a ticket or clear an entire cache.
from govcms7.
I think that the real issue seems to be the ability to purge a file from all levels of cache on demand (or on file update). I don't think that reducing the length of time that files are in cache is necessarily going to provide a solution, and it may be detrimental to the platform as a whole.
At the moment there are workarounds available, but the real solution seems to be providing that purge ability to the site editor.
from govcms7.
I agree with @WebProject2015 and @gollyg, a way to purge from the cache and putting that power back into the hands on each site owner would be ideal.
Either an automated process when the content is updated, a purge request is sent, followed by a reindexing, or at least allowing content editors to enter an asset URL to purge would be a good way forward.
Some options to think about:
https://www.drupal.org/project/akamai
https://www.drupal.org/project/acquia_purge
https://www.drupal.org/project/expire
@paulkilla, @invisigoth: Thoughts?
@fiasco And potentially, if we decided to do this, since these modules are specific to the govCMS SaaS environment, should they be left out of the distribution itself, and moved into the Acquia build/deploy process for the SaaS environment?
If PaaS users (or those using the distro on other hosting platforms) wanted to add them in, no worries, but would reduce the bloat of the distro if it wasn't the default?
from govcms7.
I think there is value in illustrating the shortcomings of a govcms implementation not on the hosted platform. However, we shouldn't make it hard for non-hosted users to use govCMS.
So in places where we integrate govCMS with the platform (acquia search, acquia connector, acquia SF and akamai), we should wrap these into features than can be turned on or off. Off by default for the open source distribution and on by default for use on the hosted platform.
So in non-hosted use of govCMS, the features are available but off. This shows an ability they cannot utilise but also doesn't make govcms usage outside the hosted platform harder.
from govcms7.
Related Issues (20)
- GovCMS Drupal 7 - Updates, Support, End of Life November 2022
- Update UUID to 7.x-1.1 HOT 1
- Field Groups not created properly in PHP7.1 HOT 2
- Checkboxes not visible on admin forms using default Shiny theme.
- Consider adding flood_control and flood_unblock modules in the distro. HOT 1
- Update Drupal core to 7.61 HOT 2
- Include an easy solution for implementing mega menus HOT 1
- Behat test failing - year dropdown HOT 1
- XML Sitemap: An unknown error has occurred (805303f4)
- Webform email "include files as attachments" function broken in govCMS 7.x-3.7 HOT 1
- PHP Notice in hierarchical_select module HOT 3
- Upgrade xmlsitemap to 7.x-2.6 HOT 3
- Upgrade Funnelback Search Integration to 7.x-4.0-beta5 HOT 1
- What does PHP 7.2 mean to govCMS 7 sites? HOT 2
- Logs flooded with warning messages "Invalid display settings encountered" HOT 2
- Remove the SCAYT plugin from CKEditor - rely on the native browser spellchecker instead.
- How does Solr search work in govCMS platforms? HOT 4
- Patch redis module to force a timeout HOT 1
- Facet block titles display for empty facets HOT 1
- Bean update 7.x-1.13 Causes Duplicate Headers HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from govcms7.