全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

PHP实现的redis主从数据库状态检测功能示例

本文实例讲述了PHP实现的redis主从数据库状态检测功能。分享给大家供大家参考,具体如下:

实例:

<?php
/**
 * 检测多个主从redis数据库是否挂掉
 * 建立从数据库$redis_db的二维数组,内容包含每个从服务器的配置数据
 */
header("Content-Type: text/html; charset=utf-8");
set_time_limit(0);
$redis_db = array(
  'db1'=>array(
    'hostname' => '127.0.0.1',
    'port' => 6379,
    'password' => '',
  ),
  'db2'=>array(
    'hostname' => '192.168.2.179',
    'port' => 6379,
    'password' => '111111',
  ),
);
$content = '';
foreach ($redis_db as $db_key) {
  $host = $db_key['hostname'];
  $port = $db_key['port'];
  $redis = new Redis();
  //连接本地的 Redis 服务
  $status= $redis->connect($host, $port);
  if(!$status) {
    $content .= "redis从数据库( $host )无法连接 ! <br/>";
    continue;
  }
  if(!empty($db_key['password'])) {
    $pass = $redis->auth($db_key['password']);
    if(!$pass) {
      $content .= "redis从数据库( $host )密码错误 ! <br/>";
      continue;
    }
  }
  try {
    $config = $redis->info();
    if('up' == $config['master_link_status']) {
    } else {
      $content .= "redis从数据库( $host )挂掉了! <br/>";
    }
  }
  catch(RedisException $e)
  {
    $content .= "redis从数据库( $host )报错:" . $e->getMessage()."<br/>";
  }
}
//若报错信息不为空,发送报错邮件
if(!empty($content)) {
  $title = '主从redis数据库状态检测报错 ';
  $content = date("Y-m-d H:i:s",time()) . "<br/>" . $content;
  $sendurl = "http://localhost/api.com/test.php?title=".$title."&content=".$content;
  $result = file_get_contents($sendurl);
  if('ok' != $result) {
    $message = date("Y-m-d H:i:s",time()).' redisSlave.php 主从redis数据库状态检测报错 邮件发送失败!'."\n";
    $content = str_replace("<br/>", "\n", $content);
    $message .= $content;
    error_log($message,3,"error.log");
  }
}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+redis数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# PHP  # redis  # 主从数据库  # 状态检测  # php操作redis数据库常见方法实例总结  # PHP操作Redis数据库常用方法示例  # PHP数据库操作三:redis用法分析  # PHP的Laravel框架结合MySQL与Redis数据库的使用部署  # php实现redis数据库指定库号迁移的方法  # 30个php操作redis常用方法代码例子  # redis 队列操作的例子(php)  # php结合redis实现高并发下的抢购、秒杀功能的实例  # php Session存储到Redis的方法  # PHP操作Redis常用技巧总结  # php+redis实现商城秒杀功能  # php操作redis缓存方法分享  # php操作Redis数据库基本示例【安装、连接、设置、查询、断开】  # 报错  # 程序设计  # 操作技巧  # 相关内容  # 多个  # 感兴趣  # 给大家  # 掉了  # 更多关于  # 所述  # 面向对象  # 为空  # 邮件发送  # 编程技巧  # 讲述了  # gt  # hostname  # utf  # charset  # array 


相关文章: 建站为何优先选择香港服务器?  实例解析Array和String方法  建站之星Pro快速搭建教程:模板选择与功能配置指南  如何打造高效商业网站?建站目的决定转化率  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  香港服务器网站推广:SEO优化与外贸独立站搭建策略  建站之星后台密码遗忘如何找回?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  相册网站制作软件,图片上的网址怎么复制?  如何快速上传自定义模板至建站之星?  *服务器网站为何频现安全漏洞?  如何快速辨别茅台真假?关键步骤解析  建站之星云端配置指南:模板选择与SEO优化一键生成  打鱼网站制作软件,波克捕鱼官方号怎么注册?  如何快速生成专业多端适配建站电话?  建站之星在线客服如何快速接入解答?  公司网站的制作公司,企业网站制作基本流程有哪些?  建站之星安装需要哪些步骤及注意事项?  建站之星如何保障用户数据免受黑客入侵?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  c++怎么用jemalloc c++替换默认内存分配器【性能】  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  c# 在高并发场景下,委托和接口调用的性能对比  如何高效完成独享虚拟主机建站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  香港服务器租用费用高吗?如何避免常见误区?  学校为何禁止电信移动建设网站?  宝塔建站后网页无法访问如何解决?  Android使用GridView实现日历的简单功能  建站之星2.7模板:企业网站建设与h5定制设计专题  如何通过西部数码建站助手快速创建专业网站?  建站之星CMS五站合一模板配置与SEO优化指南  宝塔建站助手安装配置与建站模板使用全流程解析  C#如何在一个XML文件中查找并替换文本内容  建站主机选购指南:核心配置与性价比推荐解析  建设网站制作价格,怎样建立自己的公司网站?  音响网站制作视频教程,隆霸音响官方网站?  如何用PHP快速搭建CMS系统?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  内部网站制作流程,如何建立公司内部网站?  如何选择可靠的免备案建站服务器?  如何在阿里云虚拟服务器快速搭建网站?  建站之星在线版空间:自助建站+智能模板一键生成方案  网站制作网站,深圳做网站哪家比较好?  建站与域名管理如何高效结合?  如何在云主机上快速搭建多站点网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。