摘要:
ab是什么 ab是Apache附带的一个压力测试工具,它非常容易使用 ab不像LoadRnner、Jmeter等那么专业,但它足够轻便,只需一条命令,就可以了解到web服务器处理请求的一些基本信息 ab能做什么 可以使用ab来模拟N个用户发送N个请求,结果数据可以告诉我们: 处理这些请求需要多少时间 阅读全文
摘要:
要想优化一条Query,就须要清楚这条Query的性能瓶颈到底在哪里,是消耗的CPU计算太多,还是需要的IO操作太多?要想能够清楚地了解这些信息,可以通过Query Profiler功能得到 用法 (1)通过执行“set profiling”命令,可以开启关闭QueryProfiler功能 mysq 阅读全文
摘要:
原创 2016-08-09 杜亦舒 性能与架构 一主一从 是最基础的复制结构,用来分担之前单台数据库服务器的压力,可以进行读写分离 一主多从 一台 Slave 承受不住读请求压力时,可以添加多台,进行负载均衡,分散读压力 还可以对多台 Slave 进行分工,服务于不同的系统,例如一部分 Slave 阅读全文
摘要:
2015-09-14 分布式系统架构知识 Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用。目前越来越多的开源分布式处理系统如Cloudera、Apache Storm、Spark都支持与Kafka集成。InfoQ一直在紧密关注Kaf 阅读全文
摘要:
CDN是什么? 谈到CDN的作用,可以用8年买火车票的经历来形象比喻: 8年前,还没有火车票代售点一说,12306.cn更是无从说起。那时候火车票还只能在火车站的售票大厅购买,而我所住的小县城并不通火车,火车票都要去市里的火车站购买,而从县城到市里,来回就是4个小时车程,简直就是浪费生命。后来就好了 阅读全文
摘要:
一、秒杀业务为什么难做 1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息); 2)微博系统,每个人读你关注的人的数据,一个人读多个人的数据; 3)秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。 例如:小米手机每周二的秒杀,可能手机只有1 阅读全文
摘要:
CDN的全称是Content Delivery Network,即内容分发网络 CDN的目的就是提高用户访问网站的响应速度 提速的基本思路 例如你的网站服务器是在北京,这时有一个广州的用户来访问你的网站 当你的网站没有使用CDN时,用户是直接通过网络读取你的服务器,这个过程就涉及到了一些网络问题,例 阅读全文
摘要:
1. HTTP重定向 当用户发来请求的时候,Web服务器通过修改HTTP响应头中的Location标记来返回一个新的url,然后浏览器再继续请求这个新url,实际上就是页面重定向。通过重定向,来达到“负载均衡”的目标 这个方式非常容易实现,并且可以自定义各种策略,但是,它在大规模访问量下,性能不佳, 阅读全文
摘要:
随着系统架构的逐渐演化,服务器的数量和结构会越来越复杂,例如web服务器集群的搭建,提高了系统的性能,同时也提高了系统维护的复杂度,我们需要对集群中各台服务器进行监控,来保证为用户提供服务的是正常运行的服务器,整体系统的可用性就至关重要 Keepalived提供了很好的高可用性保障服务,它可以检查服 阅读全文
摘要:
session共享方案解决了集群中各服务器session不再独立的问题,但有些场景也不适合用session共享来处理 例如: (1)密切相关的多次交互 希望由同一台服务器处理 电子商务系统中,一个客户与服务器经常会经过好几次的交互过程才能完成一笔交易,由于这几次交互过程是密切相关的,完成某一个交互步 阅读全文
摘要:
当网站业务规模和访问量的逐步增大,原本由单台服务器、单个域名组成的网站架构可能已经无法满足发展需要 此时会购买更多的服务器,并且以频道化的方式启用多个二级子域名,然后根据业务功能将网站分别部署在独立的服务器上,或者通过负载均衡技术让多个频道共享一组服务器 如果我们把网站程序分别部署到多台服务器上,而 阅读全文
摘要:
Keepalived是一款优秀的实现高可用的软件,它运行在LVS之上,它的主要功能是实现真实机的故障隔离及负载均衡器间的失败切换 Keepalived专门用来监控集群系统中各个服务节点的状态,它根据TCP/IP参考模型的第三、第四和第五层交换机制检测每个服务节点的状态 如果有一台Web服务器死机,或 阅读全文
摘要:
2015-03-26 分布式系统架构知识 一般对负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术。具体的应用需求还得具体分析,如果是中小型的Web应用,比如日PV小于1000万,用Nginx就完全可以了;如果机器不少,可以用DNS轮询,LVS所耗费的机器还是比较多的;大型网站或重要的 阅读全文
摘要:
2015-04-01 分布式系统架构知识 目录: 1、大型网站架构的目标与挑战 2、网站架构演变及其技术脉络 3、架构设计理论与原则 何为“大型”网站? 没有统一的判断标准,流量大小是一个重要指标(日均流量至少IP>1,000,000才算大型网站) 一、大型网站架构的目标与挑战 每个目标背后面临着技 阅读全文
摘要:
2015-06-20 分布式系统架构知识 移动互联网、云计算和大数据的成熟和发展,让更多的好想法得以在很短的时间内实现为产品。此时,如果用户需求抓得准,用户数量将很可能获得爆发式增长,而不需要像以往一样需要精心运营几年的时间。然而用户数量的快速增长(尤其是短时间内的爆发式增长),通常会让应用开发者有 阅读全文
摘要:
2015-07-07 分布式系统架构知识 前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上。于是设计了如下的架构。 架构简介 此架构主要是由keepalived实现双机高可用,维护了一个外网VIP,一个 阅读全文
摘要:
2015-08-02 分布式系统架构知识 简介 MySQL集群是一种在无共享架构(SNA,Share Nothing Architecture)系统里应用内存数据库集群的技术。这种无共享的架构可以使得系统使用低廉的硬件获取高的可扩展性。 MySQL集群是一种分布式设计,目标是要达到没有任何单点故障点 阅读全文
摘要:
原创 2016-04-19 高可用小编 高可用架构 有人的地方,就有江湖 有江湖的地方,就有纷争 问题的起源 在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的一致性? 具体业务场景如下,比如一个业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、 阅读全文
摘要:
什么是粘包、拆包? 对于什么是粘包、拆包问题,我想先举两个简单的应用场景: 对于第一种情况,服务端的处理流程可以是这样的:当客户端与服务端的连接建立成功之后,服务端不断读取客户端发送过来的数据,当客户端与服务端连接断开之后,服务端知道已经读完了一条消息,然后进行解码和后续处理...。对于第二种情况, 阅读全文
摘要:
2016-04-07 Dong 架构说 1. 背景介绍 许多公司的平台每天会产生大量的日志(一般为流式数据,如,搜索引擎的pv,查询等),处理这些日志需要特定的日志系统,一般而言,这些系统需要具有以下特征: (1) 构建应用系统和分析系统的桥梁,并将它们之间的关联解耦; (2) 支持近实时的在线分析 阅读全文