首页 > 数据库 >【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?

【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?

时间:2023-01-23 15:08:54浏览次数:78  
标签:缓存 Redis redis echo 6380 Azure php connect

问题描述

使用6379端口连接Azure Redis服务,连接失败。因为默认情况下Azure Redis的设置没有打开6379的端口。需要使用SSL(6380端口)进行连接,但是遇见了无法连接的问题。

使用非SSL(6379端口)的连接代码

<?php
echo "Azure Redis Connect Test";
echo "<br/>";

//连接本地的 Redis 服务
$redis = new Redis();
$redis->connect('xxxxxxxx.redis.cache.chinacloudapi.cn', 6379);
$redis->auth("秘钥");

echo "Connection to server sucessfully";
echo "<br/>";

//设置 redis 字符串数据
$redis->set("test-name", "Redis test value");
// 获取存储的数据并输出
echo "Stored string in redis:: " . $redis->get("test-name");
?>

如果直接修改端口号 6379 为 6380, 报错无法访问。那么使用6380的正确方式为?

 

问题解答

其实,代码的改动方式非常小。在 connection 方法中添加 TLS及6380端口。

改动前:$redis->connect('xxxxxxxx.redis.cache.chinacloudapi.cn', 6379);

改动后:$redis->connect('tls://xxxxxxxx.redis.cache.chinacloudapi.cn', 6380);

但是一定要注意php redis 扩展,因为扩展版本过低,有可能会引发解析问题。如类似如下的错误消息:

Azure Redis Connect Test<br/>PHP Warning:  
Redis::connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /data/myweb/redis_tes
t2.php on line 6
PHP Fatal error: Uncaught RedisException: php_network_getaddresses: getaddrinfo failed: Name or service not known in /data/myweb/redis_test2.php:6
Stack trace:
#0 /data/myweb/redis_test2.php(6): Redis->connect('tls://xxxx-xxxx...', 6380)
#1 {main}
thrown in /data/myweb/redis_test2.php on line 6

php redis 扩展的版本:

【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口),  PHP如何访问缓存呢?_6380);

 

 

使用TLS 6380 端口连接Redis的示例代码为:

<?php
echo "Azure Redis Connect Test";
echo "<br/>";

//连接本地的 Redis 服务
$redis = new Redis();
//$redis->connect('xxxxxxxx.redis.cache.chinacloudapi.cn', 6379);
$redis->connect('tls://xxxxxxxx.redis.cache.chinacloudapi.cn', 6380);
$redis->auth("秘钥");

echo "Connection to server sucessfully";
echo "<br/>";

//设置 redis 字符串数据
$redis->set("test-name", "Redis test value");
// 获取存储的数据并输出
echo "Stored string in redis:: " . $redis->get("test-name");
?>

 

 

参考资料

php redis example : ​​https://github.com/phpredis/phpredis#example-2​

php redis extension : ​​https://pecl.php.net/package/redis​

 

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!



标签:缓存,Redis,redis,echo,6380,Azure,php,connect
From: https://blog.51cto.com/u_13773780/6021881

相关文章

  • 【Azure 存储服务】.NET7.0 示例代码之上传大文件到Azure Storage Blob (一)
    问题描述在使用Azure的存储服务时候,如果上传的文件大于了100MB,1GB的情况下,如何上传呢? 问题解答使用Azure存储服务时,如果要上传文件到AzureBlob,有很多种工具可以实现。如:A......
  • redis项目黑马点评之博客功能的开发
    方法均在BlogServiceImpl中实现,因此需要在IBlogService创建接口queryHotBlog此类会在首页展示热门的博客@ServicepublicclassBlogServiceImplextendsServiceImpl......
  • readyset 轻量级pg 以及mysql 缓存引擎
    readyset是基于rust开发的pg以及mysql轻量级缓存服务参考玩法如下图  说明readyset一些设计还是很有意思的,很值得学习,同时也可以在项目中尝试使用参考资料ht......
  • Docker部署Redis
    Docker部署Redis更新yum源[#]yumupdate安装Docker[#]yum-yinstalldocker[#]systemctlenabledocker[#]systemctlstartdocker安装Redis创建文件夹[#]mkd......
  • 【Redis技术专区】「实战案例」谈谈使用Redis缓存时高效的批量删除的几种方案
    前因后果之前我们的服务,在上线的时候发现有一些大Key的使用不是很规范,特别是没有设置过期时间,因此导致redis中内存的数据越来越多,目前Redis节点的内存已经快撑不住了。所以......
  • 多级缓存
    1.学习目标:多级缓存经常用于亿级流量的并发访问数据的优化当中:多级缓存主要分成以下几块的缓存:(1)Nginx本地缓存:用来抵抗的是热数据的高并发的操作,经常会被访问的......
  • Redis设置开机自启动
    0.前提条件redis_version:7.0.5LinuxAlibabaCloudLinuxrelease3(soaringFalcon)查询版本有如下两种方式:1.通过redis-cli 客户端查询版本信息  //-pip地......
  • 用AutoHotkey解决B站客户端缓存视频m4s合并成mp4提示解析失败
    一直用you-get下载B站视频,这两天发现视频的质量很低,于是又折腾了下在线播放有1080P,而you-get-i{url}返回的最高清晰度就是480P听朋友安利用哔哩下载姬(DownKyi),试了也......
  • Redis分布式锁的五大演进攻略
     本文我们来探讨下如何引入分布式锁解决本地锁的问题。本篇所有代码和业务基于我的开源项目PassJava。 本篇主要内容如下:  一、本地锁的问题 ......
  • Redis分布式锁的五大演进攻略
     本文我们来探讨下如何引入分布式锁解决本地锁的问题。本篇所有代码和业务基于我的开源项目PassJava。 本篇主要内容如下:  一、本地锁的问题 ......