Fable
Between the two mills, the river only needs to change course once
At the foot of the mountain were two mills: one ground flour for the whole town, the other usually sat empty for testing new millstones. The miller initially ran things through the old and new water channels, familiar routes, and when the days were small, mistakes were rare. The miller realized that the risk of releasing a new millstone was not "whether it could be installed," but whether it could still reliably supply the whole town after the real grain flow switched over.
Later, after the stone disc was fixed, everyone wanted to immediately tear down the old workshop and replace it with the new one. Directly tearing down the old workshop would bind validation and downtime together; once the new stone disc had problems, there would be no ready rollback path for the failure.
The first repair was rushed: first repair while using beside the old workshop, and when it broke, let the whole town wait. Directly modifying the stone disc beside the old workshop tied verification and downtime together, and when a new failure came there was no ready rollback path. But new problems followed, everyone stared only at the most visible place, and small deviations in the distance accumulated deeper and deeper.
The miller fully installed the new millstone at another mill, used a small number of grain merchants for acceptance testing, and then switched the water flow in one go through the gate; the old mill remained usable, and could be switched back immediately if anything went wrong.
The miller let a few grain merchants try the new mill first. After weighing, tasting the flour, and checking the water flow all passed, he slowly diverted the water over. This step was troublesome and initially slowed the schedule; but after a few rounds, rework decreased, and the masters no longer changed rules on a whim. Switching to the new version finally became a verifiable, rollback-capable action, and failures no longer had to shut down the whole town.
New routes must prove compatibility before carrying load, while old routes are retained until stability is confirmed; the core of blue-green deployment is combining release validation with traffic switching and rapid rollback.
One day the new millstone jammed, and he only had to turn the gate back to the old channel; the town's flour supply did not stop. From then on, when switching to new work, it is best to let the old path still catch people, and only let the new path bear load once it is confirmed stable.