📜 ⬆️ ⬇️

Accelerating the site "in 1 click" - a reality

With the release of the new version of WEBO Site SpeedUp (applications for automatic acceleration of websites) - 1.3.0 - we were finally able to say with confidence: it is here. In the sense: the idea of ​​automatic acceleration of sites is implemented.

Let me remind you that everything started a year and a half ago , when the idea arose to put together all the methods to speed up the site, overcome the features of hosting multiple providers and browsers, wrap it all in a beautiful interface and make it as simple as possible. The last point turned out to be the most time-consuming in terms of implementation (it took us about half a year to realize, design and implement the final concept).


A bit of history


In 2009, after the appearance of the open source project Web Optimizer (yes, the source code of the product is completely open until now), until December, the core of the product was actively formed, there were a lot of intermediate versions, the functionality changed right before our eyes. In June 2009, the product had the first sane interface (its main ideas were then used in the Setup Wizard, and the author of the interface, fade , now works with us on an ongoing basis).
')
The main difficulties with the product (except that it is generally complicated :) consisted in the need to configure it for each specific site (because there are millions of situations, and the product was not originally created for autonomous analysis of the site configuration and its smart acceleration). On the basis of the installation and configuration guide, online documentation was created (Wiki, in .pdf format takes a few dozen pages), and then the video configuration guide .

But all this did not save us, and the fall of 2009 turned into a complete fiasco. We came to “ordinary” users (who, maybe, did not even know the term “client optimization”) and offered our product. And he was too difficult for them. But we did not stop and went further.

In two months, the interface was completely redesigned, and as early as December 2009, the product received a completely new interface and expanded customization functionality , and its official release took place in February of this year . And Web Optimizer (still available until version 0.6.7) was renamed to WEBO Site SpeedUp.

In addition, we continued internal integration with well-known platforms (because an external application, without access to the system's API, cannot effectively cache HTML pages on the server and more efficiently handle HTML output). In addition to the existing integrations with WordPress, Joomla !, Drupal and Bitrix at the end of 2009, CS-Cart, Magento, Netcat were added (UMI.CMS, MODx and a couple of other popular systems are in the near future). But this seemed to us a little.

The control shot was the implementation of the concept of “smart” site acceleration based on product functionality and analysis of the current server environment, the situation on the site in terms of performance and the client component - the Setup Wizard. Now acceleration has become available literally in 3 steps: install the product, go to the product page and run the Setup Wizard, enable the prepared configuration. Everything.

Setup Wizard


Setup Wizard What lies under the beautiful pictures with funny people? First, we wrote out an algorithm for setting up the product , which we use ourselves to speed up customer sites. This is simply the consistent application of those settings that are already in the product.

Further it was more difficult. If you count the change in the styles of the site is quite simple - after all, you can compare the calculated styles for several (dozens) basic elements and decide whether everything is in order with CSS optimization, then everything is much worse for JavaScript. Functional tests cannot be performed, but basic things (tracking errors on a page when merging / minimizing files) are possible. The first trick was waiting here: correctly, due to the confluence of many circumstances, the algorithm for detecting JS errors only works in Firefox and IE (mostly because there is a window.onerror handler). In Opera / Webkit-browsers, this was not achieved, so in some cases the automation does not work.

Then there were a couple more difficulties (for example, determining the correctness of minimizing HTML or finding known patterns for deferred loading), but they were all overcome. Therefore, the remaining parts of the algorithm (the decision to minimize HTML, use data: URI / htaccess / delayed loading of JavaScript / multiple hosts) are applied quite simply and also automatically. For the time being, we have only manually adjusted server caching (because it is almost impossible to understand the logic of the site’s work automatically). Maybe in the future there will be a couple of questions.

As a result, the Setup Wizard consists of three steps:
  1. Auto tune. The current site speed is measured, all known optimization methods are applied for CSS, JavaScript, HTML and the resulting (accelerated) version of the site is compared with the original one. If something went wrong, the optimization is disabled.
  2. Manual setting. Now this is a question about server caching and a list of actions that could not be performed during automatic configuration.
  3. Completion setting. Calculate the new site speed and the resulting acceleration. The resulting configuration can be saved and immediately enable WEBO Site SpeedUp.

Obviously, this approach works well only for sites that do not use different design / client logic in different sections. But in this case only manual adjustment (or adjustment) of the product is possible. In the future, we plan to make optimization even more “smart” in order to take into account such cases on our own, without additional questions to the user.

List of changes


Compared with version 1.2.0

Licensing policy


As we have already announced, the product is now available for home users absolutely free . If you use it on a commercial site (that is, one that is aimed at making a profit), then you need to purchase a license (you can use a lightweight, 1,800 rubles a one-time). The full license now includes extended technical support, and we also offer product acceleration on a turnkey basis (for those who need a guaranteed result). Naturally, we are working on the scheme "guaranteed acceleration with payment for the result." You can send a request here .

Also available is a SaaS-version of the product, in which all advanced features are rated, and you can pay in any convenient schedule, while accelerating the site costs about 100-200 rubles per month.

We are always open to new suggestions and wishes on the work of the site accelerator, and judging by the daily letters from enthusiastic users, not in vain :)

Our website: www.webogroup.com
Product Section: www.webogroup.com/home/site-speedup
Download page: www.webogroup.com/home/download
Online documentation: code.google.com/p/web-optimizator/w/list
Or PDF: code.google.com/p/web-optimizator/downloads/detail?name=webo.site.speedup.userguide.com.pdf
Our blog (in English): blog.webogroup.com
And our twitter (in English): twitter.com/wboptimizer

Source: https://habr.com/ru/post/104386/


All Articles