使用ApacheBench来对美多商城的秒杀功能进行高并发压力测试

    秒杀功能众所周知,低廉的价格会引来很多用户趋之若鹜的争抢点击,导致一系列的服务器负载问题,服务器负载太大而影响程序效率也是很常见的,Apache服务器自带有一个叫AB(ApacheBench)的工具,可以对服务器进行负载测试 同时美多商城的秒杀功能也会被高负载影响,从而导致超卖现象 安装xampp软件 进入 c:/xampp/apache/bin 基本用法: ab  -n 全部请求数 -c 并发数测试u......

Python3.7.2+Django2.0.4 美多商城集成最新版支付宝支付接口(2019.04)

  最新版支付宝算法的改变就是RSA升级了RSA2,长度推荐2048,其他的逻辑变化不大,关于秘钥的生成在之前的一篇文章已经有所介绍   在Mac系统下生成新版支付宝(2019年4月)支付接口私钥和公钥   在Django中集成支付接口的前置操作就是需要安装pycryptodome   pip3 install -i https://pypi.douban.com/simple pycryptodome ......

处理Centos6和Centos7下,python3处理中文的神坑

  在一个阿里云的ecs服务器上,安装了centos6.5,然后部署Django2.0.4+python3.7.2,处理编码格式为UTF-8的HTTP请求,但奇怪的发现,将bytes类型的请求内容decode的时候会报解码错误UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 0: ordinal not in range(128)  同样的程序,在windows Macos centos5.5 都没问题  网......

在Mac系统下生成新版支付宝(2019年4月)支付接口私钥和公钥

  在做美多商城三方支付业务时,需要连入支付宝支付接口,众所周知,支付宝支付采用了RSA加密签名的安全通信机制,开发者可以通过支付宝的公钥验证消息的来源,同时使用自己的私钥进行信息加密。RSA算法及数字签名机制是服务窗平台与开发者网关安全通信的基础。  关于数字签名机制无非就是下面这四步,归根结底就是为了提高安全性,毕竟涉及钱了,马虎不得:  第一、发方首先有一个公钥/私钥对,它将要签名的报文作为一个单向散列函数的输入,产生一个定长的散列码,一般称为消息摘要。  第二、使用发放的私钥对散列码进行......

Mac系统下,让Iterm 4 来记住常用的登录账号和密码

  经常在Mac下使用Iterm4的朋友肯定遇见过这种情况,每次连接某个远程服务器总是要一遍遍的敲用户名、密码。 那么能不能像Windows的软件一样,可以直接让软件记住。每次只要点击一下,就直接ssh到远程服务器上面去了,答案当然是可以了,这里推荐使用expect脚本来实现。    #!/usr/bin/expect   set timeout 30   spawn ssh -p [......

Django2.0.4 结合 KindEditor 4.1.11 富文本编辑器

  KindEditor是一款还不错的开源的HTML可视化编辑器,主要用于让用户在网站上获得所见即所得编辑效果,兼容IE、Firefox、Chrome、Safari、Opera等主流浏览器。之所以推荐这一款编辑器,是因为它非常的轻量化,也不需要安装,从而耦合度非常低,无论是使用表单提交内容还是异步提交,都非常方便,这里简单介绍一下如何在Django2.0.4中使用这款富文本编辑器。   首先 在官网下载文件 http://kinded......

关于win下面Celery服务报 Process 'Worker' exited with 'exitcode 1' [duplicate]

  使用Celery服务运行异步任务或者定时任务的时候,服务虽然起了,但是会报错:  Celery Process 'Worker' exited with 'exitcode 1' [duplicate]  导致任务并未运行。  经过搜索可以定位到问题所在,是因为celery依赖库billiard版本过低,导致任务发生了阻塞,所以最好的解决方案就是升级billiard  执行 pip install --upgrade billiard  官方的解释是,billiard最好>=......

使用python3.7.2 实现大名鼎鼎的Elo Score等级分制度

  在年度影片《社交网络》中,影片开场,马克扎克伯克和他的女朋友在酒馆里因为琐事分手,气急败坏的他回到了宿舍,在舍友的鼓励和帮助下,充分发挥了作为技术天才的动手能力,做出了Facemash网站,对大学女生的相貌进行分级打分,结果网站访问流量过大,直接把大学网络都搞宕机了。而Facemask就是著名的FaceBook的前身,Facemask大受欢迎的关键就在于扎克伯格的同学爱德华多(他也是facebook的联合创始人之一)写在窗户上的排名公式  ......

使用python3.7.2 实现大名鼎鼎的Elo Score等级分制度

