Python3.5 学习十一
关于消息队列
PY 中应用程序里对于消息队列的使用:
1 threading QUEUE
2 进程QUEUE 父进程、父进程下的子进程间进行交互
RabbitMQ 消息队列 :用于应用程序之间,可跨平台的进行通信
RabbitMQ依赖于语言erlang
实例代码举例:20180815 先要安装erlang和pika
pika是python连接RabbitMQ模块的主要工具,celery是很火的分布式任务队列,还有一个叫haigha.
RabbitMQ消息基本实例\轮训分发\确保消息完成\消息可持续\消息公平分发\
RabbitMQ fanout广播模式:fanout_publisher 实时的,当时在线的才能收到。订阅发布,等同于收音机机制
RabbitMQ direct广播模式:分类/级别,只有接受该级别的才能收到
topic细致的消息过滤广播模式:(consumer如果想收所有,后面跟着 # 号则收所有)
缓存存储系统:mongodb、redis、memcache 只能存在内存 轻量级缓存
redis 是一个异步单线程 Key-value缓存系统。
set key value
set key value nx 只有key不存在时,才添加keyvalue对
set key value xx 只有key存在时,才更改key的value
set key ex value 设置超时时间 s
pset key ex value 设置超时时间毫秒
mset 批量设置 如果命令不会用,可以help cmd_str查看命令说明
get 取值
mget 批量取值
getset 设置更改新值并返回之前的值
getrange 相当于取到后给字符串切片操作
setrange 给起点为那个的后面进行赋值
setbit 给二进制位更改值 可以更改二进制位的值,引申为存储上亿的人的ID号等功能。让数据存储量最大化
incr 自增
incrbyfloat
decr 自减
append 追加
RabbitMQ rpc的实现:有发送有返回(远程函数调用remote procedure call)
Redis 对hash操作 hset XXX hgetall XXX hget XXX YYY hkeys XXX hvals XXX hmset hmget hlen hexists hincrby.....hscan hscan_inter
Redis 对集合set的操作
操作列表:lpush names aa bb cc 从左边放入 lrange names 0 -1
rpush names 从右边放 lrange names 从左边拿
lpushx 只有列表存在才放入数据
llen
linsert linsert names after/before aaa bbb
lset names 1 bbb
lrem names 2 test
lpop 从左侧获取第一个元素并移除
lindex
lrange
ltrim 只保留所写的部分值,其他都移除
rpoplpush 从一个列表里右边取出来一个,放到另一个列表的最左边
blpop 删掉并返回 并且可设置无数据时的等待时间
brpoplpush 对一个放一个收的操作,可设置超时时间的命令
对集合的操作:
sadd names 直接去重
smembers names 集合不能用切片形式获取值,因为它是无序的
sdiff 比较两个集合差集
sdiffstore newset set1 set2
sinter 交集
sinterstore
sismember
smembers
smove
spop 右侧尾部移除一个并返回
srandmember 随机获取number个值
srem删除指定的值
sunion 获取并集
sunionstore
sscan 查找 匹配
sscan_inter 同上,但返回一个迭代器
有序集合:
zadd z1 10 alex 5 jack 8 rain 6 jain
zrange 显示值 根据权重从小到大排列 withscores 显示分数
zcount 统计数量
zincrby 自增分数
zrank 获取某个值在该有序队列的排行,从0开始
zrangebylex
zrem 删除
zremrangebyrank 范围内删除
zremrangebyscore
zsore
zinterstore 获取交集 并将scores相加存储
zunionstore 获取并集
zcan_inter 过滤并返回迭代器
Redis对元素的操作函数
del
exists
keys 根据模型获取redis的name
expire 为某个name设置超时时间
rename
move 从元素保存到db redis有15个db
randmkey 随机获取一个key
type 获取类型
scan 检索
redis-py管道
示例写错了,应该是用pipe去set值,这里注意一下
发布与订阅:
Redis 对有序集合的操作
本周作业:
可以异步的在多台机器上执行多个任务
Python3.5 学习十一的更多相关文章
- 从零开始学习PYTHON3讲义(十一)计算器升级啦
(内容需要,本讲中再次使用了大量在线公式,如果因为转帖网站不支持公式无法显示的情况,欢迎访问原始博客.) <从零开始PYTHON3>第十一讲 第二讲的时候,我们通过Python的交互模式来 ...
- python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法
python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...
- python3.4学习笔记(十一) 列表、数组实例
python3.4学习笔记(十一) 列表.数组实例 #python列表,数组类型要相同,python不需要指定数据类型,可以把各种类型打包进去#python列表可以包含整数,浮点数,字符串,对象#创建 ...
- python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容
python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...
- python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容
python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...
- python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例
python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...
- 【转载】 强化学习(十一) Prioritized Replay DQN
原文地址: https://www.cnblogs.com/pinard/p/9797695.html ------------------------------------------------ ...
- python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置
python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置Download JetBrains Python IDE :: PyCharmhttp://www. ...
- python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码
python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...
随机推荐
- 面向对象设计模式纵横谈:Adapter 适配器模式(笔记记录)
适配(转换)的概念无处不在 适配,即在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口.生活中适配转换的例子太多了,也是设计模式里面比较容易理解的一个模式. 动机(Motivation) 在 ...
- 配置springMVC
1.web.xml 前端控制器 配置规则:*.do: 拦截请求路径所有的后缀为.do;/* : 拦截所有, .jsp页面也会拦截; 不会使用此配置, 因为视图会无法跳转;/ : 拦截所有, .jsp页 ...
- 761A Dasha and Stairs
A. Dasha and Stairs time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- sdk接入
文档 http://blog.csdn.net/chenjie19891104/article/details/42217281 视频: https://chuanke.baidu.com/v2869 ...
- 2018.10.14 loj#516. DP 一般看规律(启发式合并)
传送门 注意到一种颜色改了之后就不能改回去了. 因此可以启发式合并. 每次把小的合并给大的. 这样每个数最多被合并logloglog次. 如果维护一棵比较下标的平衡树的话,对于答案有贡献的就是每个数与 ...
- 2018.09.26 bzoj1015: [JSOI2008]星球大战starwar(并查集)
传送门 并查集经典题目. 传统题都是把删边变成倒着加边,这道题是需要倒着加点. 处理方法是将每个点与其他点的边用一个vector存起来,加点时用并查集统计答案就行了. 代码: #include< ...
- 2018.07.04 BZOJ 2823: AHOI2012信号塔(最小圆覆盖)
2823: [AHOI2012]信号塔 Time Limit: 10 Sec Memory Limit: 128 MB Description 在野外训练中,为了确保每位参加集训的成员安全,实时的掌握 ...
- 着重基础之—Spring Boot 编写自己的过滤器
Spring Boot 编写自己的"过滤器" 又好久没有写博客进行总结了,说实话,就是 "懒",懒得总结,懒得动.之所以写这篇博客,是因为最近对接公司SSO服务的时候,需要自定义拦 ...
- linux CentOS 7 安装 RabbitMQ Erlang 21.0
1. 安装erlang 安装依赖环境 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixO ...
- arduino uno r3 + SIM900 + USB打火机 实现电话触发点火
需求来源 1.儿子过完年6岁,喜欢玩烟花,但是胆子小,于是我就负责点火,从年前26到大年初八,每天晚上要给儿子点鞭炮啊点鞭炮. 2.这边过年要打关门炮跟开门炮,大年初一凌晨还要起来帮老妈点鞭炮,说实在 ...