web后台
文章平均质量分 82
key_next
现就职于Zoom,历经有赞会员中台、阿里交易中台、滴滴服务生态中心
展开
-
高并发的下单、抢票等问题解决方法的原理分析
①为什么不能用数据库自带的表锁功能?由于下单、抢票等是要写入数据库的,对数据库进行修改,所以采用的写锁,这样,被锁定的数据表就无法被其他地方使用,无论修改还是查询。比如一位用户购买商品时,锁定了商品表,另一位用户在浏览商品,则不能再去访问这张数据表了,不能访问表,意味着这一段时间加载不出商品,而高并发情况下,有很多的人下单。浏览商品,这段很短的锁表时间被放大化,会拖延整个网站的访问速度。②...原创 2016-05-20 21:02:41 · 12737 阅读 · 7 评论 -
幂等概念及使用普及
前言:应TL的邀请,在团队内做一次幂等相关的总结和分享一、幂等概念及使用1、什么是幂等?首先,我们需要了解下幂等的概念:https://baike.baidu.com/item/%E5%B9%82%E7%AD%89/8600688?fr=aladdin注意这句话:“一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同”。这里的意思就是用户对于同一种操作发起的...原创 2019-08-18 15:59:17 · 2897 阅读 · 0 评论 -
Zookeeper概念知识
课题:zk选举算法、ZAB原子广播协议如何实现的,CAS、Paxos1、Zookeeper简介 Zookeeper是一个高效的分布式协调服务,它暴露了一些公用服务,比如:命名/配置管理/同步控制/群组服务等。我们可以使用ZK来实现比如:达成共识/集群管理/Leader选举等。 Zookeeper是一个高可用的分布式管理与协调框架,基于ZAB算法(原子消息广播...原创 2018-11-13 09:44:11 · 1306 阅读 · 0 评论 -
Apache和Nginx运行原理解析
Web服务器Web服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。应用层使用HTTP协议。HTML文档格式。浏览器统一资源定位器(URL)。Web服务器常常以B/S(Browser/Server)方式提供服务。浏览器和服务器的交互方式如下: GET /index.php HTTP/1.1 +-----转载 2016-12-20 21:02:32 · 284 阅读 · 0 评论 -
PHP高效率写法(详解原因)
1.尽量静态化:如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍。当然了,这个测试方法需要在十万级以上次执行,效果才明显。其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静态方法可以直接调用,实例方法要先成生实例,通过实例调用方法,静态速度很快,但是多了会占内存。任何语言转载 2016-11-08 18:27:53 · 388 阅读 · 0 评论 -
PHP高手干货分享:不能不看的50个细节!
1、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的”函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。2、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。3、$row[‘id’]转载 2016-11-08 18:11:36 · 279 阅读 · 0 评论 -
nginx 与fastcgi、及动态语言配合的工作原理
一、什么是 FastCGIFastCGI是一个可伸缩地、高速地在HTTP server和动态脚本语言间通信的接口。多数流行的HTTP server都支持FastCGI,包括Apache、Nginx和lighttpd等,同时,FastCGI也被许多脚本语言所支持,其中就有PHP。FastCGI是从CGI发展改进而来的。传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序转载 2016-12-19 21:43:15 · 478 阅读 · 0 评论 -
Cookie与Session的区别-总结很好的文章
本文分别对Cookie与Session做一个介绍和总结,并分别对两个知识点进行对比分析,让大家对Cookie和Session有一个更深入的了解,并对自己的开发工作中灵活运用带来启示。cookie机制Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。IETF RFC 2965 HTTP State Management Mechanism 是通用coo转载 2016-12-24 16:58:36 · 251 阅读 · 0 评论 -
单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构
前言MySQL数据库大家应该都很熟悉,而且随着前几年的阿里的去IOE,MySQL逐渐引起更多人的重视。MySQL历史1979年,Monty Widenius写了最初的版本,96年发布1.01995-2000年,MySQL AB成立,引入BDB2000年4月,集成MyISAM和replication2001年,Heikki Tuuri向MySQL建议集成InnoDB2003发布5.0,提供了视图、存...转载 2018-04-15 20:21:10 · 11779 阅读 · 4 评论 -
亿级Web系统搭建——单机到分布式集群
当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题。为了解决这些性能压力带来问题,我们需要在Web系统架构层面搭建多个层次的缓存机制。在不同的压力阶段,我们会遇到不同的问题,通过搭建不同的服务和架构来解决。Web负载均衡 Web负载均衡(Load Balancing),简单地说就是给我们的服转载 2016-10-26 18:08:38 · 209 阅读 · 0 评论 -
php应该使用缓存和连接池
从PHP诞生之日起,PHP就开始在Web应用方面为广大的程序员服务。同时,作为针对Web开发量身定制的脚本语言,PHP一直秉承简单、开源的思想,这也使得PHP得以快速的发展,并且大力地推动Web2.0的出现与发展。但是,长期以来,PHPer(PHP Programmers)被认为是处于草根阶层的程序员,被认为是技术含量少,层次低的程序员。这点在国内尤其突出。记得一个技术主管说过这样一个转载 2016-10-26 15:46:23 · 588 阅读 · 0 评论 -
实现登录成功后跳转到登录前的页面
有时,一些网站的部分操作需要登录才能访问。如果跳转到登录界面登录成功后,怎样才能返回到登录之前的界面呢?很简单,我们在代码部分中添加一部分很少的代码即可。在从一个页面跳转到登录界面之前的代码,我们用session保存当前界面的url信息,在跳转到登录界面,登录成功后的代码中,判读是否有这个session信息,如果有,则跳转到session所存的url。原创 2016-05-31 20:57:30 · 7423 阅读 · 0 评论 -
解决服务器缓存失效后可能导致的雪崩问题(thinkphp为例)
1、什么是雪崩问题? 为了加快网站访问速度,也为了减少服务器资源消耗和压力,将页面在一段时间内静态化、设置缓存是我们常用的手段,这样在缓存失效前,就不用再去访问数据库。但是当缓存失效的一瞬间,服务器需要访问数据库,重新生成缓存文件。假如一个网站的并发性很高,这一瞬间的访问量可能也很高,而数据库是非常脆弱的,对数据库过高的访问请求数可能会导致数据库直接挂掉,造成服务器瘫痪,这就是缓存失...原创 2018-04-15 20:23:00 · 3923 阅读 · 1 评论 -
有赞透明多级缓存解决方案(TMC)
前言:原文发表于“有赞技术博客”,笔者有幸作为TMC中间件的开发组成员,深度参与了该项目的研发,希望给更多技术人带来新的思考。一、引子1-1. TMC 是什么TMC ,即“透明多级缓存( Transparent Multilevel Cache )”,是有赞 PaaS 团队给公司内应用提供的整体缓存解决方案。TMC 在通用“分布式缓存解决方案(如 CodisProxy + R...转载 2019-08-18 16:21:44 · 805 阅读 · 0 评论