自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Winter is almost upon us

平凡有一点理想 希望世界能变得更好

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

原创 Java FAQ -- "Exception in thread 'main' java.lang.UnsupportedClassVersionError:"

OS:Ubuntu最近重新学习Java,写了一段很小的程序,如下:public class Hello{public static void main(String args[]){System.out.println(“hello”);}}  当javac Hello.java, java Hello后发现出现了下面的提示错误:Exception in thread “main”...

2019-08-11 23:06:52 566

原创 浏览器访问网站的过程

假如浏览器要访问baidu.com首先要解析出baidu.com对应的ip地址要先使用arp获取默认网关的mac地址阻止数据发送给默认网关(ip还是dns服务器的ip,但是mac地址是默认网关的mac地址)默认网关拥有转发数据的能力,把数据转发给路由器路由器根据自己的路由协议,来选择一个合适的较快的路径转发数据给目的网关目的网关(dns服务器所在的网关),把数据转发给dns服务器dn...

2019-08-03 21:16:55 1192

原创 用python读Excel

读excel表读excel要用到xlrd模块,官网安装(http://pypi.python.org/pypi/xlrd)。然后就可以跟着里面的例子稍微试一下就知道怎么用了。大概的流程是这样的:1、导入模块 import xlrd2、打开Excel文件读取数据 data = xlrd.open_workbook('excel.xls')3、获取一个工作表1 table =...

2018-11-28 10:35:58 203

原创 用python实现将数据库一键导出为Excel

xlwtpip install xlwtMySQLdbpip install MySQLdb如果上述方式不成功的话,可以到sourceforge官网上去下载windows上的msi版本或者使用源码自行编译。数据库相关本次试验,数据库相关的其实也就是如何使用Python操作数据库而已,知识点也很少,下述为我们本次用到的一些简单的语句。连接conn=MySQLdb.connec...

2018-11-27 18:08:19 229

转载 有用过ElesticSearch吗?ES为什么要建立分词?Hystack如何对接ES?

ES 是什么Elasticsearch是一个基于Lucene的实时的分布式搜索和分析引擎,由Java实现的分析大规模的日志系统,它可以准实时地快速存储、搜索、分析海量的数据。什么是全文检索全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程...

2018-11-21 10:18:43 882

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

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

2018-11-21 09:48:49 1705

转载 怎么根据用户的浏览记录 进行推荐,推荐时接口的思路

基于用户行为的商品推荐、基于协同过滤的推荐系统。实现“打包销售”主要思路如上图:根据用户正在浏览或添加到购物车的商品的id,来过滤出购买过该商品的用户根据购买过该商品的用户集合,在用户集合中根据每个用户的订单信息,查找出该用户的订单商品信息,及用户的历史商品浏览信息根据所有用户的商品信息,找到所有的商品,然后对商品按照商品的销量进行排序,把排名靠前的商品,写入缓存或者数据库当用户登...

2018-11-21 09:33:16 7734 3

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

用户的日活跃度用处:主要是给运营人员来使用, 用于网站的优化或者网站的推送(SEO)实现:维护一张用户表,里面有4列:guid, starttime, endtime, num,分别是用户的guid,第一次访问时间,最后一次访问时间,访问天数;表中guid是唯一的; 把当天数据去重后,与库中得历史记录进行join,如果guid在历史库出现过,则将endtime更新为当天时间,num加一; ...

2018-11-21 09:16:24 2889

转载 面对抢购,怎么处理并发

秒杀活动多个方面联合起来实现,才功能完善。需要处理的是请求阻塞在哪里,针对阻塞的点进行优化在抢购前一段时间内会不断刷新商品详情页返回的现象:1.返回一个页面 2.不让你刷新详情页请求并发量高 有可能会造成阻塞系统时间:抢购时间会有一个倒计时的按钮添加一个时间戳,调用系统的时间和刷新页面的当前时间相减得到一个倒计时时间,都是调用系统的时间,只要刷新,会一直重复不停的调用系统的时间来显示倒计...

2018-11-21 00:03:12 1358 1

转载 多线程在web项目中的应用;项目中多线程同时操作某段代码怎么处理?

多线程一般在使用在进行I0操作时,基于这个结论,提供以下几个使用场景:比如一个业务逻辑需要并行的操作几个文件的读写,还得是同步执行,不能异步执行,这时候就可以开启多线程来读写这几个文件视图中需要请求多个第三方接口,仍然也是要求同步的,不能异步,这时候也可以用多线程去并行请求多个第三方接口比如在订单系统中,订单提交后就要修改商品的库存、商品的销量等这样的操作。实现:方法1:...

2018-11-20 23:13:24 2580

转载 工作中对数据库设计的经验

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

2018-11-20 23:10:29 569

转载 静态化和缓存的主要区别

页面静态化是把首页的商品数据全部静态化到一个固定的目录文件中,把数据库中的数据查询查来然后渲染到页面,把这个页面放到一个指定的目录下面是将数据库静态化到页面,客户端访问不需要查询数据库,主要存放形式是静态化文件资源,存储于硬盘;用户请求的是指定目录下的静态页面,页面中有数据。缓存是将数据存储于服务器内存,二者存放位置和形式不一样。这二者使用主要看业务场景及网站优化的点,比如说秒杀的时候,肯...

2018-11-20 17:51:39 1065

转载 python的with用法

一、With语句是什么?有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。如果不用with语句,代码如下:file = open("/tmp/foo.txt")data = file.read()file.close()这里有两个问题...

2018-11-19 23:20:41 131

原创 token和jwt存在什么区别

相同:都是访问资源的令牌,都可以记录用户的信息,都是只有验证成功后,客户端才能链接服务端区别:服务端验证客户端发送的token信息要进行数据的查询操作Jwt验证客户端发来的token就不用,在服务端使用密钥校验就可以了,不用数据库的查询。最直观的:token需要查库验证token 是否有效,而JWT不用查库或者少查库,直接在服务端进行校验,并且不用查库。因为用户的信息及加密信息在第二部分...

2018-11-19 14:10:29 2741

转载 redis如何做持久化

(数据迁移和数据备份)持久化的概念:把数据放到断电也不会丢失的设备上。Redis实现持久化有两种方法:RDB快照和AOFredis是默认做数据持久化的,默认的方式是快照(snapshotting),把内存的数据写入本地的二进制文件dump.rdb文件中。RDB快照快照持久化实现原理:Redis是由C语言实现的,redis借助了fork命令的copy on write机制。在生成快照...

2018-11-19 14:10:12 199

原创 redis宕机如何解决?如果是项目上线的宕机呢?

宕机:服务器停止服务如果只有一台redis,肯定会造成数据丢失,无法挽救多台redis或者是redis集群 ,宕机则需要分为在主从模式下区分来看:slave从redis宕机配置主从复制的时候才配置从的redis,从的会从主的redis中读取主的redis的操作日志,求达到主从复制。1)在Redis中从库重新启动后会自动加入到主从架构中,自动完成同步数据;2)如果从数据库实现了持久化,...

