diff --git a/advanced/composing_routers.html b/advanced/composing_routers.html
index faa5ed4d..7723239d 100644
--- a/advanced/composing_routers.html
+++ b/advanced/composing_routers.html
@@ -1137,7 +1137,7 @@
diff --git a/advanced/configuring_routers.html b/advanced/configuring_routers.html
index 27d03bc6..71eddf38 100644
--- a/advanced/configuring_routers.html
+++ b/advanced/configuring_routers.html
@@ -843,7 +843,7 @@
diff --git a/advanced/dev_workflow.html b/advanced/dev_workflow.html
index 6fdd2bbf..18994037 100644
--- a/advanced/dev_workflow.html
+++ b/advanced/dev_workflow.html
@@ -902,7 +902,7 @@
diff --git a/advanced/different_routers.html b/advanced/different_routers.html
index 12db20c8..89a7dc13 100644
--- a/advanced/different_routers.html
+++ b/advanced/different_routers.html
@@ -850,7 +850,7 @@
diff --git a/advanced/route_validation.html b/advanced/route_validation.html
index fd3a2183..baccdf59 100644
--- a/advanced/route_validation.html
+++ b/advanced/route_validation.html
@@ -938,7 +938,7 @@
diff --git a/advanced/shared_routes.html b/advanced/shared_routes.html
index 2c3c3335..d08ca85e 100644
--- a/advanced/shared_routes.html
+++ b/advanced/shared_routes.html
@@ -858,7 +858,7 @@
diff --git a/basics/name_based_routing.html b/basics/name_based_routing.html
index 6ea0890a..aa5d6bde 100644
--- a/basics/name_based_routing.html
+++ b/basics/name_based_routing.html
@@ -861,7 +861,7 @@
diff --git a/basics/path_based_routing.html b/basics/path_based_routing.html
index 9cebffae..14f876e2 100644
--- a/basics/path_based_routing.html
+++ b/basics/path_based_routing.html
@@ -819,7 +819,7 @@
diff --git a/basics/route_conflicts.html b/basics/route_conflicts.html
index fce33a2d..2cf024b6 100644
--- a/basics/route_conflicts.html
+++ b/basics/route_conflicts.html
@@ -862,7 +862,7 @@
diff --git a/basics/route_data.html b/basics/route_data.html
index cfe523ff..69a25c75 100644
--- a/basics/route_data.html
+++ b/basics/route_data.html
@@ -860,7 +860,7 @@
diff --git a/basics/route_data_validation.html b/basics/route_data_validation.html
index 71952181..9f1fe5d4 100644
--- a/basics/route_data_validation.html
+++ b/basics/route_data_validation.html
@@ -912,7 +912,7 @@
diff --git a/basics/route_syntax.html b/basics/route_syntax.html
index 517dc82a..1236b798 100644
--- a/basics/route_syntax.html
+++ b/basics/route_syntax.html
@@ -849,7 +849,7 @@ E.g., /foo bar should be /foo%20bar.
To get better view on the real life routing performance, there is test of a mid-size rest(ish) http api with 50+ routes, having a lot of path parameters. The route definitions are pulled off from the OpenSensors swagger definitions.
Thanks to the snappy new segment-tree algorithm, reitit-ring is fastest here. Pedestal is also fast with it's prefix-tree implementation.


Another real-life test scenario is a CQRS-style route tree, where all the paths are static, e.g. /api/command/add-order. The 300 route definitions are pulled out from Lupapiste.
Both reitit-ring and Pedestal shine in this test, thanks to the fast lookup-routers. On average, they are two and on best case, three orders of magnitude faster than the other tested libs. Ataraxy failed this test on Method code too large! error.


NOTE: in real life, there are usually always also wild-card routes present. In this case, Pedestal would fallback from lookup-router to the prefix-tree router, which is order of magnitude slower (30x in this test). Reitit would handle this nicely thanks to it's :mixed-router: all static routes would still be served with :lookup-router, just the wildcard routes with :segment-tree. The performance would not notably degrade.
The reitit routing perf is measured to get an internal baseline to optimize against. We also want to ensure that new features don't regress the performance. Perf tests should be run in a stable CI environment. Help welcome!
@@ -873,7 +873,7 @@ diff --git a/ring/coercion.html b/ring/coercion.html index 7dd846c9..7edcd950 100644 --- a/ring/coercion.html +++ b/ring/coercion.html @@ -927,7 +927,7 @@ diff --git a/ring/compiling_middleware.html b/ring/compiling_middleware.html index 640f28f7..64ed1b84 100644 --- a/ring/compiling_middleware.html +++ b/ring/compiling_middleware.html @@ -854,7 +854,7 @@ diff --git a/ring/data_driven_middleware.html b/ring/data_driven_middleware.html index 2de55e5f..f83bff10 100644 --- a/ring/data_driven_middleware.html +++ b/ring/data_driven_middleware.html @@ -882,7 +882,7 @@ diff --git a/ring/default_handler.html b/ring/default_handler.html index aa9de82c..9fbc3e22 100644 --- a/ring/default_handler.html +++ b/ring/default_handler.html @@ -860,7 +860,7 @@ diff --git a/ring/default_middleware.html b/ring/default_middleware.html index b688c7c5..07c4e1ea 100644 --- a/ring/default_middleware.html +++ b/ring/default_middleware.html @@ -1033,7 +1033,7 @@ Server: Jetty(9.2.21.v20170120) diff --git a/ring/dynamic_extensions.html b/ring/dynamic_extensions.html index f2b762cb..45f66e8c 100644 --- a/ring/dynamic_extensions.html +++ b/ring/dynamic_extensions.html @@ -829,7 +829,7 @@ diff --git a/ring/middleware_registry.html b/ring/middleware_registry.html index 1950411b..9e7f459c 100644 --- a/ring/middleware_registry.html +++ b/ring/middleware_registry.html @@ -840,7 +840,7 @@ diff --git a/ring/reverse_routing.html b/ring/reverse_routing.html index 0913fc61..efccb29a 100644 --- a/ring/reverse_routing.html +++ b/ring/reverse_routing.html @@ -825,7 +825,7 @@ diff --git a/ring/ring.html b/ring/ring.html index e092fbd8..2e238b6f 100644 --- a/ring/ring.html +++ b/ring/ring.html @@ -961,7 +961,7 @@ diff --git a/ring/route_data_validation.html b/ring/route_data_validation.html index b531c8d5..ba042dc4 100644 --- a/ring/route_data_validation.html +++ b/ring/route_data_validation.html @@ -1037,7 +1037,7 @@ diff --git a/ring/slash_handler.html b/ring/slash_handler.html index 1700c7f6..39e2aa69 100644 --- a/ring/slash_handler.html +++ b/ring/slash_handler.html @@ -863,7 +863,7 @@ diff --git a/ring/static.html b/ring/static.html index 270e541d..8f8fc609 100644 --- a/ring/static.html +++ b/ring/static.html @@ -865,7 +865,7 @@ diff --git a/ring/swagger.html b/ring/swagger.html index f6c7617a..e498a8aa 100644 --- a/ring/swagger.html +++ b/ring/swagger.html @@ -1084,7 +1084,7 @@ see the next example diff --git a/ring/transforming_middleware_chain.html b/ring/transforming_middleware_chain.html index 3845b822..c374adca 100644 --- a/ring/transforming_middleware_chain.html +++ b/ring/transforming_middleware_chain.html @@ -846,7 +846,7 @@