āĻšā§āĻā§āϞ āϰāĻŋāĻāĻžāϰā§āĻā§āĻļāύ āϏāĻŋāϏā§āĻā§āĻŽ
āĻāĻ āĻ āϧā§āϝāĻžāϝāĻŧā§ āĻāĻŽāϰāĻž Marriott International-āĻāϰ āĻŽāϤ⧠āĻāĻāĻāĻŋ āĻšā§āĻā§āϞ āĻā§āĻāύā§āϰ āĻāύā§āϝ āĻāĻāĻāĻŋ āĻšā§āĻā§āϞ āϰāĻŋāĻāĻžāϰā§āĻā§āĻļāύ āϏāĻŋāϏā§āĻā§āĻŽ āĻĄāĻŋāĻāĻžāĻāύ āĻāϰāĻŦā§āĨ¤ āĻāĻāĻžāύ⧠āĻŦā§āϝāĻŦāĻšā§āϤ āĻĄāĻŋāĻāĻžāĻāύ āĻāĻŦāĻ āĻā§āĻāύāĻŋāĻāĻā§āϞ⧠āĻ āύā§āϝāĻžāύā§āϝ āĻŦā§āĻāĻŋāĻ-āĻāĻŋāϤā§āϤāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽ āĻĄāĻŋāĻāĻžāĻāύ āĻĒā§āϰāĻļā§āύā§āĻ āĻĒā§āϰāϝā§āĻā§āϝ, āϝā§āĻŽāύ:
- Airbnb āĻĄāĻŋāĻāĻžāĻāύ āĻāϰāĻž
- āĻĢā§āϞāĻžāĻāĻ āϰāĻŋāĻāĻžāϰā§āĻā§āĻļāύ āϏāĻŋāϏā§āĻā§āĻŽ āĻĄāĻŋāĻāĻžāĻāύ āĻāϰāĻž
- āĻŽā§āĻāĻŋ āĻāĻŋāĻāĻŋāĻ āĻŦā§āĻāĻŋāĻ āϏāĻŋāϏā§āĻā§āĻŽ āĻĄāĻŋāĻāĻžāĻāύ āĻāϰāĻž
āϏā§āĻā§āĻĒ ā§§ - āϏāĻŽāϏā§āϝāĻž āĻŦā§āĻāĻž āĻāĻŦāĻ āĻĄāĻŋāĻāĻžāĻāύ āϏā§āĻā§āĻĒ āύāĻŋāϰā§āϧāĻžāϰāĻŖ
āĻšā§āĻā§āϞ āϰāĻŋāĻāĻžāϰā§āĻā§āĻļāύ āϏāĻŋāϏā§āĻā§āĻŽ āĻāĻāĻāĻŋ āĻāĻāĻŋāϞ āϏāĻŋāϏā§āĻā§āĻŽ, āĻāĻŦāĻ āĻŦā§āϝāĻŦāϏāĻžāϰ āĻāĻžāĻšāĻŋāĻĻāĻžāϰ āĻāĻĒāϰ āĻāĻŋāϤā§āϤāĻŋ āĻāϰ⧠āĻāϰ āĻāĻŽā§āĻĒā§āύā§āύā§āĻāĻā§āϞ⧠āĻĒāϰāĻŋāĻŦāϰā§āϤāĻŋāϤ āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻĄāĻŋāĻāĻžāĻāύ āĻļā§āϰ⧠āĻāϰāĻžāϰ āĻāĻā§ āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰā§āϰ āĻāĻžāĻ āĻĨā§āĻā§ āĻāĻŋāĻā§ āĻā§āϞā§āϝāĻžāϰāĻŋāĻĢāĻŋāĻā§āĻļāύ āĻĒā§āϰāĻļā§āύ āĻāϰāĻž āĻā§āϰā§āϤā§āĻŦāĻĒā§āϰā§āĻŖāĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āϏāĻŋāϏā§āĻā§āĻŽā§āϰ āϏā§āĻā§āϞ āĻāϤāĻāĻž āĻšāĻŦā§?
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āϧāϰā§āύ āĻāĻŽāϰāĻž āĻāĻŽāύ āĻāĻāĻāĻŋ āĻāϝāĻŧā§āĻŦāϏāĻžāĻāĻ āϤā§āϰāĻŋ āĻāϰāĻāĻŋ āϝā§āĻāĻžāύ⧠ā§Ģ,ā§Ļā§Ļā§ĻāĻāĻŋ āĻšā§āĻā§āϞ āĻāĻŦāĻ āĻŽā§āĻ ā§§ āĻŽāĻŋāϞāĻŋāϝāĻŧāύ āϰā§āĻŽ āĻāĻā§āĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āĻāĻžāϏā§āĻāĻŽāĻžāϰāϰāĻž āĻāĻŋ āĻŦā§āĻāĻŋāĻ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻĒā§āĻŽā§āύā§āĻ āĻāϰāĻŦā§ āύāĻžāĻāĻŋ āĻšā§āĻā§āϞ⧠āĻāĻŋāϝāĻŧā§?
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āϏāϰāϞāϤāĻžāϰ āĻāύā§āϝ āϧāϰā§āύ āĻŦā§āĻāĻŋāĻ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧāĻ āϏāĻŽā§āĻĒā§āϰā§āĻŖ āĻĒā§āĻŽā§āύā§āĻ āĻāϰāĻž āĻšāĻŦā§āĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āĻāĻžāϏā§āĻāĻŽāĻžāϰāϰāĻž āĻāĻŋ āĻļā§āϧ⧠āĻšā§āĻā§āϞā§āϰ āĻāϝāĻŧā§āĻŦāϏāĻžāĻāĻ āĻĨā§āĻā§ āĻŦā§āĻ āĻāϰāĻŦā§? āĻĢā§āύ āĻāϞ āĻŦāĻž āĻ
āύā§āϝ āĻŽāĻžāϧā§āϝāĻŽ āϞāĻžāĻāĻŦā§ āĻāĻŋ?
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āϧāϰā§āύ āĻŦā§āĻāĻŋāĻ āĻļā§āϧ⧠āĻāϝāĻŧā§āĻŦāϏāĻžāĻāĻ āĻāĻŦāĻ āĻ
ā§āϝāĻžāĻĒ āĻĨā§āĻā§ āĻāϰāĻž āϝāĻžāĻŦā§āĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āĻāĻžāϏā§āĻāĻŽāĻžāϰāϰāĻž āĻāĻŋ āĻŦā§āĻāĻŋāĻ āĻŦāĻžāϤāĻŋāϞ (cancel) āĻāϰāϤ⧠āĻĒāĻžāϰāĻŦā§?
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āĻšā§āϝāĻžāĻāĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āĻāϰ āĻāĻŋ āĻāĻŋāĻā§ āĻŦāĻŋāĻŦā§āĻāύāĻž āĻāϰāϤ⧠āĻšāĻŦā§?
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āĻšā§āϝāĻžāĻ, āĻāĻŽāϰāĻž ā§§ā§Ļ% overbooking āĻ
āύā§āĻŽāϤāĻŋ āĻĻā§āĻāĨ¤ Overbooking āĻŽāĻžāύ⧠āĻšāϞ⧠āĻšā§āĻā§āϞ āϤāĻžāϰ āĻāϏāϞ āϰā§āĻŽ āϏāĻāĻā§āϝāĻžāϰ āĻā§āϝāĻŧā§ āĻŦā§āĻļāĻŋ āĻŦā§āĻāĻŋāĻ āύāĻŋāϤ⧠āĻĒāĻžāϰā§, āĻāĻžāϰāĻŖ āĻāĻŋāĻā§ āĻāĻžāϏā§āĻāĻŽāĻžāϰ āϏāĻžāϧāĻžāϰāĻŖāϤ cancel āĻāϰā§āĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āĻāĻŽāĻŋ āϧāϰ⧠āύāĻŋāĻā§āĻāĻŋ room search āϏā§āĻā§āĻĒā§āϰ āĻŦāĻžāĻāϰ⧠āĻĨāĻžāĻāĻŦā§āĨ¤ āĻāĻŽāϰāĻž āĻĢā§āĻāĻžāϏ āĻāϰāĻŦā§:
- āĻšā§āĻā§āϞ āĻĒā§āĻ āĻĻā§āĻāĻžāύā§
- āϰā§āĻŽ āĻĄāĻŋāĻā§āĻāϞ āĻĒā§āĻ āĻĻā§āĻāĻžāύā§
- āϰā§āĻŽ āϰāĻŋāĻāĻžāϰā§āĻ āĻāϰāĻž
- āĻ ā§āϝāĻžāĻĄāĻŽāĻŋāύ āĻĒā§āϝāĻžāύā§āϞ (add/update/remove āĻšā§āĻā§āϞ āĻ āϰā§āĻŽ)
- overbooking āϏāĻžāĻĒā§āϰā§āĻ āĻāϰāĻž
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āĻ āĻŋāĻ āĻāĻā§āĨ¤
āĻāύā§āĻāĻžāϰāĻāĻŋāĻāϝāĻŧāĻžāϰ: āĻāϰā§āĻāĻāĻŋ āĻŦāĻŋāώāϝāĻŧ, āĻšā§āĻā§āϞā§āϰ āĻĻāĻžāĻŽ dynamicāĻāĻžāĻŦā§ āĻĒāϰāĻŋāĻŦāϰā§āϤāĻŋāϤ āĻšāϝāĻŧāĨ¤ āĻšā§āĻā§āϞ āĻāϤāĻāĻž full āϤāĻžāϰ āĻāĻĒāϰ āĻāĻŋāϤā§āϤāĻŋ āĻāϰ⧠āϰā§āĻŽā§āϰ āĻĻāĻžāĻŽ āĻĒā§āϰāϤāĻŋāĻĻāĻŋāύ āĻāϞāĻžāĻĻāĻž āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤
āĻā§āϝāĻžāύā§āĻĄāĻŋāĻĄā§āĻ: āĻāĻŽāĻŋ āĻāĻāĻž āĻŽāĻžāĻĨāĻžāϝāĻŧ āϰāĻžāĻāĻŦā§āĨ¤
āύāύ-āĻĢāĻžāĻāĻļāύāĻžāϞ āϰāĻŋāĻā§āϝāĻŧāĻžāϰāĻŽā§āύā§āĻāϏ
- High concurrency support āĻāϰāϤ⧠āĻšāĻŦā§ (peak season āĻŦāĻž event āϏāĻŽāϝāĻŧ āĻ āύā§āĻ āĻŦā§āĻāĻŋāĻ)
- Moderate latency acceptable (āĻāϝāĻŧā§āĻ āϏā§āĻā§āύā§āĻĄ delay āĻšāϞā§āĻ āĻāϞāĻŦā§)
āĻŦā§āϝāĻžāĻ-āĻ āĻĢ-āĻĻā§āϝ-āĻāύāĻā§āϞāĻĒ āĻāϏā§āĻāĻŋāĻŽā§āĻļāύ
- āĻŽā§āĻ āĻšā§āĻā§āϞ: ā§Ģ,ā§Ļā§Ļā§Ļ
- āĻŽā§āĻ āϰā§āĻŽ: ā§§ āĻŽāĻŋāϞāĻŋāϝāĻŧāύ
āϧāϰāĻŋ:
- ā§ā§Ļ% āϰā§āĻŽ occupied
- average stay = ā§Š āĻĻāĻŋāύ
āĻĻā§āύāĻŋāĻ āϰāĻŋāĻāĻžāϰā§āĻā§āĻļāύ:
(1,000,000 Ã 0.7) / 3 â 233,333 â ~240,000
āϰāĻŋāĻāĻžāϰā§āĻā§āĻļāύ āĻĒā§āϰāϤāĻŋ āϏā§āĻā§āύā§āĻĄ (TPS):
240,000 / 100,000 seconds â ~3 TPS
đ āĻ āϰā§āĻĨāĻžā§ average reservation load āĻā§āĻŦ āĻŦā§āĻļāĻŋ āύāĻžāĨ¤
āĻĒā§āϰ⧠āϏāĻŋāϏā§āĻā§āĻŽā§āϰ QPS āĻŦāĻŋāĻļā§āϞā§āώāĻŖ
āĻāĻāĻāĻŋ āϏāĻžāϧāĻžāϰāĻŖ āĻāĻāĻāĻžāϰ āĻĢā§āϞā§:
- āĻšā§āĻā§āϞ/āϰā§āĻŽ āĻĄāĻŋāĻā§āĻāϞ āĻĒā§āĻ āĻĻā§āĻāĻž (query)
- āĻŦā§āĻāĻŋāĻ āĻāύāĻĢāĻžāϰā§āĻŽā§āĻļāύ āĻĒā§āĻ āĻĻā§āĻāĻž (query)
- āϰā§āĻŽ āĻŦā§āĻ āĻāϰāĻž (transaction)
āϧāϰāĻŋ:
- ā§§ā§Ļ% āĻāĻāĻāĻžāϰ āĻĒāϰā§āϰ āϏā§āĻā§āĻĒā§ āϝāĻžāϝāĻŧ
- ⧝ā§Ļ% drop off āĻāϰā§
- āĻā§āύ⧠prefetching āύā§āĻ
QPS āĻĢāĻžāύā§āϞ (Figure 1)
- Reserve rooms (final): 3 QPS
- Booking page: 30 QPS
- Detail page: 300 QPS
āϏāĻžāϰāϏāĻāĻā§āώā§āĻĒ
āĻāĻāĻāĻžāϰ āϏāĻāĻā§āϝāĻž āϧāĻžāĻĒā§ āϧāĻžāĻĒā§ āĻāĻŽā§ āϝāĻžāϝāĻŧ, āϤāĻžāĻ funnel pattern āϤā§āϰāĻŋ āĻšāϝāĻŧâāĻļā§āϰā§āϤ⧠āĻŦā§āĻļāĻŋ traffic, āĻļā§āώ⧠āĻāĻŽ transactionāĨ¤