04 2020 档案
摘要:数据库 数据库的本质 """ 本质其实就是一款基于网络通信的应用程序 数据库就是个服务端(mysqld),我们用的是客户端(mysql)。 对数据的操作统一用mysql,然后,对数据进行增删查改。统一对服务器的服务端进行SQL语句的操作。 数据库软件: 关系型数据库 MySQL、oracle、db2
阅读全文
摘要:进程池线程池 """ 硬件的发展肯定是赶不上软件的开发速度的 思考我们以前借助于开设进程和线程的方式来实现TCP服务端的并发 每来一个客户端就开设一个进程或者线程 无论是开设进程还是开设线程其实都需要消耗一定的资源 我们应该在保证计算机硬件安全的情况下,最大限度的利用计算机 池的概念 它的出现是为了
阅读全文
摘要:GIL全局解释器锁 """ 1.GIL是CPython解释器的特点 不是python的特点!!! 2.GIL本质也是一把互斥锁 但是它是解释器级别的锁 3.它的存在是因为CPython解释器内存管理不是线程安全的 垃圾回收机制 引用计数 标记清除 分代回收 4.也就以为着GIL的存在导致了用一个进程
阅读全文
摘要:首先,开启新的线程,是不会新开辟内存空间的,即,子线程和主线程 都在同一个进程里,也就是主进程里,用os.pid(),os.ppid() 服务器: 方式一:Thread实例化 服务端: 方式二:自定义子类,继承Thread,__init__可以添加新的属性,要在run里,实现你的一些函数,把参数传进
阅读全文
摘要:同步锁: multiprocessing 的 Lock() 不加锁:未加锁部分并发执行,加锁部分串行执行,速度慢,数据安全 GIL锁: 线程执行速度快,直接创建, 进程要先创建进程,申请空间。 线程 主程序 进程 垃圾回收 是 线程,干活的。进程是一块内存空间,空间里有主线程,和其它线程。 http
阅读全文
摘要:今日内容概要 开启线程的两种方式 TCP服务端实现并发的效果 线程对象的join方法 线程间数据共享 线程对象属性及其他方法 守护线程 线程互斥锁 GIL全局解释器锁 多进程与多线程的实际应用场景 今日内容详细 开启线程的两种方式 TCP服务端实现并发的效果 线程对象的join方法 同一个进程下的多
阅读全文
摘要:编写cs架构的软件,实现客户端可以下载服务端的文件,如图片、视频、文本等 阿里云服务器应用 设置服务端的ip为阿里云服务器的私网ip,客户端的ip设置为阿里云服务器公网ip,端口号要一致,注意:阿里云服务器要开 放端口,安全组也要设置。就好了,,, 服务端: from socket import *
阅读全文
摘要:6.判断一个对象是否属于str类型,判断一个类是否是另外一个类的子类? 答案: - isintance, issubclass 7.定义一个老师类,定制打印对象的格式为‘<name:C_DSB age:18 sex:male>’ 答案: - .定义一个自己的open类,控制文件的读或写,在对象被删除
阅读全文
摘要:from multiprocessing import Process, JoinableQueue import time def shop(q, shopping): for i in range(10): q.put('包子') print('%s 好了 %s' % (shopping, i)
阅读全文
摘要:操作系统的历史发展 博客:https://www.cnblogs.com/Dominic Ji/articles/10929381.html 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽
阅读全文
摘要:* 简述操作系统发展史 手工操作——穿孔卡片、联机批处理系统、脱机批处理系统、多道批处理系统、分时系统、实时系统。 * 简述进程发展史及算法演变 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。 先来
阅读全文
摘要:单例模式:将一个类实例化,产生相同的对象,作用相同的对象,占用空间小。 模块方法的模块:
阅读全文
摘要:socketserver 模块: 首先,要自定义类继承socketserver.BaseRequestHandler 这个类中的属性: self.request : 连接对象 self.client_address : 客户端地址 创建好类之后, server = socketserver.Thre
阅读全文
摘要:TCP协议是可靠协议,流式协议。 所以,一次接收不完全的数据会留在缓存里继续等待接收,而且,流式协议不知道何时数据传输完成。 这就导致了粘包问题。 利用 协议 ,规定 报头 ,从 报头 得到 数据的总大小,然后,循环取值,直到接收到 总大小的数据,结束 循环,进行下一次的发送。 这样就能够知道,一段
阅读全文
摘要:TCP协议存在粘包现象,UDP协议不存在粘包现象。 粘包:只有TCP有粘包现象,UDP没有 接收数据过大,不能一次收完,其余数据还在缓存里,(从服务端缓存流到客户端缓存),网速快,瞬间从服务端到了客户端,如果不快可能没有1024字节。第二次,继续收上一次数据的后续1024,因为上次的数据过大,没接收
阅读全文
摘要:socket 首先,是干什么的 socket 是应用层与tcp/ip等层的中间层,它是一个抽象层,将各种协议封装起来,用socket调用就好了。 import socket 在应用层中,使用这个socket实现数据的传输。 应用: TCP: 服务端: 客户端: 注意: tcp是基于链接的,必须先启动
阅读全文
摘要:osi七层协议 互联网协议的功能:定义计算机如何接入internet,以及接入internet的计算机通信的标准。 应用层 自定义协议 1 两大组成部分,头部 + 数据 头部,放对数据的描述信息,目标地址,数据类型,长度等 数据,想要发的数据 2 头部长度必须一致 表示层 会话层 传输层 传输层:T
阅读全文
摘要:``` 异常处理 Traceback,异常的种类,异常的提示信息 增强程序的健壮性,程序运行中出错,也不会崩溃 捕捉异常并处理,可以将出错信息记录到日志 产生错误的条件无法预知: try: 代码块 except 异常类型 as 名字: 异常处理 except ...: ... else: 代码块没出现异常执行 finally: 不管有没有异常发生,都运行 try except try finall
阅读全文
摘要:``` 元类的定义 实例化一个类,产生对象。 在python中,类是怎么产生的? 实例化一个元类,得到一个类。 元类 实例化 >类(People) 实例化 >对象(obj) python强调一切皆对象。元类就是最初的类,它可以产生别的类,别的类在产生对象。 调用类的__class__方法:得到元类type 属性的查找顺序: 属性查找:对象本身,类,父类,,,父类不是元类 以对象为起始找,找不到元类
阅读全文
摘要:``` 反射: python是动态语言,而反射(reflection)机制被视为动态语言的关键。 反射机制指的是在程序的运行状态中 对于任意一个类,都可以知道这个类的所有属性和方法; 对于任意一个对象,都能够调用他的任意方法和属性。 这种动态获取程序信息以及动态调用对象的功能称为反射机制。 dir:查看某个对象下,可以调用的属性——字符串 dir(obj) 内置函数: hasattr() hasa
阅读全文
摘要:``` 内置函数: 内置函数就是python自带的函数,底层的函数。 内置方法:__name__ 格式的方法 特点:在某种情况下自动触发执行 定制化类和对象 len :__len__ 'abc':__str__ :打印时,触发 return 值,被打印 __init__ :实例化对象时,使用 __del__ :删除,清理对象时,触发,程序结束,也是这个情况,将对象清理了 当程序调用了系统的资源,可
阅读全文
摘要:三层架构:编程的规范 面向过程编程 和 面向对象编程
阅读全文
摘要:月考题: 20.语句sorted([1, 2, 3], reverse=True) == reversed([1, 2, 3])执行结果为_________?(1分) False print(sorted([1, 2, 3], reverse=True)) print(reversed([1, 2,
阅读全文
摘要:```面向对象封装继承多态程序 = 数据 + 功能模块可以存放 数据 和 功能函数是存放 功能 的,不调用不执行。列表,存储 数据 和 方法(函数名),把 数据 和 功能 整合起来,分为一类的编程思想就叫面向对象编程类和对象类:class先定义类,再调用类产生对象定义:定义阶段就运行,产生类的名称空间__dict__:查看名称空间class Student: 驼峰体 ... 数据属性和方...
阅读全文
摘要:三层架构:用户视图层、逻辑接口层、数据处理层。 一个功能,分成三层架构写,增加程序的可扩展性。 三层是互有联系的,从用户视图层开始写,涉及到那一层就到下一层去写,然后return 返回值,再写回来。 最关键的还是,要知道三层中的各个的职责是什么,那些代码写在哪一层,参数要传什么,返回值需要返回什么有
阅读全文
摘要:项目的说明书 项目:ATM + 购物车 项目需求: 1.额度15000或自定义 注册功能 2.实现购物商城,买东西加入购物车,调用信用卡接口结账 购物功能、支付功能 3.可以提现,手续费5% 提现功能 4.支持多账户登录 登录功能 5.支持账户间转账 转账功能 6.记录日常消费 记录流水功能 7.提
阅读全文
摘要:``` import re re.findall('\w','abc123_8()-=') \w:字母数字下划线 \W:非数字字母下划线 \s:空白字符 \S:非空字符 \d:整数数字 \D:非整数数字 \A:开头:\Aalex,匹配开头,第一个字母开始对alex, 'alex':匹配alex sb\Z:结尾的sb 不能匹配多行的 ^alex:以alex开头 alex$:以alex结尾 重复匹配:
阅读全文
摘要:CV工程师 日志的配置字典等,知识,,, 1、日志级别与配置 2、日志配置字典 3、使用
阅读全文