自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小白学python-就业班课程笔记

记录下 python的学习笔记

  • 博客(14)
  • 收藏
  • 关注

原创 Mysql数据库中如何实现更快速度的查找?

Mysql数据库中如何实现更快速度的查找?Mysql实现快速查找可以从下面几个角度考虑实现,具体方法有很多要配合使用: 1. 硬件和网络方面:这要公司前期投入很多金钱。 2. 给相应的字段添加索引,避免全文的扫描; 3. 缓存查询的结果,减少数据库的查询次数; 4. 等价谓词的重写。比如between and 更改为>=、<= 等,查询的速度提升 5. 将外连接转化成内连接,减少IO...

2018-12-14 09:36:08 816 1

原创 token和jwt存在什么区别

token和jwt存在什么区别结论: 最直观的:token需要查库验证token 是否有效,而JWT不用查库或者少查库,直接在服务端进行校验,并且不用查库。因为用户的信息及加密信息在第二部分payload和第三部分签证中已经生成,只要在服务端进行校验就行,并且校验也是JWT自己实现的。 TOKEN 概念: 令牌, 是访问资源的凭证。 Token的认证流程: 1. 用户输入用户名和密码,发送给服务...

2018-12-14 09:35:38 8238 4

原创 工作中对数据库设计有什么经验

工作中对数据库设计有什么经验以下描述仅仅是个人经验总结,仅供参考!!! 我认为数据库设计分为库和表的设计,所以从这两方面着手介绍。 库的设计 1、数据库名称要明确,可以加前缀或后缀的方式,使其看起来有业务含义,比如数据库名称可以为Business_DB(业务数据库)。 2、在一个企业中,如果依赖很多产品,但是每个产品都使用同一套用户,那么应该将用户单独构建一个库,叫做企业用户中心。 3、不同类型...

2018-12-14 09:34:47 234

原创 面对抢购,怎么处理并发

面对抢购,怎么处理并发抢购系统也就是秒杀系统,要处理秒杀系统的的并发问题,并不是某一个方面就能实现的,要多方面采取措施来实现。首先我们要清楚,高并发发生在哪些部分,然后正对不同的模块来进行优化。一般会发生在下图红色部分。 如何解决上面问题呢?主要从两个方面入手: (1)将请求尽量拦截在系统上游(不要让锁冲突落到数据库上去)。传统秒杀系统之所以挂,请求都压倒了后端数据层,数据读写锁冲突严重,并发高...

2018-12-14 09:34:14 362

原创 怎么根据 用户的浏览记录 进行推荐,说下推荐时 接口的思路是什么

怎么根据 用户的浏览记录 进行推荐,说下推荐时 接口的思路是什么基于用户行为的商品推荐、基于协同过滤的推荐系统。 实现“打包销售” 主要思路如上图: 1. 根据用户正在浏览或添加到购物车的商品的id,来过滤出购买过改商品的用户 2. 根据购买过该商品的用户集合,在用户集合中根据每个用户的订单信息,查找出该用户的订单商品信息,及用户的历史商品浏览信息 3. 根据所有用户的商品信息,找到所有的商品,...

2018-12-14 09:33:22 1891

原创 如何设置(购物车或待支付账单)倒计时30分钟,数据库数据减少不?

如何设置(购物车或待支付账单)倒计时30分钟,数据库数据减少不?这实现起来方法很多,下面仅提供思路: 1. 在创建订单时,添加额外字段,记录订单的创建时间。当用户进入此订单页面时就显示倒计时。前端获取当前时间,然后减去订单的创建时间,如果大于30分钟就取消订单,取消订单就修改商品的库存和销量; 如果没有超时就继续倒计时。 2. 可以使用定时任务crontab,在创建订单时就生成一个定时任务,设定...

2018-12-14 09:32:22 1254

原创 购物车中添加数据的时候数据库数据减少吗?

购物车中添加数据的时候数据库数据减少吗?没有,仅仅是把商品信息添加到cookie或redis中,没有对商品的数量进行更改 对于登录的用户:把用户的id和商品的id,添加到购物车中, redis;此时未对 商品的库存进行操作; 对于匿名用户: 商品的id及商品信息写入到cookie中,也未对商品的库存进行操作...

