03 2020 档案
摘要:1、gitlab介绍Gitlab的优势和应用场景: 开源免费,适合中小型公司将代码放置在该系统中; 差异化的版本管理,离线同步以及强大分支管理功能; 便捷的GUI操作界面以及强大账户权限管理功能; 集成度很高,能够集成绝大多数的开发工具; 支持内置HA,保证在高并发下仍旧实现高可用性;GitLab主要服务构成: Nginx静态Web服务器; ...
阅读全文
摘要:1、__new__ 和 __init__两者的区别:__new__是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例对象,是个静态方法。__init__是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值,通常用在初始化一个类实例的时候。是一个实例方法。也就是: __new__先被调用,__init__后被调用,__new__的返回值(实例)将传递给__init__方法的第一...
阅读全文
摘要:参考:https://www.cnblogs.com/heaven-xi/p/9618078.html 1、MegaCli 监控主要是通过MegaCli 软件获取到物理主机的read及硬盘相关状态信息。然后通过zabbix的自定义报警进行监控。 MegaCli是一款管理维护硬件RAID软件,可以通过
阅读全文
摘要:一、Connector 在Tomcat架构中,Connector主要负责处理与客户端的通信。Connector的实例用于监听端口,接受来自客户端的请求并将请求转交给Engine处理。同时将来自Engine的答复返回给客户端。 Connector的种类 Tomcat源码中与connector相关的类位
阅读全文
摘要:原文:https://blog.csdn.net/JustinQin/article/details/795300381、conf/server.xml参数说明:maxIdleTime最大空闲时间,超过这个空闲时间,且线程数大于minSpareThreads的,都会被回收,默认值1分钟(60000ms);minSpareThreads最小空闲线程数,任何情况都会存活的线程数,即便超过了最大空闲时间...
阅读全文
摘要:原文:https://blog.csdn.net/qq_24817093/article/details/77152269 1. 业务数据全部存储在datanode上面,所以datanode的存储空间必须足够大,且每个datanode的存储空间尽量保持一致。 2. 管理节点/namenode对存储空
阅读全文
摘要:原文:https://blog.csdn.net/chen__an/article/details/85296806 1、前言 客户端的开发语言很可能与后台的开发语言不一样。这时我们需要后台能够提供可以跨平台跨语言的一种标准的数据交换格式供 前后端沟通(这就是Web API的作用)。 如今大家最常用
阅读全文
摘要:1、__new__的作用在Python中new方法与init方法类似,但是如果两个都存在那么new闲执行。在基础类object中,new被定义成了一个静态方法,并且需要传递一个参数cls。Cls表示需要实例化的类,此参数在实例化时由Python解析器自动提供。new()是在新式类中新出现的方法,它作用在构造方法init()建造实例之前,可以这么理解,在Python 中存在于类里面的构造方法init...
阅读全文
摘要:1、优点 1、使不同应用开发环境相互独立 2、环境升级不影响其他应用,也不会影响全局的python环境 3、防止出现包管理混乱及包版本冲突 2、安装 windows安装 # 先安装两个包 pip3 install virtualenv pip3 install virtualenvwrapper-w
阅读全文
摘要:1、介绍1、采用国内源,加速下载模块的速度2、常用pip源: -- 豆瓣:https://pypi.douban.com/simple -- 阿里:https://mirrors.aliyun.com/pypi/simple3、加速安装的命令: -- >: pip install -i https://pypi.douban.com/simple 模块名2、永久配置安装源wind...
阅读全文
摘要:1 Git历史同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码。到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux...
阅读全文
摘要:偏函数是functools.partial()函数,将原函数当做第一个参数传入,原函数的各个参数依次作为partial()函数后续的参数;例子:from functools import partialdef test(a, b, c): return a+b+cfunc = partial(test, 1) #把test当作第一个参数,把test的一个参数当作partial参数传入pri...
阅读全文
摘要:原文:https://www.cnblogs.com/liuqingzheng/p/9508851.html 一 前言 需求: --公司之有一台服务器 -目前运行这一个5年前开发的Django项目,基于1.5 -现在要基于Django2.0开发一套程序 -无法卸载原来的版本,必须还要安装新版本 二
阅读全文
摘要:1、简介一个Python项目中requirements.txt罗列了所有项目需要的packages,别人clone/copy你的项目后,可以通过pip install -r requrements.txt 命令安装该项目需要的所有包,方便至极。而pipreqs 命令可以根据imports自动生成这样一个requirements.txt文件。2、使用安装:pip3 install pipreqs生成...
阅读全文
摘要:1、什么是celeryCelery是一个简单、灵活且可靠的,处理大量消息的分布式系统专注于实时处理的异步任务队列同时也支持任务调度celery架构:Celery的架构由三部分组成,消息中间件(message broker),任务执行单元(worker)和任务执行结果存储(task result store)组成。消息中间件Celery本身不提供消息服务,但是可以方便的和第三方提供的消息中间件集成。...
阅读全文
摘要:1、celery执行定时任务1)几点几分执行:celery_task-s1.pyfrom celery import Celeryimport time# redis不加密码broker='redis://127.0.0.1:6379/0'backend='redis://127.0.0.1:6379/1'app=Celery('test',backend=backend,broker=broke...
阅读全文
摘要:REST framework可以自动帮助我们生成接口文档。接口文档以网页的方式呈现。自动接口文档能生成的是继承自APIView及其子类的视图。1、安装依赖REST framewrok生成接口文档需要coreapi库的支持。pip3 install -i https://pypi.douban.com/simple/ coreapi2、设置接口文档访问路径在总路由中添加接口文档路径。文档路由对应的视...
阅读全文
摘要:1、haystack简介Haystack是django的开源全文搜索框架(全文检索不同于特定字段的模糊查询,使用全文检索的效率更高 ),该框架支持Solr,Elasticsearch,Whoosh, Xapian,搜索引擎它是一个可插拔的后端(很像Django的数据库层),所以几乎你所有写的代码都可以在不同搜索引擎之间便捷切换;- 全文检索不同于特定字段的模糊查询,使用全文检索的效率更高,并且能够...
阅读全文
摘要:1、所有框架都能用的方式-先新建一个py文件,生成一个redis连接池;-需要在哪里用,就把这个py文件导过去;举例:在app下新建一个py文件,redis_pool.py:单独新建的原因是,使用时导过去就行了,如果直接和程序写在一起,那么每次执行程序,都会新建一个连接池,所以……views.pyfrom django.shortcuts import render, HttpResponsefr...
阅读全文
摘要:原文:https://www.cnblogs.com/zhaohuhu/p/9140673.html#_label2_12 目录 Redis介绍 redis介绍 redis定义 redis数据模型 使用Redis有哪些好处? redis相比memcached有哪些优势? redis常见性能问题和解决
阅读全文
摘要:1、同源策略同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现;请求的url地址,必须与浏览器上的url地址处于同域上,也就是域名,端口,协议相同;比如:我在本地上的域名是127.0.0.1:8000,请求另外一个域名:127...
阅读全文
摘要:1、缓存介绍在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面.当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消耗很多的服务端资源,所以必须使用缓存来减轻后端服务器的压力.缓存是将一些常用的数据保存内存或者memcache中,在一定的时间内有人来访问这些数据时,则不再去执行数据库及渲染等操作,而是直接从内存或mem...
阅读全文
摘要:1、添加测试数据views.pyfrom django.shortcuts import renderfrom app01 import modelsfrom rest_framework.views import APIViewfrom rest_framework.response import Responsefrom rest_framework.versioning import U...
阅读全文
摘要:1、作用用于版本的控制2、内置的版本控制类from rest_framework.versioning import QueryParameterVersioning,AcceptHeaderVersioning,NamespaceVersioning,URLPathVersioning#基于url的get传参方式:QueryParameterVersioning------>如:/users?v...
阅读全文
摘要:1、响应器作用根据用户请求的URL 或 用户可接受的类型,筛选出合适的 渲染组件;比如我们用浏览器访问时就会有一个简单样式的页面,用postman访问就只是json格式的数据;2、内置的响应器显示json格式:JSONRenderer访问URL:http://127.0.0.1:8000/test/?format=jsonhttp://127.0.0.1:8000/test.jsonhttp://...
阅读全文
摘要:1、解析器的作用根据请求头 content-type 选择对应的解析器对请求体内容进行处理;有application/json,x-www-form-urlencoded,form-data等格式;举例说明:1)发送application/json数据,让后端接收:views.pyfrom django.shortcuts import renderfrom rest_framework.view...
阅读全文
摘要:路由1、路由第一种写法-原始方式这种方式也就是前面一直在写的;urls.pyfrom django.conf.urls import urlfrom app01 import viewsurlpatterns = [ url(r'^books/$', views.BookView.as_view()), url(r'^books/(?P\d+)$', views.BookDetailV...
阅读全文
摘要:1、频率简介为了控制用户对某个url请求的频率,比如,一分钟以内,只能访问三次;2、内置频率类使用局部使用views.pyfrom django.shortcuts import renderfrom rest_framework.views import APIViewfrom rest_framework.response import Responsefrom rest_framework....
阅读全文
摘要:1、DRF中的Request在Django REST Framework中内置的Request类扩展了Django中的Request类,实现了很多方便的功能--如请求数据解析和认证等。比如,区别于Django中的request从request.GET中获取URL参数,从request.POST中取某些情况下的POST数据。在APIView中封装的request,就实现了请求数据的解析: ...
阅读全文
摘要:1、权限简介 比如只用超级用户才能访问指定的数据,普通用户不能访问,所以就要有权限组件对其限制; 2、权限组件的使用 权限使用也分为局部使用、全局使用、局部禁用,使用方式和认证组件类似; 权限组件局部使用: models.py from django.db import models # Creat
阅读全文
摘要:1、认证简介只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录,就不能查看,这时候需要用到认证组件;2、登录接口和token的使用settings.pyINSTALLED_APPS = [ ..... 'rest_framework',]models.pyfrom django.db import models# Create your mo...
阅读全文
摘要:1、关于序列化与反序列化web有两种应用模式,一种是前后端不分离,一种是前后端分离,当前后端分离的时候,后端只需要向前端传输数据即可,不需要进行其他的操作;现阶段主流的数据格式为json格式,所以在restframework在前后端传输数据时,也主要是json数据,过程中就要需要把其他数据转换成json数据,比如数据库查询所有数据时,是queryset对象,那就要把这对象处理成json数据返回前端...
阅读全文
摘要:一、安装djangorestframework方式一:pip3 install djangorestframework方式二:pycharm图形化界面安装方式三:pycharm命令行下安装(装在当前工程所用的解释器下)djangorestframework: 它是一个app,可以应用到项目中; 快速的构建resful规范的接口; 以后再执行的dispatch方法是APIView的...
阅读全文
摘要:一、关于RESTfulREST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”;REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识,客户端应用通过URL来获取资源的表征,获得这些表征致使这些应用转变状态;所有的数据,不过是通过网络获取的还是操作(增删改查)的数据,都是资...
阅读全文
摘要:1、说明比如当我们开发了一个系统,可以允许用户上传头像图片或者视频之类的,对这些媒体文件进行保存时就可以使用MEDIA了,它指定保存在哪里,需要将保存的路径添加到路由中,我们就可以在浏览器的地址栏根据media文件夹中文件的路径访问对应的文件了。2、设置MEDIA1)设置settings.py# 配置用户上传文件存放位置(相当于暴露一个url, 用此方法也可以暴露其他文件夹)# 用户上传的文件会自...
阅读全文
摘要:1、Auth模块概述我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统。此时我们需要实现包括用户注册、用户登录、用户认证、注销、修改密码等功能,事情还真不少;Django作为一个完美主义者的终极框架,当然也会想到用户的这些痛点。它内置了强大的用户认证系统--auth,它默认使用 auth_user 表来存储用户数据。2、Auth模块常用方法首先要导入auth模块:from django...
阅读全文
摘要:1、什么是csrfCSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同,XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻...
阅读全文
摘要:一、Django中间件的概念 1 中间件是一个用来处理Django的请求和响应的框架级别的钩子。也就是在请求与响应的时候,可以做一些额外的控制操作; 2 它是一个轻量、低级别的插件系统,用于在全局范围内改变Django的输入和输出。 3 每个中间件组件都负责做一些特定的功能。 4 5 但是由于其影响的是全局,所以需要谨慎使用,使用不当会影响性能。 6 7 简单说中间件是帮助我们在...
阅读全文
摘要:一、装饰器概述 python的装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。 简单的说装饰器就是一个用来返回函数的函数。 它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解
阅读全文
摘要:一、cookie1、cookie概述Cookie的由来大家都知道HTTP协议是无状态的。无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的请求响应情况。一句有意思的话来描述就是人生只如初见,对服务器来说,每次的请求都是全新的。状态可以理解为客户端和服务器在某次会话中产生的数据,那无状态的就以为这些数据不...
阅读全文
摘要:1、form组件概述在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。Django form组件就实现了上面所述的功能。总结一下,其实form组件的主要功能如下: ...
阅读全文