Intro
RAO d.o.o., a Croatian software company, specializes in innovative software solutions for local government operations and parking management.
Recently, they embarked on a new project, “Dubrovnik Pass,” aimed at simplifying access to Dubrovnik’s attractions for tourists, replacing the previously used “Dubrovnik Card” with a 100% digital solution.
The project had a tight deadline and posed numerous challenges. The significant seasonal variations in traffic meant that RAO had to predict and prepare for peak traffic spikes. In response, RAO turned to the scalability, reliability, and cost-effectiveness of AWS cloud, which provided the perfect solution to meet the project requirements.
Who Uses Dubrovnik Pass?
Tourists
The Dubrovnik Pass provides tourists with a comprehensive service for visiting attractions in Dubrovnik, Cavtat, and Župa Dubrovačka, as well as for using public city transport. The Pass is issued for a period of one/three/seven days. Additionally, there’s an option for digital nomads with an extended usage period.
Travel Agencies
The Dubrovnik Pass offers travel agencies the opportunity to purchase group passes. An additional benefit is the integration with the “Dubrovnik bus” system. Each agency that buys 20 or more passes automatically gets a time slot for boarding and disembarking tourists in the city.
City
Dubrovnik Pass is a comprehensive solution that provides the city of Dubrovnik with insights and analytics on attraction visitation in real-time, as well as managing congestion in public city transport. The operational complexity of card distribution and the costs of card preparation and printing have been eliminated. Also, there’s a significant environmental aspect; after use, most people discard the cards, so by eliminating them, the amount of unnecessary waste and all consequential costs have been reduced.
The Problem
After winning the public competition for Dubrovnik Pass and due to short project deadlines, RAO needed to set up the project environment as quickly as possible.
For previous projects, RAO used its infrastructure in one of the Croatian data centers. Dubrovnik Pass has significant variations in traffic depending on the season, making it hard to predict the infrastructure size that could withstand peak traffic spikes.
Generally, some services that RAO needed to develop for this project were already available on AWS.
Why AWS cloud?
RAO chose AWS cloud for this project due to its exceptional scalability, reliability, and cost control, perfectly matching project requirements.
Additionally, they were attracted to the services already available on AWS that would significantly speed up development time. The development time for this project was 30% faster than previous similar projects.
Scalability
With AWS services such as Auto Scaling and Elastic Load Balancing, it is easy to scale up or down based on the demand to ensure high performance all the time.
Cost-Effectiveness
With AWS, clients only pay for the actual resource consumption without long-term contracts or up-front commitments. Setting up and running test environments is much more cost-effective.
Reliability
AWS cloud runs on a scalable, reliable, and secure global computing infrastructure that ensures that critical services run reliably.
Speed of Development
AWS helps speed up development time by providing production-ready services that would otherwise take months to develop.
Solution Description
To address RAO’s needs, we designed a solution that automates the provisioning process, introduces monitoring and alarming capabilities, and provides redundancy with backup/DR capabilities.
Auto-provisioning
The whole code provisioning process is fully automated. The code is pushed to the AWS CodeCommit services, and after the successful commit, the code is deployed to the ECS cluster with AWS CodePipeline. The frontend application is deployed to S3 and accessed through Amazon CloudFront.
Monitoring and Alarming
Amazon CloudWatch combined with AWS Simple Notification Service, takes care of monitoring and alarming capabilities. Alongside this, we also assumed the responsibility of first-level support for incidents, providing quick and effective solutions whenever required.
Backup and Redundancy
To safeguard important user data, we configured RDS backup with user-defined retention. Databases are also replicated in two EU availability zones. These measures provide DB redundancy.
AWS Well-Architected Framework
During the project, we carried out AWS Well-Architected review.
The AWS Well-Architected Framework describes key concepts, design principles, and architectural best practices for designing and running workloads in the cloud. It is built around six pillars - operational excellence, security, reliability, performance efficiency, cost optimization, and sustainability.
Next Steps
Building upon the momentum of successful collaboration and insights gained from the “Dubrovnik Pass” project, RAO decided to migrate all its services to AWS. Additionally, they chose to use our Consulting Services to help them improve their existing solution even further.
Migration Project
As a result of successful collaboration and tangible benefits provided by AWS, RAO made a strategic decision to migrate all of its services from local data centers to AWS. This migration will help them enhance security, scalability, and operational efficiency and prepare the company to provide its SaaS services globally.
The migration project is currently in the assessment phase, where we are reviewing their existing systems, evaluating the infrastructure, and planning the most effective way to migrate applications and data to AWS.
Looking ahead, RAO sees the migration project as a major step in its transformation. This strategic shift not only allows RAO to leverage the agility and flexibility of AWS cloud but also paves the way for future innovations and ensures RAO stays at the cutting edge of its industry.
Consulting Services
As a part of ongoing operations for the “Dubrovnik Pass” project, RAO uses our Consulting Services. We are helping them in their daily tasks with design consultations, infrastructure planning, implementation services, optimization, and staff education.