关于消息队列

  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. Spring基于AspectJ的AOP的开发之AOP的相关术语

    1. Joinpoint(连接点) -- 所谓连接点是指那些被拦截到的点.在spring中,这些点指的是方法,因为spring只支持方法类型的连接点(任何一个方法都可以称为连接点) 2. Pointc ...

  2. div+css隐藏内容样式方法

    div css隐藏内容样式方法     div+css隐藏内容方法 一般情况下,css隐藏的用途,如下: 1.对文本的隐藏 2.隐藏超链接(另类黑链) 3.对统计代码隐藏 4.隐藏超出图片 5.css ...

  3. 挪过来的spring mvc 的入门 介绍

    目录  一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 ...

  4. 2018年UI设计趋势概览

    ​互联网产品的用户界面设计趋势是根据用户的不同需求而不断变化的.在仔细分析了过去几年用户界面设计的趋势和创新之后,我们可以发现其背后的一些规律,2018年UI界面设计的趋势如下. 渐变色 在过去的几年 ...

  5. 在Jmeter中用JAVA获取Rolling Date

    Rolling Date_Weekly import java.util.*; import java.text.SimpleDateFormat; import java.text.DateForm ...

  6. 解决Axure发布分享预览的3个方法

    公司的同事制作的一个产品原型,要发给我,我当时正在客户这里,电脑上并没有Axure,客户又催得急,感到一阵无奈.这次回来之后,经过一番摸索,发现还是有办法的.这里给大家分享一下Axure发布分享预览的 ...

  7. wcf服务契约代理链

    意图:为了是客户端代理呈现出面向对象的多态的特征 a. 服务端 .契约 实现了契约的继承这个在服务端是一点问题没有,因为oprationcontract可以继承,虽然DataContract不能实现继 ...

  8. C# 如何操作串口

    1.首先要引用  System.IO.Ports using System; using System.Collections.Generic; using System.ComponentModel ...

  9. Fiddler实战深入研究(二)[转载]

    Fiddler实战深入研究(二) 阅读目录 Fiddler不能捕获chrome的session的设置 理解数据包统计 请求重定向(AutoResponder) Composer选项卡 Filters选 ...

  10. ssh到远程执行命令并返回

    假设有三台机器 host1,host2,host3,host1能免密登录其他两台.要在第一台的机器里面写一个脚本分别删除每台机器的/root/test.txt rm -rf /root/test.tx ...