在Centos下对Tornado的性能进行测试 by Liu Yue/2019-06-04 在之前的一篇文章中,我们在1g1核的惨淡硬件环境下,对 uwsgi + django 和 gunicorn+ django 的后端服务进行性能测试,得出结论单台django在简单读库操作下只能抗住大约200左右的并发:在Centos下使用Siege对Django服务进行压力测试 这一次,我们在相同的背景下,对三大框架中,以性能著称于世的Tornado进行并发测试,看看它的性能到底有多高。 &nb...... 了解更多
在Mac os 下配置Go lang 开发环境 by Liu Yue/2019-06-02 首先,下载安装包,国内可以在这上面下载https://studygolang.com/dl 目前的稳定版是go1.12.5.darwin-amd64.pkg 下载安装后,配置环境变量 vim ~/.bash_profile 在文件内最后加入# Enable the go modules feature...... 了解更多
在Centos下使用Siege对Django服务进行压力测试 by Liu Yue/2019-05-31 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 在之前的一篇文章中,阐述了如何在高并发高负载的场景下使用nginx做后台服务的负载均衡:在阿里云Centos上配置nginx+uwsgi+负载均衡配置,但是不要以为这样做了就是一劳永逸的,到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器负载,如此多的数据库连接操作,数据库必然会崩溃,数据库如果宕机的话,后果更是不堪设想。这时候,我们会考虑如何减少数据库的连接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:redi...... 了解更多
在阿里云Centos7.6上利用docker搭建Jenkins来自动化部署Django项目 by Liu Yue/2019-05-28 一般情况下,将一个项目部署到生产环境的流程如下: 需求分析—原型设计—开发代码—内网部署-提交测试—确认上线—备份数据—外网更新-最终测试,如果发现外网部署的代码有异常,需要及时回滚。 整个过程相当复杂而漫长,其中还需要输入不少的命令,比如上传代码,git的拉取或者合并分支等等。 &nb...... 了解更多
在阿里云Centos7.6上面部署基于redis的分布式爬虫scrapy-redis by Liu Yue/2019-05-27 Scrapy是一个比较好用的Python爬虫框架,你只需要编写几个组件就可以实现网页数据的爬取。但是当我们要爬取的页面非常多的时候,单个服务器的处理能力就不能满足我们的需求了(无论是处理速度还是网络请求的并发数),这时候分布式爬虫的优势就显现出来。 而Scrapy-Redis则是一个基于Redis的Scrapy分布式组件。它利用Redis对用于爬取的请求(Requests)进行存储和调度(...... 了解更多
使用基于Vue.js和Hbuilder的混合模式移动开发打造属于自己的移动app by Liu Yue/2019-05-26 近几年,混合模式移动应用的概念甚嚣尘上,受到了一些中小型企业的青睐,究其原因,混合模式开发可以比传统移动开发节约大量的开发成本和人力成本。 Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。 说白了,如果走传统移动开发路线,...... 了解更多
利用基于Go Lang的Hugo配合nginx来打造属于自己的纯静态博客系统 by Liu Yue/2019-05-23 Go lang无疑是目前的当红炸子鸡,极大地提高了后端编程的效率,同时有着极高的性能。借助Go语言我们 可以用同步的方式写出高并发的服务端软件,同时,Go语言也是云原生第一语言,Docker,Kubernetes等等著名的项目都是使用Go语言实现的。 Hugo 是基于 Go 语言的静态网站生成器。 什么是静态网站生成器?顾名思义,就是以最快的...... 了解更多
在阿里云服务器上使用Nginx部署https协议的网站 by Liu Yue/2019-05-21 之前写过一篇文章是在阿里云服务器上用Apache切换https协议:将博客迁移阿里云并且切换成https解析的过程 这一次,换成使用Nginx来部署,相比之下,比Apache的配置要简单一些 如何申请SSL证书就按下不表了,非常简单,目前阿里云和腾讯云都免费提供一年的证书服务,区别就是腾讯云不需要域名在腾讯,而阿里云只有域名在阿里旗下才提供。 ...... 了解更多
python3.7.3操作FastDfs来进行文件操作 by Liu Yue/2019-05-20 在之前的一篇文章中:利用Docker来搭建分布式文件系统FastDfs,我们已经搭建好了FastDfs分布式文件系统,并且已经可以通过命令进行上传操作,那么如何使用python来上传文件呢? 很简单,还是利用docker的特性,我们知道docker 的 -v 参数,可以自动挂载宿主机的文件件到容器中去,这样宿主和容器就可以进行无障碍的文件共享,我们通过-v参数,把宿主机的root目录自动挂载到docker容器...... 了解更多
利用Docker来搭建分布式文件系统FastDfs by Liu Yue/2019-05-19 对于文件存储来说,一般情况下简单的处理就是在Django配置文件中配置存储目录,按照规则对文件进行上传或者下载。 实际上,当文件较少的时候,Django是可以应付的过来的。但当文件以海量形式出现的时候,Django就并不是那么好用了,于是Fast DFS应运而出。 FastDFS是一个开源的分布式文件系统,它对文件进行管理,功能包括...... 了解更多
在阿里云Centos7.6上部署Supervisor来监控和操作各类服务 by Liu Yue/2019-05-17 Supervisor 是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。 &n...... 了解更多
在阿里云Centos上配置nginx+uwsgi+负载均衡配置 by Liu Yue/2019-05-17 负载均衡在服务端开发中算是一个比较重要的特性。因为Nginx除了作为常规的Web服务器外,还会被大规模的用于反向代理后端,Nginx的异步框架可以处理很大的并发请求,把这些并发请求hold住之后就可以分发给后台服务端(backend servers, 后面简称backend)来做复杂的计算、处理和响应,并且在业务量增加的时候可以方便地扩容后台服务器。 说白了就是,随着业务和用户规模的增长,仅仅一台服务器...... 了解更多
利用Docker挂载Nginx-rtmp(服务器直播流分发)+FFmpeg(推流)+Vue.js结合Video.js(播放器流播放)来实现实时网络直播 by Liu Yue/2019-05-16 众所周知,在视频直播领域,有不同的商家提供各种的商业解决方案,其中比较靠谱的服务商有阿里云直播,腾讯云直播,以及又拍云和网易云的有偿直播服务,服务包括软硬件设备,摄像机,编码器,流媒体服务器等。但是其高昂的费用以及较高的准入门槛让许多个人和小型企业望而却步,本文要讲解的是如何使用nginx-rtmp搭建直播服务器,配合FFmpeg推流,在网页端vue.js作为载体利用video.js作为流播放器,打造一套可用的在线视频直播方案。 ...... 了解更多
Python3利用ffmpeg针对视频进行一些操作 by Liu Yue/2019-05-15 FFmpeg是个啥? FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。 首先去官网https://www.ffmpeg.org/download.html下载windows下的压缩包 &nbs...... 了解更多
在阿里云centos7.6上部署vue.js2.6前端应用 by Liu Yue/2019-05-07 在之前的一篇文章中详细阐述了如何部署Nginx代理uwsgi+django后台服务,现在轮到部署前端应用vue.js了,vue.js的好处就不多说了,其作为一个轻巧、高性能、可组件化的MVVM库,学习成本要比React要低,性能比脏检查的AngularJS不知道高到哪里去了。本文介绍如何在centos上部署vue.js应用。 建立一个简单的vue.js脚手架项目的完整命令 //安装cnpm npm i...... 了解更多
在阿里云Centos7.6中部署nginx1.16+uwsgi2.0.18+Django2.0.4 by Liu Yue/2019-05-05 一直以来想写一篇完整的在阿里云服务器上部署Django服务结合uwsgi,并且通过nginx做反向代理。因为网上的攻略鱼龙混杂,加上技术不断更新,一些年代久远的文章很容易让人在部署的过程中掉坑里,无法自拔,所以本篇文章以最新的阿里云服务器centos7.6为背景,完全阐述如何部署,亲测可用,其实要说难点完全没有,只要按部就班,就不会有问题。 当你购买了阿里云的ecs,涉及ecs的有两个密码,一定要搞清楚,一个...... 了解更多
在Mac和Linux以及Windows下删除pip安装包缓存用以节约空间 by Liu Yue/2019-05-03 首先,如果你的pip版本在6.0以上的话,可以在安装软件的时候加上–-no-cache-dir 来选择不缓存,所以建议将pip升级到最新版本 pip3 install --upgrade pip 如果你已经用pip安装过不少软件,并且没有选择不缓存的话,可以用下面的命令来删除缓存 #Linux and Un...... 了解更多
Python版(3.7.2)支付宝(Alipay)退款(refund)接口的开发 by Liu Yue/2019-05-03 在之前的文章中介绍了如何编写支付宝支付接口 Python3.7.2+Django2.0.4 美多商城集成最新版支付宝支付接口(2019.04) 匆忙之中只考虑了支付,其实当交易发生之后一段时间内,由于买家或者卖家的原因需要退款时,卖家可以通过退款接口将支付款退还给买家,支付宝将在收到退款请求并且验证成功之后,按照退款规则将支付款按原路退到买家帐号上。 交易超过约定时间(签约时设置的可退款时间)的订单无法进行退款 ...... 了解更多