随笔分类 -  Web优化

摘要:摘要: 1、大表 左关联 小表,很慢;小表 左关联 大表,很快。2、走出自身的思想误区,应对底层有深入理解才能正确使用。 背景 前几天在项目上线过程中,发现有一个页面无法正确获取数据,经排查原来是接口调用超时,而最后发现是因为SQL查询长达到20多秒而导致了问题的发生。 这里,没有高深的理论或技术, 阅读全文
posted @ 2017-05-19 11:17 chenjiacheng 阅读(5016) 评论(0) 推荐(0)
摘要:涉及抢购、秒杀、抽奖、抢票等活动时,为了避免超卖,那么库存数量是有限的,但是如果同时下单人数超过了库存数量,就会导致商品超卖问题。那么我们怎么来解决这个问题呢,我的思路如下(伪代码): 当没有并发时,上面的流程看起来是再正常不过了,假设同时两个人下单,而库存只有1个了,在sql1阶段两个人查询到的库 阅读全文
posted @ 2017-05-08 17:04 chenjiacheng 阅读(1152) 评论(0) 推荐(0)
摘要:一、Sphinx简介 1. Sphinx是什么? 中文名:全文索引引擎。只支持英文和俄文。但是只要有相应的语言包也可支持任何语言。国内有一团队在Sphinx基础上封装了一个带中文包的软件:coreseek。 2. 为什么要用Sphinx? 在mysql数据库中,对于如下sql语句,select * 阅读全文
posted @ 2017-04-22 12:04 chenjiacheng 阅读(4445) 评论(1) 推荐(1)
摘要:limit offset,N 当offset非常大时,效率极低。 原因是:mysql并不是跳过offset行,然后单取N行。而是取offset+N行。 返回时,放弃前offset行,返回N行。效率较低,当offset越大是,效率越低。 优化方式: 1. 非技术手段限制分页,比如百度翻页一般不会超过7 阅读全文
posted @ 2017-03-12 21:53 chenjiacheng 阅读(425) 评论(0) 推荐(0)
摘要:索引覆盖是指:如果查询的列恰好是索引的一部分,那么查询只需要在索引文件上进行,不需要回行到磁盘再找数据,这种查询速度非常快,称为“索引覆盖” 索引覆盖就是,我要在书里 查找一个内容,由于目录写的很详细,我在目录中就获取到了,不需要再翻到该页查看。 如果在一个sql语句中,经常查询某些列,就可以把某些 阅读全文
posted @ 2017-03-08 18:05 chenjiacheng 阅读(1002) 评论(0) 推荐(0)
摘要:页面静态化技术:就是把一个动态的页面变成一个静态页面,后续用户直接访问静态页面。 页面静态化技术分为两种:真静态和伪静态。 真静态:把一个动态的页面,转成一个静态的页面,即.html文件。使用ob缓存技术来实现 伪静态:所谓伪静态是从url地址上看是一个静态页面,但是实际上还是对应一个动态页面。使用 阅读全文
posted @ 2017-02-06 16:57 chenjiacheng 阅读(1383) 评论(0) 推荐(0)
摘要:一、规范说明 性能是网站运行是否良好的关键因素,网站的性能与效率影响着公司的运营成本及长远发展,编写出高质高效的代码是我们每个开发人员必备的素质,也是我们良好的职业素养。 二、影响性能的因素 A、商业需求 B、Web 服务器 C、DataBase 服务器 D、操作系统 E、客户端请求 F、程序/语言 阅读全文
posted @ 2016-11-07 10:50 chenjiacheng 阅读(176) 评论(0) 推荐(0)
摘要:一、衡量大型网站的标准 pv值(page views):页面的浏览量(一个网站的所有页面,在一天内,被浏览的总次数,达到千万级别,几百万也可以) uv值(unique visitor):独立访客(一个网站,在一天内,有多少个用户访问过我们的网站,几十万以上) 独立ip:(一个网站,在一天内,有多少个 阅读全文
posted @ 2016-11-04 11:41 chenjiacheng 阅读(575) 评论(0) 推荐(0)
摘要:设计角度:存储引擎的选择,字段类型选择,范式。自身特性:索引,查询缓存,分区分表,存储过程,sql语句优化配置。架构体系:主从复制(读写分离)。硬件升级:CPU、内存等。 阅读全文
posted @ 2016-08-24 08:07 chenjiacheng 阅读(208) 评论(0) 推荐(0)