使用python将word文档和pdf电子书进行格式互转(兼容Windows/Linux)by Liu Yue/2019-07-10 标签: Python 使用 文档 进行 Linux Windows 互转 word pdf 兼容 格式 电子书 一些重要文档格式之间的互转在目前显得尤为重要,pdf作为通用格式在现在各个平台上兼容性是最好的,所以写python脚本将这些word文档批量转换pdf是最好的解决方案。 由于windows系统对于word文档有天然的兼容性优势,所以转换起来很简单,普遍上是通过comtypes模块。 pip3 install comtypes from comtypes.client impor......了解更多
彻底弄清楚session,cookie,sessionStorage,localStorage的区别及应用场景(面试向)by Liu Yue/2019-07-02 标签: 应用 session cookie sessionStorage localStorage 弄清楚 面试 场景 彻底 区别 客户端状态保持是一个老生常谈的问题了,归根结底追踪浏览器的用户身份及其相关数据无非就是以下四种方式:session,cookie,sessionStorage,localStorage 首先cookie和session: Cookie机制:如果不在浏览器中设置过期时间,cookie被保存在内存中,生命周期随浏览器的关闭而结束,这种cookie简称会话cookie。如果在浏......了解更多
搞清楚系统到底怎样支撑高并发以及架构图的绘制(面试向)by Liu Yue/2019-07-02 标签: 系统 并发 以及 面试 架构图 搞清楚 绘制 怎样 到底 支撑 大多数人面试的时候经常会被问到:你简历上有高负载高并发的经验,那到底你的系统是怎样设计的? 如果没有过相关的项目经验,大多数同学被问到这个问题压根儿没什么思路去回答,不知道从什么地方说起,其实,就算没有相关的经验,只要事先编好话术,搞清楚架构图,回答此类问题也还是可以滴水不漏的。 首先,在脑子里虚拟一个大用户量背景下的场景,如果我们手......了解更多
使用Hexo建立一个轻量、简易、高逼格的博客by Liu Yue/2019-06-25 标签: 一个 使用 博客 轻量 Hexo 高逼格 简易 建立 在之前的一篇文章中,介绍了如何使用Hugo在三分钟之内建立一个简单的个人博客系统,它是基于go lang的,其实,市面上还有一款类似的静态页生成器,就是Hexo 读音/hækso/ ,它是基于node.js的,和Hugo一样,Hexo 正常来说,不需要部署到我们的服务器上,我们的服务器上保存的,其实是基于在hexo通过markdown编写的文章,然后hexo帮我们生成静态的html页面,然后,将生成的html上传到我们的服务器。简而言之:hexo是个静态页面生成......了解更多
python3的单元测试模块mock与性能测试模块cProfileby Liu Yue/2019-06-14 标签: 性能 模块 测试 python3 单元测试 mock cProfile 我们知道写完了代码需要自己跑一跑进行测试,一个写好的程序如果连测试都没有就上到生产环境是不敢想象的,这么做的人不是太自信就是太无知。 传统测试无非就是自己运行一下程序查看结果,或者前后端服务进行联调,这里要说的是走正规流程的单元测试,那到底什么是单元测试呢?顾名思义,只测试当前单元的程序或者代码,也可以理解当前模块的代码块,单元测试假设所有的内部或外部的依赖应该是稳定的, 已经在别处进行测试过的.使用mock 就可以对外部......了解更多
关于mysql联合索引的最左前缀原则以及b+treeby Liu Yue/2019-06-10 标签: 关于 mysql 以及 tree 前缀 索引 原则 联合 软件版本mysql5.7 根据官网的文档 https://dev.mysql.com/doc/refman/5.7/en/multiple-column-indexes.html 查询条件要符合最左原则才能使用到索引 首先说说联合索引的好处: ......了解更多
在Mac下使用MindMaster画思维导图(脑图)by Liu Yue/2019-06-06 标签: Mac 使用 MindMaster 导图 脑图 思维 众所周知,老牌的脑图软件是xmind,这里我们使用MindMaster,二者有什么异同呢? 相同点:都是国产软件,都分为国内版和国外版本,都有免费版和付费版。在功能方面相同点较多,比如插入节点、关系线、标注。拖拽操作、内置图标、备注、幻灯片演示、甘特图、自动排版、云存储等功能。并且同样支持Windows、mac和Linux系统。 不同......了解更多
在Centos下对Tornado的性能进行测试(Stress Testing)by Liu Yue/2019-06-04 标签: 性能 centos 测试 进行 Tornado 在之前的一篇文章中,我们在1g1核的惨淡硬件环境下,对 uwsgi + django 和 gunicorn+ django 的后端服务进行性能测试,得出结论单台django在简单读库操作下只能抗住大约200左右的并发:在Centos下使用Siege对Django服务进行压力测试 这一次,我们在相同的背景下,对三大框架中,以性能著称于世的Tornado进行并发测试,看看它的性能到底有多高。 &nb......了解更多
在Mac os 下配置Go lang 开发环境by Liu Yue/2019-06-02 标签: Mac OS 配置 Go Lang 开发 环境 首先,下载安装包,国内可以在这上面下载https://studygolang.com/dl 目前的稳定版是go1.12.5.darwin-amd64.pkg 下载安装后,配置环境变量 vim ~/.bash_profile 在文件内最后加入# Enable the go modules feature......了解更多
在Centos下使用Siege对Django服务进行压力测试(Stress Testing)by Liu Yue/2019-05-31 标签: centos 使用 Django 服务 测试 压力 进行 Siege Siege是linux下的一个web系统的压力测试工具,支持多链接,支持get和post请求,可以对web系统进行多并发下持续请求的压力测试。今天我们就使用Siege来对Django进行一次压力测试,看看单台Django服务到底能抗住多少的并发数。 首先安装Siege wget http://download.joedog.org/si......了解更多
具体谈谈如何优化前端性能的总结by Liu Yue/2019-05-30 标签: 性能 如何 总结 前端 谈谈 优化 具体 前端是庞杂的,包括 HTML、 CSS、 Javascript、Image 、Video等等各种各样的资源。前端优化是复杂的,针对方方面面的资源都有不同的方式。那么,前端优化的目的是什么 ? 从用户角度而言,优化能够让页面加载得更快、对用户的操作响应得更及时,能够给用户提供更为友好的体验。 从服务商角度而言,优化能够减少......了解更多
在阿里云Centos7.6上面配置Mysql主从数据库(master/slave),实现读写分离by Liu Yue/2019-05-29 标签: mysql 实现 配置 阿里 Centos7.6 上面 master slave 主从 读写 数据库 分离 在之前的一篇文章中,阐述了如何在高并发高负载的场景下使用nginx做后台服务的负载均衡:在阿里云Centos上配置nginx+uwsgi+负载均衡配置,但是不要以为这样做了就是一劳永逸的,到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器负载,如此多的数据库连接操作,数据库必然会崩溃,数据库如果宕机的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:redi......了解更多
在阿里云Centos7.6上利用docker搭建Jenkins来自动化部署Django项目by Liu Yue/2019-05-28 标签: 阿里 利用 Django 部署 Centos7.6 Docker 搭建 Jenkins 自动化 项目 一般情况下,将一个项目部署到生产环境的流程如下: 需求分析—原型设计—开发代码—内网部署-提交测试—确认上线—备份数据—外网更新-最终测试,如果发现外网部署的代码有异常,需要及时回滚。 整个过程相当复杂而漫长,其中还需要输入不少的命令,比如上传代码,git的拉取或者合并分支等等。 Jenkins是目前非......了解更多
在阿里云Centos7.6上面部署基于redis的分布式爬虫scrapy-redisby Liu Yue/2019-05-27 标签: 爬虫 Scrapy 阿里 基于 redis 部署 Centos7.6 分布式 上面 Scrapy是一个比较好用的Python爬虫框架,你只需要编写几个组件就可以实现网页数据的爬取。但是当我们要爬取的页面非常多的时候,单个服务器的处理能力就不能满足我们的需求了(无论是处理速度还是网络请求的并发数),这时候分布式爬虫的优势就显现出来。 而Scrapy-Redis则是一个基于Redis的Scrapy分布式组件。它利用Redis对用于爬取的请求(Requests)进行存储和调度(......了解更多
使用基于Vue.js和Hbuilder的混合模式移动开发打造属于自己的移动appby Liu Yue/2019-05-26 标签: 移动 使用 打造 基于 属于 自己 js 开发 vue Hbuilder app 混合 模式 近几年,混合模式移动应用的概念甚嚣尘上,受到了一些中小型企业的青睐,究其原因,混合模式开发可以比传统移动开发节约大量的开发成本和人力成本。 Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。 说白了,如果走传统移动开发路线,......了解更多
利用基于Go Lang的Hugo配合nginx来打造属于自己的纯静态博客系统by Liu Yue/2019-05-23 标签: 系统 博客 Go Lang Hugo nginx 静态 打造 基于 配合 属于 利用 自己 Go lang无疑是目前的当红炸子鸡,极大地提高了后端编程的效率,同时有着极高的性能。借助Go语言我们 可以用同步的方式写出高并发的服务端软件,同时,Go语言也是云原生第一语言,Docker,Kubernetes等等著名的项目都是使用Go语言实现的。 Hugo 是基于 Go 语言的静态网站生成器。 什么是静态网站生成器?顾名思义,就是以最快的......了解更多
在阿里云服务器上使用Nginx部署https协议的网站by Liu Yue/2019-05-21 标签: 使用 https 阿里 nginx 服务器 部署 网站 协议 之前写过一篇文章是在阿里云服务器上用Apache切换https协议:将博客迁移阿里云并且切换成https解析的过程 这一次,换成使用Nginx来部署,相比之下,比Apache的配置要简单一些 如何申请SSL证书就按下不表了,非常简单,目前阿里云和腾讯云都免费提供一年的证书服务,区别就是腾讯云不需要域名在腾讯,而阿里云只有域名在阿里旗下才提供。 ......了解更多
python3.7.3操作FastDfs来进行文件操作by Liu Yue/2019-05-20 标签: 操作 python3.7 文件 进行 FastDfs 在之前的一篇文章中:利用Docker来搭建分布式文件系统FastDfs,我们已经搭建好了FastDfs分布式文件系统,并且已经可以通过命令进行上传操作,那么如何使用python来上传文件呢? 很简单,还是利用docker的特性,我们知道docker 的 -v 参数,可以自动挂载宿主机的文件件到容器中去,这样宿主和容器就可以进行无障碍的文件共享,我们通过-v参数,把宿主机的root目录自动挂载到docker容器......了解更多
利用Docker来搭建分布式文件系统FastDfsby Liu Yue/2019-05-19 标签: 利用 Docker 分布式文件系统 FastDfs 搭建 对于文件存储来说,一般情况下简单的处理就是在Django配置文件中配置存储目录,按照规则对文件进行上传或者下载。 实际上,当文件较少的时候,Django是可以应付的过来的。但当文件以海量形式出现的时候,Django就并不是那么好用了,于是Fast DFS应运而出。 FastDFS是一个开源的分布式文件系统,它对文件进行管理,功能包括......了解更多
在阿里云Centos7.6上部署Supervisor来监控和操作各类服务by Liu Yue/2019-05-17 标签: 操作 阿里 部署 服务 Centos7.6 Supervisor 监控 各类 Supervisor 是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。 &n......了解更多