簡體   English   中英

在Azure和Symfony2上使用Redis

[英]Using Redis on Azure with Symfony2

我正在嘗試將Symfony2與Azure上的Redis服務器連接,但無法弄清楚將主機名,端口和密鑰以及其他詳細信息放在哪里(如果需要,我不知道)。

composer.json

"predis/predis": "1.*",
"snc/redis-bundle": "1.1.x-dev"

根據本教程配置的config.yml

snc_redis:
  # configure predis as client
  clients:
      default:
          type: predis
          alias: default
          dsn: projectrdev.redis.cache.windows.net
      doctrine:
          type: predis
          alias: doctrine
          dsn: projectrdev.redis.cache.windows.net
  # configure doctrine caching
  doctrine:
      metadata_cache:
          client: doctrine
          entity_manager: default
          document_manager: default
      result_cache:
          client: doctrine
          entity_manager: [default]
      query_cache:
          client: doctrine
          entity_manager: default

根據Predis 文檔,可以配置客戶端,但現在確定在Symfony環境中如何工作。

首先,我們應該為PHP集成啟用非SSL端點。 在此處輸入圖片說明

並且您需要以以下格式組合redis dsn連接字符串: redis://[password@]host[:port][/db]

例如,在symfony2應用程序的config.yml文件中,您可以進行如下配置: snc_redis: clients: default: type: predis alias: default dsn: redis://{password}@{your_redis_name}.redis.cache.windows.net

並在控制器功能中進行測試: use Snc\\RedisBundle\\Doctrine\\Cache\\RedisCache; use Predis\\Client; ... ... $redis = $this->container->get('snc_redis.default'); $val = $redis->incr('foo:bar'); echo $val; use Snc\\RedisBundle\\Doctrine\\Cache\\RedisCache; use Predis\\Client; ... ... $redis = $this->container->get('snc_redis.default'); $val = $redis->incr('foo:bar'); echo $val;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM