系统架构
文章平均质量分 61
zkaipmoo
这个作者很懒,什么都没留下…
展开
-
scrapy抓取+coreseek搜索架构(第一版)
公司电影网站:scrapy抓取+coreseek搜索架构初步如下:1.安装scrapy:原创 2013-08-08 10:19:23 · 856 阅读 · 0 评论 -
撑起大规模PHP网站的开源工具
在了解过世界最大的PHP站点,Facebook的后台技术后,今天我们来了解一个百万级PHP站点的网站架构:Poppen.de。Poppen.de是德国的一个社交网站,相对Facebook、Flickr来说是一个很小的网站,但它有一个很好的架构,融合了很多技术,如 Nigix、MySql、CouchDB、Erlang、Memcached、RabbitMQ、PHP、Graphite、Red5以及Tsu原创 2013-12-22 15:19:44 · 874 阅读 · 0 评论 -
centos6.3安装rabbitmq实战
启用EPEL:EPEL是一个Fedora Project 推出的 EPEL(Extra Packages for Enterprise Linux),EPEL是RHEL 的 Fedora 软件仓库,把它添上,你就可以获得 RHEL AS 的高质量、高性能、高可靠性,又需要方便易用(关键是免费)的软件包更新功能安装rabbitmqwget http://mirror.neu.edu.cn/f原创 2013-12-23 23:39:48 · 1015 阅读 · 0 评论 -
haproxy+keepalived千万pv架构
haproxy+keepalived千万pv架构设计如下:原创 2014-01-19 13:47:28 · 1072 阅读 · 0 评论 -
互联网系统架构的演进
多终端接入、开放平台给互联网带来了前所未有的用户量级和访问规模,SNS网站产生了海量的UGC(用户产生内容),而且这些内容依托关 系链扩散速度之快、传播范围之广是传统网站难以想象的,海量数据的计算存储也一直是近年互联网领域的热点。本文将从发展演进的层面探讨互联网的系统架构。天下武功唯快不破网站初期的架构一般采用“短平快”的架构思路,架构以简单清晰、容易开发为第一衡量指标。互转载 2014-01-19 15:21:06 · 927 阅读 · 0 评论 -
技术思考
“客户端访问”与“服务器端响应”,犹如一场战争。初期,访问量较小,弄几台服务器随便拉起一只队伍,就能抵抗住客户端的进攻。慢慢的,访问量大起来,这时候,就需要讲究排兵布阵、战略战术、多兵种协调作战。于是,开始有了负载均衡服务器、Web服务器、缓存服务器、数据库服务器、存储服务器等多兵种;开始有了系统架构等战略战术。随着新项目和运营需求的越来越多,我们开始了多线作战。慢慢地,我总结了以下一些思考:转载 2013-10-20 23:24:57 · 900 阅读 · 0 评论 -
实战fastdfs安装以及php扩展安装
1.tracker1:192.168.0.12.tracker2:192.168.0.2strorage192.168.0.1 192.168.0.21.安装libevent网络库wget https://github.com/downloads/libevent/libevent/libevent-2.0.19-stable.tar.gz# ./configure –原创 2013-10-28 01:42:04 · 1205 阅读 · 0 评论 -
mysql MMM方案
1 MMM高可用mysql方案1.1 方案简介MMM即Master-Master Replication Manager for MySQL(mysql主主复制管理器)关于mysql主主复制配置的监控、故障转移和管理的一套可伸缩的脚本套件(在任何时候只有一个节点可以被写入),这个套件也能对居于标准的主从配置的任意数量的从服务器进行读负载均衡,所以你可以用它来在一组居于复制的服务器启原创 2013-10-09 23:01:28 · 2784 阅读 · 0 评论 -
varnish配置实战
1.安装pcre库cd pcre./configure --prefix=/usr/local/pcremake && make install2.安装varnishtar -zxvf varnish-3.0.3.tar.gzcd varnish-3.0.3export PKG_CONFIG_PATH=/usr/local/pcre/lib/pkgconfi原创 2013-11-29 16:41:24 · 1112 阅读 · 0 评论 -
一例千万级pv高性能高并发网站架构
通用千万pv架构:转载 2015-01-04 19:38:10 · 1309 阅读 · 0 评论 -
并发过高导致库存买超情况
生产环境中遇到并发过高,导致库存买超的情况。可以通过以下几种情况解决:1.使用数据库锁机制防止并发方法1 select for update;update set stock = stock - x;insert into order_list(order_id) values (1);方法2 return = update set stock = stock -x whe原创 2016-01-14 14:42:47 · 2962 阅读 · 1 评论 -
sys和cc攻击防范分享
调整系统参数挡攻击第一个参数tcp_synack_retries = 0是关键,表示回应第二个握手包(SYN+ACK包)给客户端IP后,如果收不到第三次握手包(ACK包)后,不进行重试,加快回收“半连接”,不要耗光资源。不修改这个参数,模拟攻击,10秒后被攻击的80端口即无法服务,机器难以ssh登录; 用命令netstat -na |grep SYN_RECV检测“半连接”hold原创 2016-07-20 12:03:04 · 729 阅读 · 0 评论 -
Twitter背后用到了哪些开源软件与技术?
如果没有开源软件,Twitter将不会存在。你发送和接收的每一个Tweet在移动端和PC端发送的过程中,都会需要开源软件。我们非常好奇Twitter使用了多少开源软件。除此之外,我们想要知道开源对Twitter公司的文化产生了什么影响。我们采访了Twitter公司主管开源的Manager Chris Aniszczyk,来和我们大家分享Twitter的开源故事。Aniszczxk将会在本月转载 2013-12-22 15:21:20 · 1615 阅读 · 0 评论 -
twitter技术架构
随着信息爆炸的加剧,微博客网站Twitter横空出世了。用横空出世这个词来形容Twitter的成长,并不夸张。从2006年5月Twitter上线,到2007年12月,一年半的时间里,Twitter用户数从0增长到6.6万。又过了一年,2008年12月,Twitter的用户数达到5百万。[1]Twitter网站的成功,先决条件是能够同时给千万用户提供服务,而且提供服务的速度要快。[2,3,4转载 2013-12-16 23:03:02 · 1811 阅读 · 0 评论 -
服务器集群负载均衡(F5,LVS,DNS,CDN)区别以及选型
服务器集群负载均衡(F5,LVS,DNS,CDN)区别以及选型下面是“黑夜路人”的《大型网站架构优化(PHP)与相关开源软件使用建议》=======================================F5全称: F5-BIG-IP-GTM 全球流量管理器.是一家叫F5 Networks的公司开发的四~七层交换机,软硬件捆绑.据说最初用BS原创 2013-12-08 23:11:51 · 1128 阅读 · 0 评论 -
mysql Heartbeat主主同步方案
Heartbeat高可用Mysql主主同步方案1.1 方案简介本方案使用heartbeat+mysql主主同步来实现mysql数据库的高可用, 当服务器或者master的heartbeat宕掉以后会自动切换到backup上,服务器或者master的heartbeat恢复以后可以自动切换回来,master继续提供服务。1.2 方案优缺点Ø 优点:配置简单、,可配置主机恢原创 2013-10-09 22:50:10 · 2746 阅读 · 0 评论 -
mysql Lvs+Keepalived+Mysql单点写入主主同步
Lvs+Keepalived+Mysql单点写入读负载均衡主主同步高可用方案1.1 方案简介Lvs+keepalived作为目前比较流行的高可用解决方案,lvs提供负载均衡,keepalived作为故障转移,提高系统的可用性。但是一般的mysql高可用为了实现mysql数据的一致性,一般都是采用单点写入,本方案采用keepalived中的sorry_server来实现写入数据库为单点原创 2013-10-09 22:46:15 · 2813 阅读 · 0 评论 -
几种网络负载均衡方法比较
现在网络中常见的的负载均衡主要分为两种:一种是通过硬件来进行进行,常见的硬件有比较昂贵的NetScaler、F5、Radware和Array等商用的负载均衡器,也有类似于LVS、Nginx、HAproxy的基于Linux的开源的负载均衡策略,商用负载均衡里面NetScaler从效果上比F5的效率上更高。对于负载均衡器来说,不过商用负载均衡由于可以建立在四~七层协议之上,因此适用 面更广所以原创 2013-10-11 17:52:37 · 1886 阅读 · 0 评论 -
电影网站站架构(第一版)
有时间写一下公司用6台服务器搭建的一个电影站点小集群架构。原创 2013-09-30 15:40:29 · 4644 阅读 · 0 评论 -
服务器同步工具 sersync
sersync主要用于服务器同步,web镜像等功能。基于 boost1.41.0,inotify api,rsync command.开发。目前使用的比较多的同步解决方案是inotify-tools+rsync ,另外一个是google开源项目Openduckbill(依赖于inotify- tools),这两个都是基于脚本语言编写的。相比较上面两个项目,本项目优点是:原创 2013-10-14 00:21:39 · 934 阅读 · 0 评论 -
CentOS 安装Gearman及其PHP扩展
一、简介Gearman是一个分发任务的程序架构,由三部分组成:Gearman client:提供gearman client API给应用程序调用。API可以使用C,PHP,PERL,MYSQL UDF等待呢个语言,它是请求的发起者。Gearman job server:将客户端的请求分发到各个gearman worker的调度者,相当于中央控制器,但它不处理具体业务逻辑。Gear原创 2013-10-15 18:05:05 · 2472 阅读 · 0 评论 -
Sersync服务器同步程序 项目简介与设计框架
项目简介:本项目利用inotify与rsync对服务器进行实时同步,其中inotify用于监控文件系统事件,rsync是目前广泛使用的同步算法,其优点是只对文件不同的部分进行操作,所以其优势大大超过使用挂接文件系统的方式进行镜像同步。目前使用的比较多的同步程序版本是inotify-tools,另外一个是google开源项目Openduckbill(依赖于inotify-tools),这两个都是转载 2013-10-20 18:23:15 · 908 阅读 · 0 评论 -
图片分布式介绍
由于网站使用nfs共享方式保存用户上传的图片,附件等资料,然后通过apache下载的方式供用户访问,在网站架构初期,使用这种简单的方式实现了静态资源的读写分离,但随着网站数据量的增加,图片服务器渐渐成为整个网站的短板,缘次催生了使用fastfds的想法,故而先进行一番简单的测试!FastDFS提供Java和PHP等语言的客户端API。可以到FastDFS在Google Code的项目主页原创 2013-10-20 18:05:00 · 1348 阅读 · 0 评论 -
网站架构常用的优化手段
机房的选择在选择机房的时候,根据网站用户的地域分布,可以选择网通或电信机房,但更多时候,可能双线机房才是合适的。越大的城市,机房价格越贵,从成本的角度看可以在一些中小城市托管服务器,比如说北京的公司可以考虑把服务器托管在天津,廊坊等地,不是特别远,但是价格会便宜很多。带宽的大小通常老板花钱请我们架构网站的时候,会给我们提出一些目标,诸如网站每天要能承受100万PV的访问量等等。这时原创 2013-10-20 23:05:31 · 1002 阅读 · 0 评论 -
查看tcp状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 关于TCP状态的变迁,可以从下图形象地看出: 状态:描述 CLOSED:无连接是活动的或正在进行 LISTEN:服务器在等待进入呼叫 SYN_RECV:一个连接请求已经到达,等待确认 SYN_SENT:应用已经开始,原创 2013-10-21 00:42:28 · 966 阅读 · 0 评论 -
电影网站架构第二版一点改进
电影网站第二版架构改进原创 2013-10-26 00:09:27 · 1137 阅读 · 0 评论 -
Zookeeper初探
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Zookee原创 2013-12-08 21:51:08 · 899 阅读 · 0 评论 -
数据库分表后,并发环境下,生成全局id生成的几种方式
1.使用redis锁机制 在 Redis 里,所谓 SETNX,是「SET if Not eXists」的缩写,也就是只有不存在的时候才设置,可以利用它来实现锁的效果,不过很多人没有意识到 SETNX 有陷阱!比如说:某个查询数据库的接口,因为调用量比较大,所以加了缓存,并设定缓存过期后刷新,问题是当并发量比较大的时候,如果没有锁机制,那么缓存过期的瞬间,大量并发请求会穿透缓存直接查询数据库,造成原创 2016-09-06 10:48:41 · 557 阅读 · 0 评论