- Navigation system
- App
- Website
Polish Tourist Organization
Polish Tourist Organization
The Polish Tourist Organization (POT) is a government unit responsible for the promotion of Poland at home and abroad. The organization is subordinate to the Minister of Sport and Tourism, and its goals are pursued, inter alia, by through numerous websites.
Customer
subject of delivery
- Maintenance of websites with guaranteed SLA
technologies
- Selection and configuration of servers
SLAs (Service Level Agreements) are an inseparable element of contracts with IT companies. SLA records are a standard, for example, in hosting contracts where the expected effect is expressed as a percentage, e.g. SLA at the level of 99.1% per year means that a given service may be unavailable for a maximum of 12 minutes and 57 seconds a day. For most companies from the e-commerce, logistics or, for example, state administration systems, it will be far too long. Online stores that generate income around the clock and cannot afford any interruptions can expect SLAs of up to 99.99% or more, which means no availability for 8 seconds a day (52 minutes 35 seconds a year). Banks and many other sectors also have similar expectations.
What the SLA should contain
First of all, the SLA should describe the service, specify the level of its availability guaranteed by the provider and indicate how and with what tools it will be measured / monitored. The SLAs should also contain information on what remedies and at what time the provider will take in the event of a failure and penalties in the event of failure to meet the declared service parameters. This information should be included in a specific time frame, e.g. the response time to a critical error may be up to 30 minutes, while for an error that does not interfere with the main functionalities of the website, the satisfactory time will be e.g. 3 hours.
It is also worth immediately defining the time windows in which the planned service works should be carried out, e.g. related to adding new functionalities. Usually, the hours are selected when the traffic of users is the lowest, e.g. between 1 and 6 am.
SLA for the Polish Tourist Organization
The websites under our care include:
- Poland Travel
- Polish Tourist Organization
- Rest in Poland
- Safe accommodation
- Tourist voucher
The declared level of their availability is 99.25%, but usually we manage to significantly improve it. Thanks to this, for the vast majority of months (including the key summer months), POT services are available without interruption, reaching the SLA of 100%. Importantly, the monitoring of availability is carried out by an entity independent from Inovatica, the company Monit24.pl
How to ensure high availability (SLA)
There are several key elements that affect the availability of a website.
Choosing a web server
The web server is a key element necessary to publish the website on the Internet. Its choice has a major impact on how many concurrent users we will be able to handle and how many server resources will be used for this purpose. Although there are many solutions, in our opinion, a sensible choice is limited to two solutions: Apache and Nginx. When implementing the infrastructure for POT services, we focused on Nginx, which allows us to handle more simultaneous connections, without unnecessary blocking of resources. One of the goals of developing the Nginx server software was to support high-traffic websites.
The web server should do as little as possible
In the case of large websites (with high traffic), it is important to save the resources of the web server as much as possible. If some tasks can be performed by another service, it is worth considering such a solution. In the case of the POT infrastructure, the proxy service based on the Haproxy software was put to the fore. All redirects, both the change of the protocol from http to https, redirects related to the geolocation of users, and redirects related to marketing activities are carried out before the query reaches the web server. The Haproxy service also acts as a reverse ssl proxy, thus offloading the Nginx server.
Another element that helps to save resources consumed by the web server is the appropriate server configuration. POT websites have been configured so that static resources that do not change over time are cached on the client's side. Thanks to this, files that repeat many times on the website pages are saved in the browser cache and are not downloaded many times when browsing POT websites.
Server protection
Nowadays, it happens that more than half of the users visiting the website are not human. We do not mean that POT websites are visited by E.T.'s cousins. The problem for solutions such as POT servers are internet robots, which send requests for subsequent subpages of the website at a rate of several dozen per second without any inhibitions. To protect against this type of overzealous and malicious visitors, we used the old but proven fail2ban mechanism. It analyzes the web server logs and, based on the user-agent field and / or the number of erroneous queries, temporarily blocks access to the server.
Server selection
In the case of such large sites as polska.travel sites, it is not possible to cache the entire content of the site. The time of access to files on the server turns out to be the bottleneck. To overcome the impact of data access delays caused by physical hardware limitations. We chose servers equipped with fast ssd disks, and a significant amount of RAM allowing for the configuration of larger than standard caches.
To sum up, many factors influence the achievement of high availability of the website. Much also depends on external risks, but a well-configured infrastructure is able to effectively minimize potential threats.
More information on the solutions discussed in the text:
Check out our case studies
Check how we solve problems of various industries. Find out how our websites, TYPO3 services, Android and iOS mobile applications are created. Click on the selected case study and find out more: