>백엔드 개발 >PHP 튜토리얼 >PHP가 Redis 메시지 대기열을 기반으로 Weibo를 게시하는 방법에 대한 자세한 설명

PHP가 Redis 메시지 대기열을 기반으로 Weibo를 게시하는 방법에 대한 자세한 설명

墨辰丷
墨辰丷원래의
2018-05-23 10:57:591604검색

이 글에서는 주로 Redis 메시지 큐를 기반으로 PHP에서 Weibo를 게시하는 방법을 소개합니다. PHP+redis 데이터베이스의 설치, 연결, 읽기, 삽입 및 기타 관련 작업 기술을 예제 형식으로 분석합니다. 참고하세요

phpRedisAdmin: github 주소 그래픽 관리 인터페이스

git clone [url]https://github.com/ErikDubbelboer/phpRedisAdmin.git[/url]
cd phpRedisAdmin
git clone [url]https://github.com/nrk/predis.git[/url] vendor

먼저 위에서 언급한 Redis 그래픽 관리 인터페이스를 설치하세요. Redis 데이터를 쉽게 관리할 수 있습니다

Mysql의 수를 줄이기 위해 동시성, 먼저 Redis에 저장된 사용자의 Weibo를 넣습니다

사용자가 게시할 때 uid(사용자 ID 번호), 사용자 이름(사용자 이름), 콘텐츠('사용자 댓글')의 세 가지 필드가 필요하다고 가정합니다

예를 들어, 사용자는 다음 정보

//此处需要安装phpredis
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
// 连接redis
$web_info= array(
'uid' => '123456',
'username' => '123',
'content' =>'123'
);
//将数组转成json来存储
$list = json_encode($web_info);
//lpush向KEY对应的头部添加一个字符串元素
$redis->lpush('weibo_lists',$list);
$redis->close();
///var_dump(json_encode($web_info));
var_dump($list);
?>

여기에서 Redis에 이미 데이터가 있음을 확인할 수 있습니다.

//创建一个PDO数据库链接 data.php
class qq{
 public function post($uid='',$username='',$content=''){
  try{
   $dsn = "mysql:host;dbname=localhost;dbname=test";
   $db = new PDO($dsn,'root','root');
   $db->exec("SET NAMES UTF8");
   $sql ="insert into test(uid,username,content)values('$uid','$username','$content')";
   $db->exec($sql);
  }catch(PDOException $e){
   $e->getMessage();
  }
 }
}

//处理redis数据库的数据 并把数据放到MYSQL数据库中
include "data.php";
$qq = new qq();
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
//返回的列表的大小。如果列表不存在或为空,该命令返回0。如果该键不是列表,该命令返回FALSE
if($redis -> lsize('weibo_lists')){
 //从LIST头部删除并返回删除数据
 $info = $redis->rPop('weibo_lists');
 $info = json_decode($info);
 $qq->post($info->uid,$info->username,$info->content);
}
$redis->close();
var_dump($info);
?>

데이터베이스에 이미 데이터가 있음을 알 수 있습니다.

이상이 이 글의 전체 내용이며, 모든 분들의 공부에 도움이 되기를 바랍니다.


관련 추천:

PHP함수 날짜 및 시간 함수 날짜() 자세한 설명_php 기본

php 시간 계산 관련 문제 요약_php 기술

php stream_get_meta_data 반환 value _php 기본

위 내용은 PHP가 Redis 메시지 대기열을 기반으로 Weibo를 게시하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.