diff --git a/pkg/clients/middleware/caching_middleware.go b/pkg/clients/middleware/caching_middleware.go
index 08af3a47a7cd3f23b8ae07e4050f9e18f1be1ee3..1733c0de4a8dde8f011d46b2b77005f8924e60bb 100644
--- a/pkg/clients/middleware/caching_middleware.go
+++ b/pkg/clients/middleware/caching_middleware.go
@@ -12,7 +12,7 @@ func makeKey(ss ...string) string {
 	return strings.Join(ss, "-")
 }
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Clients) service.Clients {
 		return &cachingMiddleware{
 			cache: cache,
@@ -22,7 +22,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Clients
 }
 
diff --git a/pkg/collaborators/middleware/caching_middleware.go b/pkg/collaborators/middleware/caching_middleware.go
index 7533ae551ed47a421d3fe8ed643ce679e07fddc2..ea595919431cd653e74ca0ffe24b62ff3b2d0a10 100644
--- a/pkg/collaborators/middleware/caching_middleware.go
+++ b/pkg/collaborators/middleware/caching_middleware.go
@@ -12,7 +12,7 @@ func makeKey(ss ...string) string {
 	return strings.Join(ss, "-")
 }
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Collaborators) service.Collaborators {
 		return &cachingMiddleware{
 			cache: cache,
@@ -22,7 +22,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Collaborators
 }
 
diff --git a/pkg/collections/middleware/caching_middleware.go b/pkg/collections/middleware/caching_middleware.go
index de34d42af02f7259c66aea5799210c50c0e1961e..469c39df98e1edb80495257999b6fecf81011247 100644
--- a/pkg/collections/middleware/caching_middleware.go
+++ b/pkg/collections/middleware/caching_middleware.go
@@ -19,7 +19,7 @@ func makeKey(spaceId, envId, collectionId string, disableSchemaIncludes bool) st
 	return s
 }
 
