- 博客(40)
- 收藏
- 关注
原创 Linux的基础知识及命令
文章目录一、Linux简介操作系统概述Linux简介UnixMinixLinuxLinux版本Linux内核版本Linux发行版本二、Linux文件结构与用户Linux的目录及其存放文件内容Linux用户相关操作添加用户查询用户信息操作用户组三、Linux常用命令软件安装命令的帮助文件与目录的命令查看文件信息:ls操作目录操作文件搜索查找修改文件权限打包与压缩:关机与重启查看服务使用ssh与scp四、使用vim基本介绍基本操作命令模式输入模式末行模式五、Linux的磁盘管理查看磁盘的挂载情况挂载新的磁盘查看
2021-03-05 17:32:52 936
原创 什么是跨域及如何实现跨域
文章目录什么是CORS同源策略 Same-origin Policy:实现CORSCORS涉及三种请求Simple Request的跨域Preflighted Request的跨域在nginx中配置CORS什么是CORSCORS,全称Cross-Origin Resource Sharing 是一种允许当前域(domain)的资源(比如html/js/web service)被其他域(domain)的脚本请求访问的机制通常由于同域安全策略(the same-origin security poli
2021-02-03 19:01:07 381
原创 TensorFlow Serving的可配置参数及使用docker-compose启动服务
TensorFlow Serving是一个针对机器学习模型的灵活,高性能的服务系统,专为生产环境而设计。使用TensorFlow Serving可以轻松部署新算法和实验,同时保持相同的服务器体系结构和API。这里不对此过多介绍,具体可以查看官方文档:https://www.tensorflow.org/tfx/guide/serving工作的时候部署一个人脸识别服务上线,模型训练好之后使用TensorFlow Serving部署Flags: --port=8500
2021-02-01 09:48:17 1044
原创 base64、PIL和cv2之间的图片格式转换
base64的读取与保存import base64def get_base64_image(path): """open image and convert to base64""" with open(path, "rb") as f: image_base64 = base64.b64encode(f.read()).decode() return image_base64def save_base_64_image(path, image_base
2020-09-30 11:05:19 813
原创 Dask/skein报错:Handshake failed with fatal error SSL_ERROR_SSL
问题简述我使用了Dask+CDH集群搭建了一个分布式的服务,今天服务挂了重启时却发现重启不起来了,具体表现为如下情况E0701 02:17:09.031541082 14823 ssl_transport_security.cc:1229] Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED.Dask-yarn
2020-07-02 14:08:36 1352
原创 三、Tornado的Cookie与安全
文章目录Cookie设置cookie通过set_header设置cookie获取cookie清除cookie安全Cookie设置与获取安全cookieCookie设置cookieRequestHandler提供了操作cookie的方法set_cookie(name, value, domain=None, expires=None, path='/', expires_days=None...
2019-07-21 12:31:23 792
原创 二、Tornado的输入与输出
ApplicationApplication 是生成Tornado实例的类,它的构造函数接收很多关于tornado应用的配置参数,不仅仅是之前的路由映射列表,包括生产模式、是否自动重启等settingsdebug设置tornado是否工作在调试模式,默认为False即工作在生产模式自动重启tornado应用会监控我们的源代码文件,当有改动保存后便会重启程序这一特性也可单独通过au...
2019-07-20 15:11:26 774
原创 一、Tornado基本结构
C10K问题C10K—— Concurrently handling ten thousand connections,即并发10000个连接。对于单台服务器而言,根本无法承担,而采用多台服务器分布式又意味着高昂的成本Tonado简介Tornado是2009年9月10日发布的一个用Python语言写成的Web服务器兼Web应用框架Tornado在设计之初就考虑到了性能因素,旨在解...
2019-07-18 00:01:46 1038
转载 HTTP请求头对照表
HTTP请求头:Header 解释 示例 Accept 指定客户端能够接收的内容类型 Accept: text/plain, text/html Accept-Charset 浏览器可以接受的字符编码集。 Accept-Charset: iso-8859-5 Accept-Encoding 指定浏览器可以支持的web服务器返回内容压缩编码类...
2019-06-17 12:51:53 651
原创 如何理解RESTful API
一、基本概念1.1 什么是RESTREST全称是Representational State Transfer,中文意思是表征性状态转移它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适...
2019-06-15 15:20:14 324
原创 闭包的延迟加载
前言闭包的延迟特性常常会在面试中考到,我之前面试也遇到过,虽然早就有所了解,但总是记不住。这里再写出来一下让自己长长记性闭包的延迟简而言之就是闭包返回的内层函数不会立即执行, 而是在使用时候才执行基于这个特性,内层函数如果使用了循环,同时使用到了循环计数值,则因其延迟特性,当使用到闭包时循环已经结束,所有的循环都已经结束,得到意料之外的结果计算函数的执行结果case1def func...
2019-06-15 10:36:40 463
原创 Python中大文件的读取
前言面试中可能会有面试官问这么一个问题:“当你的内存只有4G时,怎么去读取大于4G的文件?”限制读取文件大小通常的方法就是将这个大文件分成不同的部分来读取:file.readlines([sizeint])# 读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比 sizeint 较大, 因为需要填充缓冲区。def read_f...
2019-06-14 15:14:30 252
原创 Flask、Django、Tornado三大框架的对比
前言之前面试的时候我提到过自己有Flask、Django、Tornado框架的使用经验,于是面试官很自然就问到了这三大框架的区别、各自的特点这样的问题。回答了几次总觉得自己回答得不是太好,有些点没有回答到,亦或是逻辑有点混乱,于是想要归纳总结一下。框架的特点FlaskFlask诞生于2010年,是Armin ronacher用Python语言基于Werkzeug工具箱编写的轻量级Web开发...
2019-06-12 11:45:17 4020
原创 用函数与类实现Python的函数装饰器与类装饰器
引言装饰器是每一个使用Python的人都会接触到的一种增强函数功能的方式,也是面试官经常会问到的知识点,这里通过一个函数运行时间的装饰器,举例说明常见的四种装饰器实现方法装饰器的概念装饰器是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic装饰器实际上也是一个函数 ,这个函数以闭包的形式定义,而我们知道在Python中万物皆对象,即函数也是一个对象,而且函数对...
2019-06-01 00:46:17 1093 1
原创 Liunx vi和vim编辑器
vi编辑器vi编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,vi是效率很高的文本编辑器。尽管在Linux上也有很多图形界面的编辑器可用,但vi在系统和服务器管理中的功能是那些图形编辑器所无法比拟的。特点:vi在Linux上可以执行输出/删除/查找/替换/块操作等众多的文本操作;vi没有格式/段落/字体等,只是一个文本编辑器,有着繁多的命...
2019-05-28 18:00:25 200
原创 面试题:基于Python的青蛙跳台阶两种解法
问题一只青蛙要跳上 n 层高的台阶,一次能跳一级,也可以跳两级,请问这只青蛙有多少种跳上这个 n 层高台阶的方法?递归设青蛙跳上 n 级台阶有 f(n)种方法,把这 n 种方法分为两大类,第一种最后一次跳了一级台阶,这 类方法共有 f(n-1)种,第二种最后一次跳了两级台阶,这种方法共有 f(n-2)种,则得出递推公式 f(n)=f(n-1)+f(n-2),显然,f(1)=1,f(2)=2。...
2019-05-28 14:57:55 2224 1
原创 基于Python实现单向链表的反转
循环方法循环方法的思想是建立三个变量,分别指向当前结点,当前结点的前一个结点,新的head结点,从head开始,每次循环将相邻两个结点的方向反转。当整个链表循环遍历过一遍之后,链表的方向就被反转过来了。class ListNode: def __init__(self, x): self.val = x self.next = Nonedef...
2019-05-28 12:29:38 1215
转载 深度优先搜索和广度优先搜索
文章目录深度优先搜索的图文介绍1. 深度优先搜索介绍2. 深度优先搜索图解2.1 无向图的深度优先搜索2.2 有向图的深度优先搜索广度优先搜索的图文介绍1. 广度优先搜索介绍2. 广度优先搜索图解2.1 无向图的广度优先搜索2.2 有向图的广度优先搜索深度优先搜索的图文介绍1. 深度优先搜索介绍图的深度优先搜索(Depth First Search),和树的先序遍历比较类似。它的思想: ...
2019-05-28 00:42:02 573
转载 一文说尽HTTP和HTTPS协议
大纲一、前言: 先来观察这两张图,第一张访问域名http://www.12306.cn,谷歌浏览器提示不安全链接,第二张是https://kyfw.12306.cn/otn/regist/init,浏览器显示安全,为什么会这样子呢?2017年1月发布的Chrome 56浏览器开始把收集密码或信用卡数据的HTTP页面标记为“不安全”,若...
2019-05-24 23:34:23 222
原创 简析孤儿进程与僵尸进程
基本概念:在unix/linux中,正常情况下,子进程是通过父进程创建的子进程的结束和父进程的运行是一个异步过程, 即父进程永远无法预测子进程到底什么时候结束。当进程完成它的工作之后,它的父进程需要调用wait()或者waitpid()系统调用取得子进程的终止状态孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程孤儿进程将被init进程(进程号...
2019-05-24 17:18:50 202
原创 描述用浏览器访问 www.baidu.com 的过程
浏览器访问网站的简单过程浏览器向DNS服务器发出解析域名的请求;DNS服务器将"www.baidu.com"域名解析为对应的IP地址,并返回给浏览器;浏览器与百度服务器进行三次握手,建立TCP连接(默认端口为80);浏览器发出HTTP请求报文;服务器回复HTTP响应报文;浏览器解析响应报文,渲染HTML内容,并显示在页面上;收发报文结束,释放TCP连接,执行四次挥手。IP地址...
2019-05-24 16:55:07 11064
转载 简述Python垃圾回收机制
引言许多高级语言都具有自己的垃圾回收机制,以管理计算机内存,Python也不例外。对于垃圾回收机制的了解程度,成了开发人员是否真正了解Python的检验手段,在面试的时候许多面试官也喜欢以此作为题目考察面试者Garbage collection(GC)概述现在的高级语言如java,c#等,都采用了垃圾回收机制,而不再是c,c++里用户自己管理维护内存的方式。自己管理内存极其自由,可...
2019-05-24 10:05:24 2144
原创 使用split命令将大文件分割成小文件
将一个大文件分成若干个小文件方法例如将一个Example.txt文件分成前缀为 Example_ 的小文件,后缀为系数形式,且后缀为4位数字形式先利用wc命令计算文件内容wc命令用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。wc -l Example.txt 读出 ...
2019-05-23 12:33:47 1238
原创 基于Python实现快速排序、冒泡排序、选择排序、桶排序
文章目录快速排序方法一方法二冒泡排序选择排序基于Python实现快速排序、冒泡排序、选择排序快速排序方法一代码:import randomdef quick_sort(lst): if len(lst) < 2: # 递归的基例或出口,即列表长度为1时返回自身 return lst else: pivot = lst[0...
2019-05-23 11:27:40 384
原创 杨辉三角的几种 Python 实现方法
杨辉三角的基本概念杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现特点每个数等于它上方两数之和。每行数字左右对称,由1开始逐渐变大。第n行的数字有n项。第n行的m个数可表示为 C(n-1,m-1),即为从n-1个不同元素中取m-1个元素的组合数。第n行的第m个数和第n-m+1个数相等 ,为组合数性质之一。每个数字等...
2019-05-22 18:14:41 4808
原创 Python Mac安装 mysqlclient 包报错“error: command 'clang' failed with exit status 1”解决办法
Python Mac安装 mysqlclient 包报错“error: command ‘clang’ failed with exit status 1”解决办法今天在 Mac 上安装 mysqlclient 包总是报错,面向度娘解决问题找了好久终于解决,所以把解决的方法记录下来pip安装命令pip install mysqlclient错误提示Building wheels...
2019-05-22 17:06:20 6163
原创 Redis常用操作命令
文章目录字符串类型键命令列表类型set类型zset类型(sorted set)字符串类型# 设置键值对set key value# 设置键值对及过期时间setex key value# 设置多个键值对mset key1 value1 key2 value2 ...# 给key追加值(字符串连接在一起)append key value# 获取值get key# 获...
2019-05-20 13:48:39 149
原创 Git常用命令总结
文章目录一、Git简介Git源代码管理特点二、基本操作命令三、Git操作远程仓库四、标签五、分支六、暂存修改的代码一、Git简介Git 是目前世界上最先进的分布式版本控制系统,实现了源代码的管理,可以很方便的进行多人协同开发和版本控制Git源代码管理特点Git是分布式管理.服务器和客户端都有版本控制能力,都能进行代码的提交、合并Git会在根目录下创建一个.git隐藏文件夹,作为本...
2019-05-19 18:42:32 164
原创 Python虚拟环境——virtualenv/virtualenvwrapper的使用
文章目录概述安装virtualenv/virtualenvwrapper管理虚拟环境Python的requirements文件概述当我们在实际开发中,往往涉及多个项目,而不同项目使用的 Python包的种类或版本可能不同,于是就需要将这些项目用到的包区分开来虚拟环境是Python解释器的副本,给 Python 解释器提供了独立、分离的虚拟环境,使得单个项目的运行环境与其它项目互不影响v...
2019-05-18 11:42:29 565
原创 MySQL——字段类型
引言数据库可以存储不同数据类型的数据,与此对应,需要为不同的数据类型设置与其对应的字段类型,以便于数据能够按正确的格式存储。选择合适的字段类型,能够提高数据库存取数据的效率,也能够节省数据存储空间,提高数据库可用性。MySQL 支持多种数据类型,但大致可以分为三类:数值、日期/时间和字符串(字符)类型一、数值类型类型 取值范围 大小 TINYINT ...
2019-05-17 15:18:45 307
原创 MySQL——数据库、表的基本操作
文章目录一、数据库概述1. 常用关系数据库2. 数据库操作语言3. MySQL默认数据库二、操作数据库三、操作数据表一、数据库概述数据库是在数据管理和程序开发过程中,一种非常重要的数据管理方法,通过数据库,可以非常方便的对数据进行管理操作数据库是数据的仓库,数据库按照一定的数据格式,结构来存储数据,方便数据和操作和管理。1. 常用关系数据库MySQL 中小型数据库,跨平台,开源,...
2019-05-17 14:11:29 1815 1
原创 Python 单例模式
单例的概念确保到某一个类只能创建一个实例,这个类称为单例类,单例模式是一种对象创建的模式. 单例类创建的实例对象只有一个,或者说多个对象指向同一个地址 一般使用__instance作为类属性,储存单例类是否被创建,一旦创建就改变其值,使其不再被创建 单例的单次初始化方法,同样是使用一个私有属性,保存__init__方法的使用情况,使用后就改变它的值,不再使用基本单例模式:...
2019-05-17 11:15:37 274
原创 Python random库基本使用方法
使用方法:# 导入random库import random# 随机生成[0-1)随机浮点数random.random()# 生成[a,b)之间的浮点数random.uniform(a, b)# 生成[a,b]之间的整数, 包含a、brandom.randint(a, b)# 在指定的集合[a,b)中,以 step 为基数随机取一个数random.randrange...
2019-05-14 10:57:28 908
原创 数据库的安全性与故障恢复
一、数据库的安全性数据库的安全性是指保护数据库以防止不合法使用造成的数据库泄露、更改或破坏,包含计算机系统的安全和数据库系统的安全用户标识与鉴定用户标识是让用户标识自己的身份,系统记录所有合法用户的标识,以便于在用户登录系统是对身份标识进行鉴定访问控制访问控制是按照用户身份基期所归属的某项定义组来限制用户对某些信息的访问定义用户权限:将用户权限定以后登记到数据字典中,形成授...
2019-05-02 15:40:33 684
原创 数据库设计理论
文章目录一、数据库的设计1. 基本概念2. 常用设计方法3. 数据库设计的基本步骤二、需求分析阶段1. 分析内容2. 数据字典三、概念结构设计阶段1. 特点2. 设计方法四、逻辑结构设计阶段1. 设计步骤五、物理结构设计阶段1. 选择存取方法2. 确定数据库存储结构六、实施与维护阶段一、数据库的设计1. 基本概念数据库设计是指对一个给定的应用环境,构造最右的数据库模式,建立数据库及其应用...
2019-05-02 11:27:26 1094
原创 关系数据库的三大范式
文章目录引言一、第一范式(1NF)二、第二范式(2NF)三、第三范式(3NF)引言数据库设计是指对于一个给定的应用环境,构造最右的数据库模式,建立数据库及其应用系统,使其能够有效存储数据,满足用户的需求为了实现设计的数据库能够更加合理规范、且拥有较好的性能,诞生了一系列的规范,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小目前关系数据库有六种范式:...
2019-05-01 22:52:49 476
原创 关系数据库基本概念与名词
文章目录一、关系数据库概念二、关系数据库的主要术语三、关系数据库的对象四、关系数据模型的完整性约束一、关系数据库概念关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格。关系数据模型是目前最重要的一种数据模型,它比层次模型和网状模型更加简单、清晰,并且具有严格的数据基础,因此以关系数据模型为基础建...
2019-05-01 20:16:13 2109
原创 数据库技术的发展
一、数据库的基本概念数据库是信息的集合,是收集计算机数据的仓库、容器,用户使用数据库可以对这些数据执行一系列的操作;数据库技术作为数据管理的实现技术,已经成为计算机应用技术的核心。数据库的建设规模、数据库信息量的大小和使用频繁程度,从某种意义上已经成为衡量一个国家信息化程度的标志二、数据库技术的发展1. 人工管理阶段20 世纪 50 年代中期,计算机主要应用于科学计算,而外部存储器只...
2019-05-01 20:15:53 1060
原创 操作系统
文章目录一、操作系统的基本概念1. 基本概念2. 特性与功能3. 分类二、进程管理1. 概念2. 发展三、作业管理1. 概念2. 管理内容3. 作业的状态四、存储管理1. 概念2. 存储管理方案3. 存储内容管理五、文件管理1. 文件系统2. 系统常用文件系统六、设备管理1. 概念2. 设配管理评估内容3. 管理方式七、常用操作系统一、操作系统的基本概念1. 基本概念操作系统是系统软件的...
2019-05-01 12:17:48 534
原创 计算机硬件基础
数制及其转换数制基本的基数和权基数和权是数制的两大要素基数:指在进位制中允许使用的基本数码个数权:也称位权,指某位上的数码的权重值,权重与数码所处的位置有关数制转换常用数制关系常用的几种数制分别是十进制、二进制、八进制、十六进制。二进制转换成十进制将二进制各位数码与其权值 2i2^i2i相乘,再累加乘积,即可得到十进制数(01100100)2=0×27+1×26+1×25...
2019-04-30 22:09:12 809
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人