redis常用总结和支付宝微信支付推送

-链接redis:decode_responses=True:存的数据是字符串格式
	redis连接池:
		 pool = redis.ConnectionPool(host='10.211.55.4', port=6379,max_connection=1000)
		 conn = redis.Redis(connection_pool=pool,decode_responses=True)
		 -用单例
	redis的字典操作:
		-hget
		-hset
		*****-字典中再套字典,需要把后面的字典序列化成字符串
		-hmset
		-hmget
		-hgetall---慎用
		-hlen
		-hscan   --指定游标,然后取多少数据
		-hscan_iter---增量迭代取值
		-hkey
		-hvals
		-hdel
		-hexisit
		-hincrby---用来统计一个东西的数量的频繁增加
	redis的列表操作
		-lpush
		-rpush
		-lpop   ---删的同时,把值返回
		-linsert('l1','before',12,777)
		-lrem   --删除
		-lindex  返回索引位置
		-llen  返回列表的长度
		-lrange  --切片操作
		-自定义增量迭代
		-blpop  --如果列表中没有值,会hang住   模拟出生产者消费者模型
		-队列和栈
			-队列:先进先出
			-栈:后进先出
	redis有事务:
		--通过管道模拟实现
		
	django中使用redis
		-自定义(用连接池,单例)
		-django-redis:
		-from django_redis import get_redis_connection
		-setting中配置
			CACHES = {
				"default": {
					"BACKEND": "django_redis.cache.RedisCache",
					"LOCATION": "redis://127.0.0.1:6379",
					"OPTIONS": {
						"CLIENT_CLASS": "django_redis.client.DefaultClient",
						"CONNECTION_POOL_KWARGS": {"max_connections": 1000}
						# "PASSWORD": "123",
					}
				}
			}
		

要点:
	支付宝支付
		正式环境:用营业执照,申请商户号,appid
		测试环境:沙箱环境:https://openhome.alipay.com/platform/appDaily.htm?tab=info
		支付宝提供接口:给商户使用,收钱
		-Java,php,C#的demo,没有python的demo
		-git有人封装了
		-需要安装模块:pip3 install pycryptodome
		-应用私钥---自己保存,一定不能丢
		-应用公钥---给别人用
		-支付宝公钥---支付宝用的
		-生成公钥私钥:https://docs.open.alipay.com/291/105971
		-把应用公钥配置在支付宝上:应用公钥,配置完成以后,支付宝自动生成一个支付宝公钥
		
		-在程序中:配置应用私钥,支付宝公钥
		
		-如果支付成功,支付宝会回调,但是如果你的服务器挂掉了怎么办?
			-支付宝24小时以内不定时再给你发,你修改掉订单状态即可
		-支付成功,支付宝会有一个get回调,一个post回调:修改订单状态
		
		
	用什么推送
		-邮件
		-微信推送
		-短信推送
	微信推送
		-公众号(不能主动给用户发消息)
			-认证的公众号:需要营业执照,需要交钱,可以发多篇文章
			-未认证的公众号:一天只能发一篇文章
		-服务号(微信推送)
			-需要申请,需要认证
			-可以主动给用户推送消息
			-能给推送的人,必须关注我的服务号
			-沙箱环境
		-企业号
			-企业里用的:
		-你们所见的二维码:其实就是一个url地址
		-咱们在前端通过url(https://open.weixin.qq.com/connect/oauth2.....)生成一个二维码
		
		-注意*****修改:网页授权获取用户基本信息
posted @ 2018-12-27 15:18  不沉之月  阅读(492)  评论(0编辑  收藏  举报