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 ...
随机推荐
- springmvc中@RequestMapping的使用
通过RequestMapping注解可以定义不同的处理器映射规则. 1.1 URL路径映射 @RequestMapping(value="/item")或@RequestMappi ...
- 只有自己看的懂的vue 二叉树的3级联动
我是在vue做的数据 actions mutations state index页面获取值 传递给子页面 子页面的操作 <template> <div class='cascade_ ...
- php调试利器之phpdbg
信海龙的博客 php调试利器之phpdbg 简介 PHPDBG是一个PHP的SAPI模块,可以在不用修改代码和不影响性能的情况下控制PHP的运行环境. PHPDBG的目标是成为一个轻量级.强大.易用的 ...
- tomcat执行文件权限
.当我在linux下某个目录执命令或者安装的时候通常会提示没有权限或者不可以操作,这时需要加权限 chmod /usr/local/tomcat/bin; 2关于LINUX权限(启动tomcat)-b ...
- UI小白如何快速提升自己
作为一名经历过UI学习的过来人,这些观点是自己在整个学习的过程中总结的. 希望可以对大家有所帮助,可以让刚开始接触UI的人少走弯路吧,话不多说. 快速进入主题. 那么UI小白到底如何快速提成自己呢 ...
- 解决 cmake_symlink_library: System Error: Operation not supported
在编译uchardet时遇到这个错误: cmake_symlink_library: System Error: Operation not supported 创建链接不成功,要确认当前帐户下是否有 ...
- 主成分_CPA
基本原理:方差最大原理 通过正交变换将原相关性变量转化为不相关的变量 第一主成分:线性组合 方差最大 第二主成分:线性组合,COV(F1,F2)=0 步骤: 原始数据标准化:DataAdjust(m ...
- <摘录>开源软件架构-ZeroMQ
原文链接:http://www.aosabook.org/en/zeromq.html ØMQ是一个消息通信系统,如果你愿意的话也可以称其为“面向消息的中间件”.ØMQ的应用环境很广泛,包括金融服务. ...
- SqlServer和MySql允许脏读的实现方式,提高查询效率
--Sql Server 允许脏读查询sqlselect * from category with(nolock) --MySql 允许脏读查询sql Mysql没有语法糖,需要原生的sqlSET S ...
- 使用WebUploader客户端批量上传图片,后台使用springMVC接收实例
使用WebUploader客户端批量上传图片,后台使用springMVC接收实例 我是搞Java后台的,因为最近主管让用webUploader写客户端,但是在网上找了很多,能够复制就能用的并没有几个, ...