-func CachingMiddleware(cache cache.Cache, envs envService.Environments) Middleware {
+func CachingMiddleware(cache *cache.Cache, envs envService.Environments) Middleware {
 	return func(next service.Collections) service.Collections {
 		return &cachingMiddleware{
 			cache: cache,
@@ -30,7 +30,7 @@ func CachingMiddleware(cache cache.Cache, envs envService.Environments) Middlewa
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Collections
 	envs  envService.Environments
 }
diff --git a/pkg/environments/middleware/caching_middleware.go b/pkg/environments/middleware/caching_middleware.go
index 0801730a0e93947c847352a9710a02f85ae94ee0..dfe5b927117bfecdb56d11ab0e14582e43ef75b7 100644
--- a/pkg/environments/middleware/caching_middleware.go
+++ b/pkg/environments/middleware/caching_middleware.go
@@ -12,7 +12,7 @@ func makeKey(ss ...string) string {
 	return strings.Join(ss, "-")
 }
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Environments) service.Environments {
 		return &cachingMiddleware{
 			cache: cache,
@@ -22,7 +22,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Environments
 }
 
diff --git a/pkg/invitations/middleware/caching_middleware.go b/pkg/invitations/middleware/caching_middleware.go
index 5f2a1086a15c09d55b5461e029036b091d68dcfe..651514a530039e7859fe146bd921c9d82e9ebd01 100644
--- a/pkg/invitations/middleware/caching_middleware.go
+++ b/pkg/invitations/middleware/caching_middleware.go
@@ -8,7 +8,7 @@ import (
 	services "git.perx.ru/perxis/perxis-go/pkg/options"
 )
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Invitations) service.Invitations {
 		return &cachingMiddleware{
 			cache: cache,
@@ -18,7 +18,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Invitations
 }
 
diff --git a/pkg/items/middleware/caching_middleware.go b/pkg/items/middleware/caching_middleware.go
index 6b11851381fb9dc13b630477052f05d4148bc765..2d76f2150eeacc1cd70e9697c3db63853ef47908 100644
--- a/pkg/items/middleware/caching_middleware.go
+++ b/pkg/items/middleware/caching_middleware.go
@@ -13,7 +13,7 @@ func makeKey(ss ...string) string {
 	return strings.Join(ss, "-")
 }
 
-func CachingMiddleware(cache, cachePublished cache.Cache, envs envService.Environments) Middleware {
+func CachingMiddleware(cache, cachePublished *cache.Cache, envs envService.Environments) Middleware {
 	return func(next service.Items) service.Items {
 		return &cachingMiddleware{
 			cache:          cache,
@@ -25,8 +25,8 @@ func CachingMiddleware(cache, cachePublished cache.Cache, envs envService.Enviro
 }
 
 type cachingMiddleware struct {
-	cache          cache.Cache
-	cachePublished cache.Cache
+	cache          *cache.Cache
+	cachePublished *cache.Cache
 	envs           envService.Environments
 	service.Items
 }
diff --git a/pkg/locales/middleware/caching_middleware.go b/pkg/locales/middleware/caching_middleware.go
index 13928a5166f2187e85a5e7da63861509e3f69d3a..9d1624950aab3d798070844ed2e9d89142430c2c 100644
--- a/pkg/locales/middleware/caching_middleware.go
+++ b/pkg/locales/middleware/caching_middleware.go
@@ -7,7 +7,7 @@ import (
 	service "git.perx.ru/perxis/perxis-go/pkg/locales"
 )
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Locales) service.Locales {
 		return &cachingMiddleware{
 			cache: cache,
@@ -17,7 +17,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Locales
 }
 
diff --git a/pkg/members/middleware/caching_middleware.go b/pkg/members/middleware/caching_middleware.go
index 0af3f76f9e5aa1eeeee01c36f2e7509e35e951c3..cffbc7c46a35da518eee412044cc18c1e2aa9970 100644
--- a/pkg/members/middleware/caching_middleware.go
+++ b/pkg/members/middleware/caching_middleware.go
@@ -12,7 +12,7 @@ func makeKey(ss ...string) string {
 	return strings.Join(ss, "-")
 }
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Members) service.Members {
 		return &cachingMiddleware{
 			cache: cache,
@@ -22,7 +22,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Members
 }
 
diff --git a/pkg/organizations/middleware/caching_middleware.go b/pkg/organizations/middleware/caching_middleware.go
index 18649df9511f12a658cbb3966d507a76108939d8..8350fb9275f51461165062d1f5d759bd5a17241a 100644
--- a/pkg/organizations/middleware/caching_middleware.go
+++ b/pkg/organizations/middleware/caching_middleware.go
@@ -8,7 +8,7 @@ import (
 	service "git.perx.ru/perxis/perxis-go/pkg/organizations"
 )
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Organizations) service.Organizations {
 		return &cachingMiddleware{
 			cache: cache,
@@ -18,7 +18,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Organizations
 }
 
diff --git a/pkg/roles/middleware/caching_middleware.go b/pkg/roles/middleware/caching_middleware.go
index 3f46087ec59e3ee71cd441b87e16a995d82eb7ea..86725074b2d211f916c8ec126ad866ca89a0cc56 100644
--- a/pkg/roles/middleware/caching_middleware.go
+++ b/pkg/roles/middleware/caching_middleware.go
@@ -12,7 +12,7 @@ func makeKey(ss ...string) string {
 	return strings.Join(ss, "-")
 }
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Roles) service.Roles {
 		return &cachingMiddleware{
 			cache: cache,
@@ -22,7 +22,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Roles
 }
 
diff --git a/pkg/spaces/middleware/caching_middleware.go b/pkg/spaces/middleware/caching_middleware.go
index f99e21a1f4a254ef6fb0890d09776b9b4738fd38..99c50a90e56fc8d25a34eca38962689f48f5abf3 100644
--- a/pkg/spaces/middleware/caching_middleware.go
+++ b/pkg/spaces/middleware/caching_middleware.go
@@ -9,7 +9,7 @@ import (
 
 func orgKey(orgID string) string { return "org-" + orgID }
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Spaces) service.Spaces {
 		m := &cachingMiddleware{
 			cache: cache,
@@ -21,7 +21,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Spaces
 }
 
diff --git a/pkg/users/middleware/caching_middleware.go b/pkg/users/middleware/caching_middleware.go
index 8397bfd3a5c2a02c9ff52c42f9d1e23d431aed8e..c5674b82f0a1176304dc2efc0b60b7458839e347 100644
--- a/pkg/users/middleware/caching_middleware.go
+++ b/pkg/users/middleware/caching_middleware.go
@@ -8,7 +8,7 @@ import (
 	service "git.perx.ru/perxis/perxis-go/pkg/users"
 )
 
-func CachingMiddleware(cache cache.Cache) Middleware {
+func CachingMiddleware(cache *cache.Cache) Middleware {
 	return func(next service.Users) service.Users {
 		return &cachingMiddleware{
 			cache: cache,
@@ -18,7 +18,7 @@ func CachingMiddleware(cache cache.Cache) Middleware {
 }
 
 type cachingMiddleware struct {
-	cache cache.Cache
+	cache *cache.Cache
 	next  service.Users
 }