diff --git a/src/http/modules/perl/nginx.xs b/src/http/modules/perl/nginx.xs
index a32c85e..734f7ba 100644
--- a/src/http/modules/perl/nginx.xs
+++ b/src/http/modules/perl/nginx.xs
@@ -846,6 +846,27 @@
 
 
 void
+sleep(r, sleep, next)
+    CODE:
+
+    dXSTARG;
+    ngx_http_request_t   *r;
+    ngx_http_perl_ctx_t  *ctx;
+
+    ngx_http_perl_set_request(r);
+
+    ctx = ngx_http_get_module_ctx(r, ngx_http_perl_module);
+
+    ctx->sleep = SvIV(ST(1));
+    ctx->next = SvRV(ST(2));
+
+    ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
+                   "perl sleep: %d", ctx->sleep);
+
+    XSRETURN_EMPTY;
+
+
+void
 log_error(r, err, msg)
     CODE:
 
diff --git a/src/http/modules/perl/ngx_http_perl_module.c b/src/http/modules/perl/ngx_http_perl_module.c
index 1910a1b..94ff54f 100644
--- a/src/http/modules/perl/ngx_http_perl_module.c
+++ b/src/http/modules/perl/ngx_http_perl_module.c
@@ -41,6 +41,7 @@
     ngx_http_ssi_ctx_t *ssi_ctx, ngx_str_t **params);
 #endif
 
+static void ngx_http_perl_sleep_handler(ngx_http_request_t *r);
 static char *ngx_http_perl_init_interpreter(ngx_conf_t *cf,
     ngx_http_perl_main_conf_t *pmcf);
 static PerlInterpreter *
@@ -245,6 +246,12 @@
     ctx->filename.data = NULL;
     ctx->redirect_uri.len = 0;
 
+    if (ctx->sleep) {
+        ngx_add_timer(r->connection->write, (ngx_msec_t) ctx->sleep);
+        r->write_event_handler = ngx_http_perl_sleep_handler;
+        ctx->sleep = 0;
+    }
+
     if (ctx->done || ctx->next) {
         return;
     }
@@ -263,6 +270,16 @@
 }
 
 
+static void
+ngx_http_perl_sleep_handler(ngx_http_request_t *r)
+{
+    ngx_log_debug0(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
+                   "perl sleep handler");
+
+    ngx_http_perl_handle_request(r);
+}
+
+
 static ngx_int_t
 ngx_http_perl_variable(ngx_http_request_t *r, ngx_http_variable_value_t *v,
     uintptr_t data)
diff --git a/src/http/modules/perl/ngx_http_perl_module.h b/src/http/modules/perl/ngx_http_perl_module.h
index af23f9e..5995422 100644
--- a/src/http/modules/perl/ngx_http_perl_module.h
+++ b/src/http/modules/perl/ngx_http_perl_module.h
@@ -23,7 +23,9 @@
     ngx_str_t                 filename;
     ngx_str_t                 redirect_uri;
     ngx_str_t                 redirect_args;
+
     SV                       *next;
+    int                       sleep;
 
     ngx_uint_t                done;   /* unsigned  done:1; */
 