2018-12-14 09:31:31 823

原创 为什么使用CELERY而不使用线程发送耗时任务

为什么使用CELERY而不使用线程发送耗时任务。主要是因为并发比较大的时候,线程切换会有开销时间,假如使用线程池会限制并发的数量;同时多线程间的数据共享维护比较麻烦。 而celery是异步任务处理,是分布式的任务队列。它可以让任务的执行同主程序完全脱离,甚至不在同一台主机内。它通过队列来调度任务,不用担心并发量高时系统负载过大。它可以用来处理复杂系统性能问题,却又相当灵活易用。...

2018-12-14 09:31:00 2262

原创 说一下TCP的三次握手客户端在访问服务器的什么?在三次握手中服务器内部发生了什么事情?

说一下TCP的三次握手客户端在访问服务器的什么?在三次握手中服务器内部发生了什么事情?建立起一个TCP连接需要经过“三次握手”:1) Client首先发送一个连接试探,ACK=0 表示确认号无效,SYN = 1 表示这是一个连接请求或连接接受报文,同时表示这个数据报不能携带数据,seq = x 表示Client自己的初始序号(seq = 0 就代表这是第0号帧),这时候Client进入syn_s...

2018-12-14 09:30:35 284

原创 对于后台站点的用户活跃度统计 除了记录用户登陆时间进行筛选,还有没有别的方法

对于后台站点的用户活跃度统计 除了记录用户登陆时间进行筛选,还有没有别的方法用户的日活跃度用处: 主要是给运营人员来使用, 用户网站的优化或者网站的推送(SEO)实现:维护一张用户表,里面有4列:guid, starttime, endtime, num,分别是用户的guid,第一次访问时间,最后一次访问时间,访问天数;表中guid是唯一的; 把当天数据去重后,与库中得历史记录进行join,如...

2018-12-14 09:29:47 642

原创 python笔记 7-8 进程池 进程通信 迭代器 消息队列 Queue 协程 和正则表达式

day7 进程 进程池 进程通信 迭代器 消息队列 Queue 作用 用于多个进程间的通信 操作put放入消息(值) put_nowait() 放入值,不等待 如果队满,则报错 get获取消息(值) get_nowait() 获取值,不等待 如果队空,则报错 判断 full()是否已满 empty()是否已空 注意: 放入值后,立刻获取是否为空,结果为Tr...

2018-08-26 15:30:40 187

原创 python笔记 5-6 线程和多任务, 互斥锁 TCP 三次握手和四次挥手

day5 线程和多任务TCP的三次握手用于建立连接标志位 SYN连接请求 FIN关闭连接 ACK确认序号 seq报文序号 ack确认号 TCP的四次挥手用于断开连接 MSL最大报文生存时间 多任务 同一时间多个程序同时运行 线程 程序的分支,系统调度和分派的最小单位拥有少量必不可少的资源就可以运行 主线程 程序的主干main() 子线程 通过 threading.Tre...

2018-08-26 15:29:45 167

原创 python笔记 3-4网络通讯服务 linux上服务搭建 vim udp socket

day3 网络通讯服务 linux上服务搭建 linux基本操作FTP服务 FTP 文件传输协议 服务端安装vsftpd 命令:sudo apt-get install vsftpdssh服务 SSH 安全协议,常用于远程登录 服务端:sudo apt-get install openssh-server 客户端登录命令:ssh 服务器用户名@服务器ip地址 使用ssh访问...

2018-08-26 15:28:18 209

原创 python笔记 1-2 liunx基本操作 -和 命令

day 1 liunx 常用命令ls 命令 查看 ls : 以列表方式查看当前文件内容 ls -a : 查看所有内容 (包含隐藏文件 , 隐藏文件 是带 . 的文件) ls -l : 查看详细信息 (包含可读写,权限 大小用量 -h 是友好模式显示) ls -h ; 友好模式 查看 cd 命令 切换目录 cd . /: 当前目录 可省略 ./ cd ../ : 返回上级目录 ...

2018-08-26 15:25:45 115

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除