关于消息队列

  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 学习十一的更多相关文章

  1. 从零开始学习PYTHON3讲义(十一)计算器升级啦

    (内容需要,本讲中再次使用了大量在线公式,如果因为转帖网站不支持公式无法显示的情况,欢迎访问原始博客.) <从零开始PYTHON3>第十一讲 第二讲的时候,我们通过Python的交互模式来 ...

  2. python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法

    python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...

  3. python3.4学习笔记(十一) 列表、数组实例

    python3.4学习笔记(十一) 列表.数组实例 #python列表,数组类型要相同,python不需要指定数据类型,可以把各种类型打包进去#python列表可以包含整数,浮点数,字符串,对象#创建 ...

  4. python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容

    python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...

  5. python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容

    python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...

  6. python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例

    python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...

  7. 【转载】 强化学习(十一) Prioritized Replay DQN

    原文地址: https://www.cnblogs.com/pinard/p/9797695.html ------------------------------------------------ ...

  8. python3.4学习笔记(十八) pycharm 安装使用、注册码、显示行号和字体大小等常用设置

    python3.4学习笔记(十八) pycharm 安装使用.注册码.显示行号和字体大小等常用设置Download JetBrains Python IDE :: PyCharmhttp://www. ...

  9. python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码

    python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...

随机推荐

  1. springmvc中@RequestMapping的使用

    通过RequestMapping注解可以定义不同的处理器映射规则. 1.1 URL路径映射 @RequestMapping(value="/item")或@RequestMappi ...

  2. 只有自己看的懂的vue 二叉树的3级联动

    我是在vue做的数据 actions mutations state index页面获取值 传递给子页面 子页面的操作 <template> <div class='cascade_ ...

  3. php调试利器之phpdbg

    信海龙的博客 php调试利器之phpdbg 简介 PHPDBG是一个PHP的SAPI模块,可以在不用修改代码和不影响性能的情况下控制PHP的运行环境. PHPDBG的目标是成为一个轻量级.强大.易用的 ...

  4. tomcat执行文件权限

    .当我在linux下某个目录执命令或者安装的时候通常会提示没有权限或者不可以操作,这时需要加权限 chmod /usr/local/tomcat/bin; 2关于LINUX权限(启动tomcat)-b ...

  5. UI小白如何快速提升自己

    作为一名经历过UI学习的过来人,这些观点是自己在整个学习的过程中总结的. 希望可以对大家有所帮助,可以让刚开始接触UI的人少走弯路吧,话不多说. 快速进入主题. ​ 那么UI小白到底如何快速提成自己呢 ...

  6. 解决 cmake_symlink_library: System Error: Operation not supported

    在编译uchardet时遇到这个错误: cmake_symlink_library: System Error: Operation not supported 创建链接不成功,要确认当前帐户下是否有 ...

  7. 主成分_CPA

    基本原理:方差最大原理 通过正交变换将原相关性变量转化为不相关的变量 第一主成分:线性组合  方差最大 第二主成分:线性组合,COV(F1,F2)=0 步骤: 原始数据标准化:DataAdjust(m ...

  8. <摘录>开源软件架构-ZeroMQ

    原文链接:http://www.aosabook.org/en/zeromq.html ØMQ是一个消息通信系统,如果你愿意的话也可以称其为“面向消息的中间件”.ØMQ的应用环境很广泛,包括金融服务. ...

  9. SqlServer和MySql允许脏读的实现方式,提高查询效率

    --Sql Server 允许脏读查询sqlselect * from category with(nolock) --MySql 允许脏读查询sql Mysql没有语法糖,需要原生的sqlSET S ...

  10. 使用WebUploader客户端批量上传图片,后台使用springMVC接收实例

    使用WebUploader客户端批量上传图片,后台使用springMVC接收实例 我是搞Java后台的,因为最近主管让用webUploader写客户端,但是在网上找了很多,能够复制就能用的并没有几个, ...