Kalendern laddar snabbare

Idag har vi släppt en produktuppdatering som förbättrar prestandan på bokningssidans kalendrar avsevärt jämfört med tidigare. Vi har optimerat listningen av bokningsbara tider så de presenteras snabbare för kunderna.

Tidigare kunde det ta i genomsnitt mellan 2,5-3 sekunder att lista alla lediga tider för en månad i kalendern på bokningssidan. Efter vår senaste uppdatering är vi nere på 0,3-0,4 sekunder i genomsnitt vilket betyder att det nu går upp mot 9-10 gånger snabbare än innan.

Förbättrad mobilanpassning kommer inom kort

De senaste månaderna har vi jobbat på att lösa buggar och förbättra mobilanpassningen i kalendrarna på bokningssidan. Med den nya kommande mobilanpassade bokningssidan hoppas vi att fler kunder väljer att boka med mobil och enklare hittar lediga tider att boka. Mer om detta kan ni läsa på bloggen när vi släpper produktuppdateringen.

Bokningsregler kommer snart

Först i kön på projekt efter mobilanpassningen nämnd ovan är vår nya funktion vi kallar för bokningsregler.

Vad är en bokningsregel? Jo, en bokningsregel styr hur tätt inpå ankomst/start en tid får bokas.

Till exempel kommer du kunna ställa in att man endast får boka ett träningspass från 2 dagar innan det börjar fram tills dess att det är 10 min kvar till start. Bokningsregeln i detta fallet tillåter då bokning mellan 2 dagar till 10 minuter före start.

Detsamma gäller för till exempel bordsbokning eller hyra av lokaler eller boka kurser, ja det funkar för allt möjligt. Ett exempel kan vara att du erbjuder bordsbokning på nätet och inte vill tillåta webbokningar för tätt inpå ankomst. Om ett bord får bokas för en sittning mellan kl 18-20 kan du förhindra att bokningar görs två timmar innan mellan kl 16-18.

Mer om detta kan ni läsa på bloggen när vi släpper stöd för bokningsregler.

Teknisk förklaring till prestandaförbättringen

Den som är tekniskt kunning tänker kanske att "Det är väl bara att slänga på ett index i databasen så är problemet löst?" Svaret är nej! Om databasen redan är optimerad och databasfrågorna tar någon tusendel av en sekund att köra så är det inte databasen som är problemet.

Lösningen ligger i rätt val av algoritmer med optimistisk tidskomplexitet för att beräkna kollisioner mellan bokade, spärrade och lediga tider i en kalender som har som uppgift att förhindra dubbelbokningar och att alla tider fortsätter att visas rätt.

Tänk dig att lista alla tider från måndag vecka 17 kl 00:00 i 15 min-intervaller till och med söndag vecka 22 kl 23:55 och samtidigt beräkna kollisioner på detta. Tänk även på att bokningssystemet måste ta hänsyn till att olika öppettider kan finnas på olika veckodagar i kalendern.

Tycker du att det låter intressant? Behöver du själv ett bokningssystem och tycker det är för krångligt att bygga ett själv eller underhålla ett bokningssystem från öppen källkod som inte håller måttet? Välkommen att prova vårt bokningssystem Boka365.