C++

Django之cookie+session

HTTP协议是短连接、且状态的,所以在客户端向服务端发起请求后,服务端在响应头加入cokie响应给浏览器,以此记录客户端状态;cook是来自服务端,保存在浏览器的键值对,主要应用于用户登录;cookie如此重要!!那么如何在Django应用cookie呢?cookie又有什么缺陷呢?参数介绍1、max_age=1:co...
代码星球·2020-09-25

django中的objects.get和objects.filter方法的区别

为了说明它们两者的区别定义2个modelsclassStudent(models.Model):name=models.CharField('姓名',max_length=20,default='')age=models.CharField('年龄',max_length=20,default='')classBook...

Django之CSRF

网页向后端传送数据的时候有两种方式,get和post。通过设置form中的method来达到是否采用get或者是post<formaction="/show_all/"method="POST">但是django中使用post的话会遇到如下的错误这个错误的意思是csrf校验失败,request请求被丢弃掉。...
代码星球·2020-09-25

Django之include本质

一、URLname详解fromdjango.conf.urlsimporturlfromdjango.contribimportadminfromcalcimportviewsascalc_viewsurlpatterns=[url(r'^add/$',calc_views.add,name='add'),url(r'...
代码星球·2020-09-25

django中的FBV和CBV

 一、FBVFBV(functionbaseviews) 就是在视图里使用函数处理请求。看代码:urls.py12345678from django.conf.urls import url,include#fromdjango.contribimportadminfr...
代码星球·2020-09-25

实现socket并发的几种方法

#使用多进程实现socket聊天并发-server#服务端importsocketfrommultiprocessingimportProcessdefserver(conn,addr):whileTrue:try:msg=conn.recv(1024)conn.send(msg.upper())exceptExcep...

multiprocessing join与lock区别

加锁    join方法  join方法会造成阻塞,在上一个进程完成之前不会运行join()后面的代码lock 仍会执行之后的代码,遇到创建进程,会发向操作系统发出指令,但不会执行,等到上锁的进程结束之后,立即执行. ...

Socketserver详解

Python3中的SocketServer  socket并不能多并发,只能支持一个用户,socketserver简化了编写网络服务程序的任务,socketserver是socket的在封装。socketserver在python2中为SocketServer,在python3种取消了首字母大写,改名为socketse...
代码星球·2020-09-25

socketserver源码剖析

Python为网络编程提高了更高级的封装。SocketServer.py提供了不少网络服务的类。它们的设计很优雅。Python把网络服务抽象成两个主要的类,一个是Server类,用于处理连接相关的网络操作,另外一个则是RequestHandler类,用于处理数据相关的操作。并且提供两个MixIn类,用于扩展Server...
代码星球·2020-09-25

socket中send和recv函数

Socket一次Recv接受的字节有限制么?从套接字接收数据。返回值是表示接收数据的字符串。一次接收的最大数据量由bufsize指定。它默认为零。注意为了最好地匹配硬件和网络现实,bufsize的值应该是2的相对较小的幂,例如4096。经实际测试recv不同端口接收情况不同,当前我们默认为1024字节大多数情况下为14...
代码星球·2020-09-25

TCP缓冲区大小及限制

这个问题在前面有的部分已经涉及,这里在重新总结下。主要参考UNIX网络编程。(1)数据报大小IPv4的数据报最大大小是65535字节,包括IPv4首部。因为首部中说明大小的字段为16位。IPv6的数据报最大大小是65575字节,包括40字节的IPv6首部。同样是展16位,但是IPv6首部大小不算在里面,所以总大小比IP...
代码星球·2020-09-25

网络编程-TCP/IP各层介绍(5层模型讲解)

1、TCP/IP五层协议讲解物理层--数据链路层--网络层--传输层--应用层我们将应用层,表示层,会话层并作应用层,从tcp/ip五层协议的角度来阐述每层的由来与功能,搞清楚了每层的主要协议就理解了整个互联网通信的原理。首先,用户感知到的只是最上面一层应用层,自上而下每层都依赖于下一层,所以我们从最下一层开始切入,比...

TCP、UDP数据包大小的限制

1、概述首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层。  其中以太网(Ethernet)的数据帧在链路层  IP包在网络层  TCP或UDP包在传输层  TCP或UDP中的数据(Data)在应用层  它们的关系是数据帧{IP包{TCP或UDP包{Data}}}不同的协议层对数据包有不同的称谓,在...

Docker Compose 部署Nginx服务实现负载均衡

Compose简介:Compose是Docker容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器,使用DockerCompose,不再需要使用shell脚本来启动容器。Compose通过一个配置文件来管理多个Docker容器,在配置文件中,所有的容器通过services来定义,然后使用docker-...

Dockerfile 指令 VOLUME 介绍

在介绍VOLUME指令之前,我们来看下如下场景需求:1)容器是基于镜像创建的,最后的容器文件系统包括镜像的只读层+可写层,容器中的进程操作的数据持久化都是保存在容器的可写层上。一旦容器删除后,这些数据就没了,除非我们人工备份下来(或者基于容器创建新的镜像)。能否可以让容器进程持久化的数据保存在主机上呢?这样即使容器删除...