diff --git a/Cargo.toml b/Cargo.toml
index 165004447..5388de4ed 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -87,12 +87,12 @@ actix-web-codegen = "0.4.0"
 actix-http = "2.2.0"
 awc = { version = "2.0.3", default-features = false }
 
+ahash = "0.6"
 bytes = "1"
 derive_more = "0.99.5"
 encoding_rs = "0.8"
 futures-core = { version = "0.3.7", default-features = false }
 futures-util = { version = "0.3.7", default-features = false }
-fxhash = "0.2.1"
 log = "0.4"
 mime = "0.3"
 socket2 = "0.3.16"
diff --git a/src/middleware/errhandlers.rs b/src/middleware/errhandlers.rs
index 9e78bb7d0..d25b9c2ef 100644
--- a/src/middleware/errhandlers.rs
+++ b/src/middleware/errhandlers.rs
@@ -4,7 +4,7 @@ use std::task::{Context, Poll};
 
 use actix_service::{Service, Transform};
 use futures_util::future::{ok, FutureExt, LocalBoxFuture, Ready};
-use fxhash::FxHashMap;
+use ahash::AHashMap;
 
 use crate::dev::{ServiceRequest, ServiceResponse};
 use crate::error::{Error, Result};
@@ -52,13 +52,13 @@ type ErrorHandler<B> = dyn Fn(ServiceResponse<B>) -> Result<ErrorHandlerResponse
 /// # }
 /// ```
 pub struct ErrorHandlers<B> {
-    handlers: Rc<FxHashMap<StatusCode, Box<ErrorHandler<B>>>>,
+    handlers: Rc<AHashMap<StatusCode, Box<ErrorHandler<B>>>>,
 }
 
 impl<B> Default for ErrorHandlers<B> {
     fn default() -> Self {
         ErrorHandlers {
-            handlers: Rc::new(FxHashMap::default()),
+            handlers: Rc::new(AHashMap::default()),
         }
     }
 }
@@ -104,7 +104,7 @@ where
 #[doc(hidden)]
 pub struct ErrorHandlersMiddleware<S, B> {
     service: S,
-    handlers: Rc<FxHashMap<StatusCode, Box<ErrorHandler<B>>>>,
+    handlers: Rc<AHashMap<StatusCode, Box<ErrorHandler<B>>>>,
 }
 
 impl<S, B> Service<ServiceRequest> for ErrorHandlersMiddleware<S, B>
diff --git a/src/rmap.rs b/src/rmap.rs
index 6827a11b2..3c8805d57 100644
--- a/src/rmap.rs
+++ b/src/rmap.rs
@@ -2,7 +2,7 @@ use std::cell::RefCell;
 use std::rc::{Rc, Weak};
 
 use actix_router::ResourceDef;
-use fxhash::FxHashMap;
+use ahash::AHashMap;
 use url::Url;
 
 use crate::error::UrlGenerationError;
@@ -12,7 +12,7 @@ use crate::request::HttpRequest;
 pub struct ResourceMap {
     root: ResourceDef,
     parent: RefCell<Weak<ResourceMap>>,
-    named: FxHashMap<String, ResourceDef>,
+    named: AHashMap<String, ResourceDef>,
     patterns: Vec<(ResourceDef, Option<Rc<ResourceMap>>)>,
 }
 
@@ -21,7 +21,7 @@ impl ResourceMap {
         ResourceMap {
             root,
             parent: RefCell::new(Weak::new()),
-            named: FxHashMap::default(),
+            named: AHashMap::default(),
             patterns: Vec::new(),
         }
     }