11.13git和redis
2018-11-13 15:46:40
git完结
redis完结,
还剩一点路飞项目!!!做完回学校!!!!
越努力,越幸运!永远不要高估自己!
关于 redis具体使用可以参考: http://www.cnblogs.com/wupeiqi/articles/5132791.html
在Django中使用redis 可以参考 : http://www.cnblogs.com/wupeiqi/articles/5246483.html
1.自定义链接redis:
utils.py
import redis POOL = redis.ConnectionPool(host='10.211.55.4', port=6379,password='luffy1234',max_connections=1000)
views.py
import redis
from django.shortcuts import render,HttpResponse
from utils.redis_pool import POOL def index(request):
conn = redis.Redis(connection_pool=POOL)
conn.hset('kkk','age',18) return HttpResponse('设置成功')
def order(request):
conn = redis.Redis(connection_pool=POOL)
conn.hget('kkk','age') return HttpResponse('获取成功')
urls.py
from django.conf.urls import url
from django.contrib import admin
from app01 import views urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/', views.index),
url(r'^order/', views.order),
]
2. 手动操作redis
views.py pip3 install django-redis
import redis
from django.shortcuts import render,HttpResponse
from django_redis import get_redis_connection def index(request):
conn = get_redis_connection("default")
return HttpResponse('设置成功')
def order(request):
conn = get_redis_connection("back")
return HttpResponse('获取成功')
3.全栈缓存
views.py
from django.shortcuts import render,HttpResponse
import time def index(request):
ctime = str(time.time())
return HttpResponse(ctime) def order(request):
ctime = str(time.time())
return HttpResponse(ctime)
在settings中配置
使用中间件,经过一系列的认证等操作,如果内容在缓存中存在,则使用FetchFromCacheMiddleware获取内容并返回给用户,当返回给用户之前,判断缓存中是否已经存在,如果不存在则UpdateCacheMiddleware会将缓存保存至缓存,从而实现全站缓存
MIDDLEWARE = [
'django.middleware.cache.UpdateCacheMiddleware',
# 其他中间件...
'django.middleware.cache.FetchFromCacheMiddleware',
]
代码就这些贴上笔记!具体缓存机制可以参考上面两个链接
s9day110
内容回顾:
1. git开发时,出bug如何结局? 2. git rebase的作用? 3. git 命令? 4. redis是什么?
用于操作内存的软件。
- 可以做持久化:
- AOF
- RDB
- 相当于是大字典 - 单进程单线程 5. 使用连接池
本质,维护一个已经和服务端连接成功的socket。
以后再次发送数据时,直接获取一个socket,直接send数据。 6. 路飞表结果
- 课程
- 大类
- 子类
- 学位课
- 奖学金
- 老师
- 专题课
- 课程详细
- 大纲
- 作业
- 章节
- 课时
- 价格策略
- 深科技
- 文章来源
- 文章
- 用户
- token
- 评论
- 收藏
7. 支付宝支付 - 加密方式:rsa
- 公钥私钥:
- 商户私钥
- 支付宝公钥
- 支付成功后,断电宕机
- 成功:return HttpResponse('success') 8. rest framework框架 9. 数据库页数越大速度越慢。
- 限制页数
- 记录当前页最大ID、最小ID url上的页面(加密)
- 错误答案:
- 扫描索引表
- 再去数据库表中获取数据 今日内容:
1. git
2. redis
3. 改代码 内容详细:
1. git
第四阶段: 多人协同开发
1. 允许他人操作程序
- 合作者
- 创建组织 2. 分支
- master
- dev
- xdb
- zhh
3. 规则
- 一起合并
- 合并时间:1/2 问题:
$ git push origin dev
To https://github.com/WuPeiqi/dbhot.git
! [rejected] dev -> dev (fetch first)
error: failed to push some refs to 'https://github.com/WuPeiqi/dbhot.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details. 4. 做代码review
如何做代码review?
- 创建review分支:
谁来锁代码review?
- 组长
- 带你的人 第五阶段:给别人代码贡献力量 问题: 如果你要在github上给别人代码添加功能?
fork
pull request 其他:
a. 不用反复输入用户名密码登录
Https:
https://用户名:密码@github.com/WuPeiqi/dbhot.git
git remote add origin https://用户名:密码@github.com/WuPeiqi/dbhot.git SSH:
git@github.com:WuPeiqi/dbhot.git b. .gitignore文件 c. 版本
git tag -a v1.0 -m '版本介绍' 本地创建Tag
git show v1.0 查看
git tags -n 查看本地Tag
git tag -l 'v1.4.2.*' 查看本地Tag,模糊匹配
git tag -d v1.0 删除Tag
git push origin :refs/tags/v0.2 更新远程tag
git checkout v.10 切换tag
git fetch origin tag V1.2 git push origin --tags
git pull origin --tags git clone -b v1.0 https://github.com/WuPeiqi/dbhot.git 要求:
1. 组长创建项目(把自己的路飞学城api):master/dev
2. 组长邀请组员尽力啊
3. 组员:
- 创建自己分支
- 修改代码,去提交。 组长:今天晚上发送项目地址 2. redis
特点:
a. 持久化
b. 单进程、单线程
c. 5大数据类型 redis={
k1:'', 字符串
k2:[1,2,3,4,4,2,1], 列表
k3:{1,2,3,4}, 集合
k4:{name:123,age:666}, 字典
k5:{('alex',60),('eva-j',80),('rt',70),},有序集合
}
使用字典:
- 基本操作
- 慎重使用hgetall, 优先使用 hscan_iter
- 计数器 注意事项:redis操作时,只有第一层value支持:list,dict .... 应用(django):
1. 自定义使用redis 2. 使用第三方组件
pip3 install django-redis 配置:
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": 100}
# "PASSWORD": "密码",
}
}
} 使用:
import redis
from django.shortcuts import render,HttpResponse
from django_redis import get_redis_connection def index(request):
conn = get_redis_connection("default")
return HttpResponse('设置成功')
def order(request):
conn = get_redis_connection("back")
return HttpResponse('获取成功') 高级使用:
1. 全站缓存 2. 单视图 3. 局部页面 补充:rest framework框架访问频率限制推荐放到 redis/memecached
11.13git和redis的更多相关文章
- 11.2.3 Redis的启动停止
11.2.3 Redis的启动停止 Redis安装配置完成后,启动过程非常简单,执行命令/usr/local/redis/bin/redis-server /usr/local/redis/etc/ ...
- 11.12git部分和redis
2018-11-12 09:54:58 这星期把luffycity看完,然后周末回学校 越努力,越幸运!永远不要高估自己! 具体可以参考 戳我啊!! 一些git常用命令: 目前已使用Git的四个命令 ...
- 11 python与redis交互
安装:pip install redis 导入模块:from redis import * 创建StrictRedis 通过init创建对象,指定参数host.port与指定的服务器和端口连接. ho ...
- redis(4.0.11)编译安装
一: redis数据库安装 系统环境:linux系统(centos/redhat):Red Hat Enterprise Linux Server release 6.8 (Santiago) red ...
- redis数据类型及使用场景
Redis数据类型 String: Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字. 常用命令: set,get,decr,incr,mge ...
- ASP.NET Redis 开发
文件并发(日志处理)--队列--Redis+Log4Net Redis简介 Redis是一个开源的,使用C语言编写,面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存储,适应高 ...
- redis 数据类型详解 以及 redis适用场景场合
1. MySql+Memcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的 ...
- redis入门笔记(1)
redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure serv ...
- 高性能网站架构设计之缓存篇(2)- Redis C#客户端
在上一篇中我简单的介绍了如何利用redis自带的客户端连接server并执行命令来操作它,但是如何在我们做的项目或产品中操作这个强大的内存数据库呢?首先我们来了解一下redis的原理吧. 官方文档上是 ...
随机推荐
- E. Thematic Contests 二分,离散化
题目意思是给你n个问题即数字,n的大小代表问题所在的话题,题目要求举办多场比赛,每场比赛的只能一种问题,且后一场比赛的问题必须是前一场的两倍,求举办比赛可能最多的问题总数 传送门 解题思路:将出现每种 ...
- python测试开发django-53.xadmin里Model分类管理(proxy=True)
前言 django的xadmin后台使用xadmin.site.register注册时,一张表只能注册一次,在后面页面上只能显示出一个页面. 有时候我们想从里面筛选出自己想要的数据,比如有全部的学生成 ...
- PHP中new static()与new self()的区别异同分析
本文实例讲述了PHP中new static()与new self()的区别异同,相信对于大家学习PHP程序设计能够带来一定的帮助. 问题的起因是本地搭建一个站.发现用PHP 5.2 搭建不起来,站PH ...
- Java名称字符串进行星号处理
/** * 对字符串处理:将指定位置到指定位置的字符以星号代替 * * @param content * 传入的字符串 * @param begin * 开始位置 * @param end * 结束位 ...
- Python 读取 支付宝账单并存储到 Access 中
我有一个很多年前自己写的C#+Access的记账程序,用了很多年,现在花钱的机会多了,并且大部分走的支付宝,于是就想把账单从支付宝网站上下载下来,直接写入到Access,这样就很省心了. 记账程序是长 ...
- from __future__ import print_function的作用
阅读代码的时候会看到下面语句: from __future__ import print_function 该语句是python2的概念,那么python3对于python2就是future了,也就是 ...
- html : 九宫格(响应式)
talk is cheap, show you the code : <!DOCTYPE html> <html> <head> <title>html ...
- Native App开发 与Web App开发(原生与web开发优缺点)
Native App开发 Native App开发即我们所称的传统APP开发模式(原生APP开发模式),该开发针对IOS.Android等不同的手机操作系统要采用不同的语言和框架进行开发,该模式通常是 ...
- CSS 水平居中与垂直居中
前言 在CSS布局中,水平居中与垂直居中一直是用到比较多的,在本篇中将介绍水平居中.垂直居中的几种方式. 示例 HTML: <div class="parent"> & ...
- SATA主机协议的FPGA实现之物理层设计
SATA主机协议的FPGA实现之物理层设计 接上一篇文章,这里讲解SATA主机协议的物理层的实现过程. 下图是标准SATA协议文档中给出的物理层结构.可以看到它包含控制模块.时钟数据提取单元.同步 ...