2018-11-19 14:09:54 8891

原创 Redis的特点

Redis为什么比MySQL快?底层原理Redis存储的是k-v格式的数据。时间复杂度是O(1),常数阶,而mysql存储数据依靠数据引擎:innodb,Myisam,两种引擎的底层实现都是使用B+TREE存放或者查找,时间复杂度是O(logn)是对数阶的。Redis会比Mysql快一点点。Mysql数据存储一般是存储在表中,设计到跨表格查找的时候较慢,通过内连接外连接,查找数据时要先对表进...

2018-11-19 14:09:24 4952

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

建立起一个TCP连接需要经过“三次握手”:1) Client首先发送一个连接试探,ACK=0 表示确认号无效,SYN = 1 表示这是一个连接请求或连接接受报文,同时表示这个数据报不能携带数据,seq = x 表示Client自己的初始序号(seq = 0 就代表这是第0号帧),这时候Client进入syn_sent状态,表示客户端等待服务器的回复2) Server监听到连接请求报文后,如同意...

2018-11-19 14:09:06 598

转载 celery

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

2018-11-19 14:08:51 248

转载 阿里云OSS上存储了什么东西?

阿里云对象存储服务(Object Storage Service,简称OSS)为您提供基于网络的数据存取服务。使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种非结构化数据文件。阿里云OSS将数据文件以对象(object)的形式上传到存储空间(bucket)中。您可以进行以下操作:创建一个或者多个存储空间,向每个存储空间中添加一个或多个文件。通过获取已上传文件的...

2018-11-19 14:08:36 455

转载 不同应用服务器,session怎么共享?

为什么会有session共享的问题?原因是把应用部署在不同的服务器上面产生出来的如何解决?主要可以考虑下面几个方法,每个方法都有优缺点,具体实施时根据业务选择:1.通过数据库mysql共享sessiona.采用一台专门的mysql服务器来存储所有的session信息。用户访问随机的web服务器时,会去这个专门的数据库服务器check一下session的情况,以达到session同步的...

2018-11-19 14:08:21 2113

转载 你们部署服务器是几台,并发量是多大;怎么进行模拟抢购的同一时间请求量是多少;怎么防止带刷(黄牛)如果说部署两台服务器 不同的进程 怎么实现乐观锁?

Django项目用到5台服务器。部署在2台上面,因为用户量比较少。模拟抢购主要解决2个问题:1.高并发对数据库产生的压力2.竞争状态下如何解决库存的正确减少("超卖"问题)对于第一个问题可以使用redis解决,避免对数据库的直接操作较少数据防护的查询压力。对于“超卖”项目中使用的是“乐观锁”解决的。防止黄牛代刷是个开放题目,下面提供几种思路:对于一个账号,一次发起多个请求。在程...

2018-11-19 14:08:04 3028

转载 图片管理为什么使用FastDFS?为什么不用云端?它的好处是什么?

FastDFS比七牛云等云端存储会便宜一些。FastDFS是开源的轻量级分布式文件存储系统。它解决了大数据量存储和负载均衡等问题。特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。优势:只能通过专用的API访问,不支持posix,降低了系统的复杂度,处理效率高支持在线扩容,增强系统的可扩展性支持软RAID,增强系统的并发处理能力及...

2018-11-19 14:07:47 14263

转载 CSDN-markdown编辑器的使用

啊Markdow的使用@TOC欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的...

2018-10-31 21:24:07 117

空空如也

空空如也

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

TA关注的人

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