이 글에서는 주로 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 stream_get_meta_data 반환 value _php 기본
위 내용은 PHP가 Redis 메시지 대기열을 기반으로 Weibo를 게시하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!