09 2018 档案

摘要:web 的组成 浏览器 服务器:代替用户向服务器发送请求 通信协议:规范数据传输及打包方式(http,https) 服务器: 1 作用: 1 接收用户请求并响应 2 存储数据 3 具有安全性功能 2 产品: 1 Tomcat 2 Aapache 3 Nginx... 阅读全文
posted @ 2018-09-30 17:51 Sky__liu 阅读(269) 评论(0) 推荐(0)
摘要:后台 后端 服务端 功能:逻辑处理 算法处理 磁盘交互(数据库 静态文件处理) 要求:健壮性,安全性 并发性能和处理速度 架构合理便于维护扩展 网站后端 httpserver + WebFrame 第三版 功能: httpserver: 获取http请求 解析http请求 将请求发送给webFram 阅读全文
posted @ 2018-09-29 12:47 Sky__liu 阅读(175) 评论(0) 推荐(0)
摘要:什么是项目:有一定的完整性功能的代码集合 软件项目开发流程 需要分析--》 概要设计--》项目规划--》详细设计--》编码测试--》项目功能测试--》高度完善 --》项目发布--》后期维护 需要分析: 确定用户的真实项目需求 1 确定用户的真实需求,项目的基本功能 2 确定项目的整体难度和可行性分析 阅读全文
posted @ 2018-09-27 17:34 Sky__liu 阅读(952) 评论(0) 推荐(0)
摘要:代码协同管理工具 svn 代码管理工具 *防止代码丢失,做备份 * 代码版本的管理,可以进行多个节点的备份,在多个版本之间跳跃 * 可以方便的将代码在 多人之间进行共享传输 * 多人开发时有各种模式可以方便代码管理 git是一个开源的分布式版本控制系统,可用于高效的管理大小项目(05年) 分布式和集 阅读全文
posted @ 2018-09-26 19:06 Sky__liu 阅读(254) 评论(0) 推荐(0)
摘要:数据存储阶段 文件管理阶段(.txt .doc .xls) 优点: 1 使用简单,展现直观 2 可以长期保存数据 3 可存储数据量比较大 缺点: 1 查找不方便, 2 容易造成数据冗余, 3 格式不规范 数据库管理阶段 优点: 1 将数据结构化存储,降低冗余 2 提高了增删改查效率 3 方便扩展,方 阅读全文
posted @ 2018-09-18 18:32 Sky__liu 阅读(620) 评论(0) 推荐(0)
摘要:优点: 1 消耗资源少 2 无需切换开销 3 无需同步互斥 4 IO并发性好 缺点: 1 无法利用计算机多核 yilde --> 协程实现的基本关键字 有两个 第三库可以实现协程 1 greenlet g = greenlet.greenlet() g.switch() 选择要执行的协程事件 imp 阅读全文
posted @ 2018-09-17 20:25 Sky__liu 阅读(330) 评论(0) 推荐(0)
摘要:HTTP server 2.0 1 接收客户请求 2 解析客户端请求 3 组合数据,形成HTTP response 4 将数据发送给客户端 升级 : 1 多线程接收客户端请求 2 基本的请求解析,根据请求返回数据(相应内容) 3 除了可以请求静态网页,也可以请求简单的数据 4 将功能封装在一个类中 阅读全文
posted @ 2018-09-17 16:25 Sky__liu 阅读(156) 评论(0) 推荐(0)
摘要:1 缓存内容使用 django支持多种不同的cache backend,默认使用的是localmem,django-redis 是一个使django支持 redis cache的功能组件。 安装 pip install django-redis 注意,本人电脑在UBUNTU16.04下安装失败: 原 阅读全文
posted @ 2018-09-17 13:52 Sky__liu 阅读(268) 评论(0) 推荐(0)
摘要:数据存储的瓶颈:(mysql ==>500万数据就已经很慢了) 1 数据量的总大小,一个机器放不下时 2 数据 的索引,一个机器的内存放不下时 3 访问量(读写混合),一个实例不能承受 Redis的优点:支持多种数据结构,如 string(字符串)、 list(双向链表)、dict(hash表)、s 阅读全文
posted @ 2018-09-15 17:49 Sky__liu 阅读(347) 评论(0) 推荐(0)
摘要:硬件服务器:主机 集群 厂商 :IBM HP 联想 浪潮 软件服务器 :编写的服务端应用程序,在硬件服务器上运行,一般依托于操作系统,给用户提供一套完整的服务 httpserver --> 处理http 请求 webserver -->网站的后端应用服务器程序 邮箱服务器 -->邮件处理 ftp 文 阅读全文
posted @ 2018-09-14 12:47 Sky__liu 阅读(284) 评论(0) 推荐(0)
摘要:1 两者都是多任务编程方式,都能够使用计算机的多核资源 2 进程的创建删除消耗的计算机资源比线程要多 3 进程空间独立,数据相互不干扰,有专门的IPC(进程间通信),线程使用全局变量进行通信 4 一个进程可以创建多个线程分支,两者之间存在包含关系 5 多个线程公用进程的资源,在资源操作时往往需要同步 阅读全文
posted @ 2018-09-14 10:11 Sky__liu 阅读(135) 评论(0) 推荐(0)
摘要:from threading import Thread from time import ctime,sleep import threading def platy(song,sec): for i in range(2): print('Playting %s:%s,%s'%(song,cti 阅读全文
posted @ 2018-09-13 17:55 Sky__liu 阅读(158) 评论(0) 推荐(0)
摘要:转载:https://www.cnblogs.com/xiaobeibei26/p/6484849.html Python多进程之multiprocessing模块和进程池的实现 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 阅读全文
posted @ 2018-09-11 16:58 Sky__liu 阅读(161) 评论(0) 推荐(0)
摘要:父进程先于子进程退出,此时子进程就称为孤儿进程。 * 孤儿进程会被操作系统指定的进程收养,系统进程就成为孤儿进程的新的父进程 僵尸进程 :定义 子进程先于父进程退出,但是父进程没有处理子进程的退出状态,此时子进程就会成为僵尸进程 * 僵尸进程会存留少量PCB信息在内存中,大量的僵尸进程会消耗系统资源 阅读全文
posted @ 2018-09-10 17:49 Sky__liu 阅读(364) 评论(0) 推荐(0)
摘要:多任务编程 意义 : 充分利用计算机的资源提高程序的运行效率 定义 : 通过应用程序利用计算机的多个核心达到同时执行多个任务的目的,一次提高计算机运行效率。实施方案 : 多进程 多线程 并行 : 多个计算机核心在同时处理多个任务,这时多个任务间是并行关系。 并发 : 同时处理多个任务,内核在多个任务间不断的切换,达到好像都在处理运行的效果。但实际一个时间点内核只能处... 阅读全文
posted @ 2018-09-10 15:11 Sky__liu 阅读(330) 评论(0) 推荐(0)
摘要:本地套接字简单应用场景 一 #服务端--简单 import socket import os a='sock_file' if os.path.exists(a): os.remove(a) s=socket.socket(socket.AF_UNIX,socket.SOCK_STREAM) s.bind(a) s.listen(3) while True: c,addr =... 阅读全文
posted @ 2018-09-10 11:02 Sky__liu 阅读(1358) 评论(0) 推荐(0)
摘要:os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。 os.getcwd:得到当前工作目录,即当前python脚本工作的目录路径。 os.getenv()和os.putenv:分别用来读取和设置环境变量 os.listdir():返回指定目录下的所有文件和目录名 os.re... 阅读全文
posted @ 2018-09-10 10:17 Sky__liu 阅读(1482) 评论(0) 推荐(0)
摘要:在安装完成 alpay 之后,在调用的同时可能会出现各种未知错误,, linux下 碰到错误 1 : 调用import alipay模块之后,弹出一大堆错误,,删除模块,重新安装, 【原因猜测,在python2.7 下安装了alipay的各种依赖环境,使得3.0以上版本不兼容,导致错误】 【做法: 删除原有模块,访问网站(https:... 阅读全文
posted @ 2018-09-08 16:24 Sky__liu 阅读(564) 评论(0) 推荐(0)
摘要:import socket,select s=socket.socket() s.setblocking(False) s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) s.bind(('127.0.0.1',6666)) s.listen( 阅读全文
posted @ 2018-09-08 12:51 Sky__liu 阅读(266) 评论(0) 推荐(0)
摘要:1 在调用 epoll_create 之后,内核就已经创建了一个 eventpoll 红黑树结构体,一个 list 双向链表,在内核态准备接受存储需要监控的 fd。 2 在调用 epoll_ctr 之后,直接向内核态的 eventpoll 进行 add/mod/del 对应的 fd,对于新添加进来的 阅读全文
posted @ 2018-09-07 18:50 Sky__liu 阅读(436) 评论(0) 推荐(0)
摘要:import socket,threading #创建套接字 s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) # 设置套接字可以接收广播 s.setsockopt(socket.SOL_SOCKET,socket.SO_BROADCAST,1) s 阅读全文
posted @ 2018-09-06 20:58 Sky__liu 阅读(580) 评论(0) 推荐(0)
摘要:s.getsockopt(level,option) 功能 : 获取套接字选项值 参数 : level 返回值 :选项值 * 如果要设置套接字选项,最好在创建套接字之后立即设置 socket函数 描述 服务端socket函数 s.bind(address) 将套接字绑定到地址, 在AF_INET下, 阅读全文
posted @ 2018-09-06 15:09 Sky__liu 阅读(845) 评论(0) 推荐(0)
摘要:1 JS 概述 1 解释型 2 弱类型 3 区分大小写 4 忽略换行,(分号,代表语句结束)2 JS分类 1 JS语言核心 2 客户端JS3 JS 注释 1 单行// 2 多行 /* */时间日期类型 var now =new Date() //现行时间 alert(now) // Mon Nov 06 2016 6:66:66 GMT+0800 alert(now.... 阅读全文
posted @ 2018-09-05 19:41 Sky__liu 阅读(159) 评论(0) 推荐(0)
摘要:系统模块 sys 运行时系统相关的信息 sys模块的数据 sys模块的函数 阅读全文
posted @ 2018-09-05 18:46 Sky__liu 阅读(1119) 评论(0) 推荐(0)
摘要:文件 mode 模式字符的含义 缺省模式是 'rt' 'w+b' 可以实现二进制随机读写,当打开文件时,文件内容将被清零 'r+b' 以二进制读和更新模式打开文件,打开文件时不会清空文件内容 'r+' 以文本模式读和更新模式打开文件,打开文件时不会清空文件内容 python 文件常用方法: 阅读全文
posted @ 2018-09-05 18:45 Sky__liu 阅读(5744) 评论(0) 推荐(0)
摘要:随机模块 random 作用: 用法示意: import random as R 阅读全文
posted @ 2018-09-05 18:44 Sky__liu 阅读(1015) 评论(0) 推荐(0)
摘要:数学模块 math 模块名: math 注: linux下为内建模块 Mac OS下为标准库模块 linux下为内建模块 Mac OS下为标准库模块 数学模块用法: import math # 或 from math import * 阅读全文
posted @ 2018-09-05 18:43 Sky__liu 阅读(2112) 评论(0) 推荐(0)
摘要:时间模块 time 此模块提供了时间相关的函数,且一直可用 时间简介 公元纪年是从公元 0000年1月1日0时开始的 计算机元年是从1970年1月1日0时开始的,此时时间为0,之后每过一秒时间+1 UTC 时间 (Coordinated Universal Time) 是从Greenwich时间开始 阅读全文
posted @ 2018-09-05 18:41 Sky__liu 阅读(747) 评论(0) 推荐(0)
摘要:方法说明 S.isdigit() 判断字符串中的字符是否全为数字 S.isalpha() 判断字符串是否全为英文字母 S.islower() 判断字符串所有字符是否全为小写英文字母 S.isupper() 判断字符串所有字符是否全为大写英文字母 S.isspace() 判断字符串是否全为空白字符 S 阅读全文
posted @ 2018-09-05 18:39 Sky__liu 阅读(451) 评论(0) 推荐(0)
摘要:方法意义 S.add(e) 在集合中添加一个新的元素e;如果元素已经存在,则不添加 S.remove(e) 从集合中删除一个元素,如果元素不存在于集合中,则会产生一个KeyError错误 S.discard(e) 从集合S中移除一个元素e,在元素e不存在时什么都不做; S.clear() 清空集合内 阅读全文
posted @ 2018-09-05 18:38 Sky__liu 阅读(419) 评论(0) 推荐(0)
摘要:>>, << bin(11)<<2 = 101100【增加两个0】 bin(14)>>2 = 11 【丢掉两个位】 阅读全文
posted @ 2018-09-05 18:36 Sky__liu 阅读(1351) 评论(0) 推荐(0)
摘要:方法意义 L.index(v [, begin[, end]]) 返回对应元素的索引下标, begin为开始索引,end为结束索引,当 value 不存在时触发ValueError错误 L.insert(index, obj) 将某个元素插放到列表中指定的位置 L.count(x) 返回列表中元素的 阅读全文
posted @ 2018-09-05 18:34 Sky__liu 阅读(612) 评论(0) 推荐(0)
摘要:函数说明 D代表字典对象 D.clear() 清空字典 D.pop(key) 移除键,同时返回此键所对应的值 D.copy() 返回字典D的副本,只复制一层(浅拷贝) D.update(D2) 将字典 D2 合并到D中,如果键相同,则此键的值取D2的值作为新值 D.get(key, default) 阅读全文
posted @ 2018-09-05 18:33 Sky__liu 阅读(276) 评论(0) 推荐(0)
摘要:import socket,selectors,time epoll=selectors.DefaultSelector() host='127.0.0.1' port=8889 s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.bind((h 阅读全文
posted @ 2018-09-05 11:56 Sky__liu 阅读(406) 评论(0) 推荐(0)
摘要:MD5 加密 from hashlib import md5 a=md5() # 实例化 a.update(b_2.encode('utf8'))# 开始加密 b_2_1=a.hexdigest()#获得加密之后的文本 阅读全文
posted @ 2018-09-04 17:42 Sky__liu
摘要:RSA加密 熟悉的东西 public key Encrypt (函数) 而且 每次刷新都会变化() 一般 128 位,也有 256位的 阅读全文
posted @ 2018-09-03 20:44 Sky__liu
只有注册用户登录后才能阅读该文。
posted @ 2018-09-03 17:21 Sky__liu
摘要:在JS 做轮播图的过程中,至少会有2个BUG需要考虑,, 1 自动轮播,走到2的时候,然后手动调到4的位置的时候,,再次会走3,这里需要特别注意 2 阅读全文
posted @ 2018-09-01 13:16 Sky__liu