İyi Haber : Flarumu’un hızını 5′e katlayacak yeni bir eklenti kısa süre içerisinde yayınlanacak. Eklentinin geliştiricisi Reflar tarafından yapılan açıklamalar aşağıda yer alıyor. Eklentinin adı ise ReCache
Kötü Haber: Eklenti ücretli olacak. Şimdilik Aylık 10 USD fiyat biçilmiş.
About
Flarum is already fast, but we can make it faster.
ReCache will cache all successful GET requests and relay them when requested again, massively decreasing future load times (more on that later)
Out of the box it will support caching to a file, Redis, and Memcached, but can be extended to use any custom driver someone is willing to make!
ReCache will also respond to any cache clearing that Flarum does on it’s own (via the command or enabling and extension) and will purge it’s cache according. It also comes with a command of it’s own to clear only it’s cache.
Protecting Private Data
The caches are saved based on the requester’s permission group to prevent any data (such as discussions in a private tag) from getting exposed to normal users. Guests, members, mods, and admins all have their own separate cache.
Extensibility
Your forum, your rules
When you first install ReCache it will cache every successful GET request, but it doesn’t have to be that way, with a little bit of coding knowledge you will be able to set up your own cache profile!
Results
So how does it actually perform?
Early testing has shown some incredible results. While using the slowest driver (filesystem) we were able to get the homepage loading time for guests down from 1.4s (1400ms) to just over 100ms that’s 93% faster! More testing is required, but we assume it can only get faster from there!
Release Date and Other Info
We are targeting a release shortly after Flarum’s 9th beta which is scheduled for release at the end of the month, if it isn’t done within then, we will have no problem sending it out for beta 8 and updating it for beta 9.
Due to the immense time and effort this extension is taking to put together, it will be a premium extension.
If you have any questions or want to just chat us up, join our Discord! We always love talking to excited Flarumites like yourself!
Well that’s all we’ve got for you folks, I hope you’re as excited as we are!
We are now in the testing phase as all the main features have been completed!
New feature: avatar images will be optimized when uploaded to reduce the storage space on your desk as well as reduce the loading time for those images.
ETA:
As long as no major issues crop up in testing, I hope to get this extension release by next weekend.
Have a great weekend!
The ReFlar team
Things got away from me but this extension’s release is now imminent. As promised long ago, here are some benchmarks.
Results:
The first image is of a guest who has never loaded the website, and is an Uncached response (no browser cache and no ReCache) - response time: 1308ms
The second image is of a guest who has never loaded the site and is only cached via ReCache (No browser) - response time: 634
For guests, you are looking at around a 52% reduction in loading times.
For users however, the speed up is more dramatic as they’re utilizing the browser cache as well - only 103 ms!!
That’s an incredible 93% page load time reduction.
Thats not all:
ReCache has the option to optimize avatar uploads to reduce their footprint on your drive and loading time for users. To put the icing on the cake, ReCache enables image lazy loading on your forum, yet again reducing the time it takes for the forum to display on the user’s screen.
Abstract:
I personally believe that the loading time of a website directly correlates with the overall quality. When a website loads almost instantly (loading spinners excluded), I think that the website is important and has value. I believe this extension can take your forum to the next level, and increase the number of guests that stick around.
Launch:
ReCache will launch with the ability to store the cache in files (storage folder), or in a Redis instance, Memcached is planned for a future release.
We are hoping to release this extension by the end of next week
I am pleased to announce that at launch, this extension will also feature query and “smart” caching.
Function:
The query cache sits between Flarum and your MySQL database, it listens for requests, notes the MySQL command, and caches the data from MySQL. The next time the same data is requested it will load it straight from memory, taking a massive load off your server.
Security:
As with the rest of ReCache, query caching is permission aware, Byobu and posts in restricted tags will continue to stay private, while still benefitting from the cache.
Smart caching:
The query cache listens to all database queries which means it knows when discussions are added, posts are updated, or when a new user registers. The cache will Intelligently update its store so your forum is always up to date, and nothing is missed.
How it’s different:
With the base request cache (the one ReCache started with), discussions and posts cannot be cached as there is no way to update them cleanly. With the new query cache, we can cache the request to those routes.
Third-party extensions:
Query caching will support All Flarum extensions that make calls to the database.
Gains:
Using Redis we saw a 50% reduction in load times for discussions, posts, and user search (once cached) and a significant decrease in load on the database as time progressed.
Because of the amount of different requests that need to be cached, query and smart caching will only be available if you use Redis. If this isn’t an option for you, you can continue to reep the load reductions (see here) with the base caching functions.
I can’t wait to get this extension into your hands. I’m really excited to see what this can do for your forums.