Django2.0.4+Uploadify3.0(h5版) 实现多文件异步上传和删除

  已经9012年了,如果你的网站还通过传统表单上传文件的话,那你简直low到爆了,也别干什么web开发了,直接面壁去吧。   本文基于Uploadify异步上传控件来实现多文件异步上传的无刷新机制,用来提高效率和用户体验,由于uploadify基于jquery,所以确保已经引入了稳定版的Jquery,另外需要说明的是,uploadify分为flash版和h5版,鉴于flash早就已经被淘汰了,所以h5才是我们的选择,但是h5版居然需......

python3.7.2+Django2.0.4 使用django-celery遇到的那些坑

  1 首先为啥要用celery      因为在Django Web平台开发中,碰到一些请求执行的任务时间较长(几分钟),为了加快用户的响应时间,因此决定采用异步任务的方式在后台执行这些任务。与此同时,celery除了异步任务,还可以开启定时任务,方便调度。   2 安装需要的软件包     &emsp......

Mac使用Home Brew来安装redis,并设置守护进程

1 首先,先升级你本机的Home brewbrew update2 安装redisbrew install redis3 安装成功后,redis配置路径是/usr/local/etc/redis.conf4 启动redis服务redis-server5 可以设置守护进程将daemonize配置改成yes,默认值是no6 将redis服务设置系统开机自启ln -f /usr/local/Cellar/redis/2.8.13/homebrew.mxcl.redis.plist ~/Library/......

Mac 安装和配置Mongodb

 在mac下安装Mongodb同样不推荐编译安装,推荐使用Home brew 1 升级brew brew update   2 安装mongo  这里需要注意一点,brew的mongo安装依赖python2.7,所以默认的python环境变量最好不要动,如果想用python3.7.2 最好使用python3的软连接 brew install mongodb   3 安装成功后,可以使用两种方式启动mongo服务    ......

Home Brew 常用命令总结

  Home Brew是基于Ruby的一款软件管理器,非常好用,有点类似python的pip,这里总结一下常用的命令,以备不时之需。  安装软件:brew install 软件名,例:brew install wget  搜索软件:brew search 软件名,例:brew search wget  卸载软件:brew uninstall 软件名,例:brew uninstall wget  更新所有软件:brew update  更新具体软件:brew upgrade 软件名 ,例:brew......

关于Django2.0跨域问题

  首先,明确一个问题,就是跨域需要服务端支持才行,而不是靠前端修改代码可以解决的,无论你用jquery axios fetch都是如此。  这里介绍一下,如果使用的是Django2.0本身作为web服务端,该如何处理跨域请求问题。  1 安装插件  pip install django-cors-headers  2 编辑配置文件(settings.py)  INSTALLED_APPS = [    ''''''''''''    ''''''''''......

关于mac系统中进入mysql遇到 Access denied for user 'root'@'localhost' (using password: YES)解决方案

  Access denied for user 'root'@'localhost' (using password: YES)  usering password:YES 其实不用怀疑,密码输入正确,既然不是密码的问题那就是mysql服务出问题了,具体解决流程如下:  1) Stop mysql (Kill mysql process or run following command) 停止mysql服务       &n......

Flask 在虚拟环境之中做开发

  虚拟环境可以搭建独立的python运行环境, 使得单个项目的运行环境与其它项目互不影响 比如一些项目基于python2.0,而另外一些项目却基于python3.0,同时这些项目必须在同一台服务器上部署,使用virtualenv就可以完美解决这个问题虚拟环境安装命令pip install virtualenv进入项目安装虚拟目录的命令virtualenv venv激活虚拟环境activate离开虚拟环境 ......

Flask最新版本的中文翻译手册

一个最小的应用一个最小的 Flask 应用如下:from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world():    return 'Hello, World!'  Flask作为一个经典的轻量级框架无论在国外还是国内都十分流行,这里记录一下新版的中文翻译手册,留作备用  https://dormousehole.readthedocs.io/en/latest/quickstart.......

利用grunt插件来压缩js和css文件用来减少http请求,提高页面效率

1.安装nodejs http://nodejs.org/ 2.安装各自的node package js我用的是UglifyJS github地址:https://github.com/mishoo/UglifyJS css我用的是clean-css github地址:https://github.com/GoalSmashers/clean-css 图片用的是node-......

将博客迁移阿里云并且切换成https解析的过程

  过年了,既然https是大势所趋,所以我也要将技术博客切换成https,同时迁移到国内的阿里云服务器上,这样网站会更加的稳定并且速度更快,怎么买服务器和备案就按下不表了,网上有一大堆的教程,最关键其实是阿里云并没有免费的ssl证书,去各大网站上查了一圈,只有腾讯云有免费的一年期ssl的证书,去腾讯云申请一下就可以了,然后将证书下载下来,并且解压后有三个文件,将这三个文件上传到服务器上。   修改apache服务器的httpd.co......