自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 分布式系统的监控和可维护性

<br />当一个100万行以上代码的分布式系统或者复杂的生产系统部署上去后,监控和维护便会成为很大的问题,<br />如旺旺/QQ 这样的大型IM系统,或者 Alimail这样的邮件系统,以及taobao.com这样的网站。<br />当生产系统中的进程以百为单位时,没有很好的监控和维护系统,PE人员的维护将成为灾难。如一次大的升级或者<br />机房搬迁非常容易出问题。<br /> <br />为了解决该问题,需要系统的架构师在设计系统的开始就需要考虑维护和升级问题。解决的办法为<br />系统自带监控

2011-03-06 15:10:00 4155 8

原创 Megastore看后有感

<br />今天有空看了一下Megastore的原理,发现我在Alimail中设计的东西跟Megastore基本上是一样的,只是由于项目时间关系,没有时间变成SQL语句。如EntityGroups就相当于Partition,如MBoxGroups,ChildTable相当于逻辑子表,Alimail中的基于Key的Transaction相当于简化版的Transaction,符合ACID;PageIndex相当于Megastore中的LocalIndex.<br /> <br />目前Alimail中没有实现的

2011-02-26 12:36:00 2378 3

原创 使用Apache对网站的并发请求进行控制,防止网站瘫痪

 由于项目需要, 可能对Web服务的并发请求产生压力,因此想到了在Apache层进行请求控制的方法.由于已经有一个mod_limitipconn 可以用来进行并发连接控制, 但由于起用了KeepAlive,因此还需要对并发请求总数进行控制,并对超做并发请求后,把请求重定向到某个页面的业务需要,因此基于mod_limitipconn,进行修改, 以满足业务需要.配置示例如下:Extend

2008-11-28 15:41:00 3132 1

原创 未来几年上市潮的看法

<br />     随着互联网的带宽越来越大,以及智能机的普及和移动网络带宽的提高,到2014年左右基于HTML5的Mobile上的应用将<br />普及,现在抓住Mobile的创业型公司在14年将获丰收,迎来上市高峰。因此现在转向HTML5(Iphone,Andr)不失为一个好的时机,<br />现在高端用户一般买的都是3000以上的支持HTML5的手机,通过先专门为高端用户提供App服务,转而通过口碑相传,几年之后所有的手机都支持HTML5的时候自然用户群就起来了。<br /> <br /> <br

2011-03-18 21:29:00 1534 1

原创 存储的分类设计考虑

现实中,对于存储的需求基本上可以归为3类1: Offline数据分析用的数据,如网站的访问日志分析,Online数据库里的数据的统计分析这类数据的量一般很大,对于大型互联网站来说是PB级单位,一般使用类似Hadoop/Hive之类的技术来分析是Offline分析,对于响应时间要求比较低。对于这类数据的存储在设计的时候考虑使用SATA盘,每台机器配6~12块1(2)TB的SATA盘,由于单块SATA盘的顺序读写能力基本上可以达到60MB/s以上,所以系统设计的时候需要充分考虑磁盘的利用;最好的算法是单个磁盘同

2011-03-17 21:33:00 1083

原创 Java杂项

<br />1: Jboss 与 Mod_jk的兼容性问题<br /> <br />Jboss4.2 以上版本的Connector与mod_jk存在兼容性问题,会导致随机Hang住;<br />只有4.05GA带的tomcat connector版本才没问题。该问题当初查了一个星期才确定是Connector问题,<br />之前一直以为是我们自己的程序代码有BUG。<br /> <br />2:JDK 1.6 版本对于Epoll的处理有bug,导致一些memcache的java 库出现CPU 100%<br

2011-03-06 14:50:00 3283 5

原创 libmemcached的Bug Patch

<br />系统设计开发中需要Cache功能,使用了memcached作为Cache,但由于整个系统既有Java,又有C++,所以C++的Lib使用了开源的libmemcached,就懒得重新写一套Cache了。在测试的时候发现Libmemcached有BUG,会导致App Hang。花了半天时间看了一下Code,确实有BUG,对于网络方面的异常处理有问题,把Patch发给libmemcached.org,没人理。为了让用该Lib的同学们避免该问题,特Share了出来,blog里找不到可以上传附件的地方,只

2011-02-26 12:54:00 1798 3

原创 使用数组方式访问Oracle,提高性能

 Oracle的存储过程支持数组, 这样对于批量数据的操作,可以大大提高性能. 如需要插入1000条记录, 表test_info结构为:--------------------------------------------------------------------id_seq number, login_id varchar(64), info varchar(100) -

2008-11-19 11:48:00 3520 2

原创 mysql sort 性能优化

    这段时间mysql 数据库的性能明显降低,iowait达到了30, 响应时间明显变长.  通过show processlist 查看,发现有很多session在处理sort 操作, 跟DBA一起调试优化,增大sort_buffer_size 好象效果也不大, 通过查看监控,也没发现有硬盘排序. 我怀疑是sort导致性能下降,固让开发修改程序, sort由程序来处理. 星期五发布后,今天发现

2008-11-17 14:45:00 12626

原创 使用Mysql搭建简单的可持续的Cache系统

       过段时间旺旺要搞运营活动了,这两天在设计系统的时候有个需求,需要实现半小时内的数据更新500万次左右,数据量不大,最多一千万; 使用数据库肯定是实现不了,需要使用Cache系统来延迟导入到DB中。但普通的memcache由于数据是存在于内存中,那么当程序crash或则机器down的时候,数据将丢失,可靠性不能满足。 自己开发一套pesistented memcache,但需要时间开发

2008-11-16 14:27:00 2089 1

原创 lighttpd VS ngix 性能比较,技术架构比较

      最近在公司里进行了一次深入HTTP分享,有同事提到了lighttpd在处理大文件时性能很差,不如ngix. 之前也没有对ngix研究过,所以无法评估.加上这么多年的linux上大型系统的开发经验和仔细研究过lighttpd 的代码,当时对同事的答复是估计ngix也提高不了到哪里去,最多10%,只是代码写法的一点差异. 同事们不太相信. 结束后上google查了一下ngix的资料,并下载

2008-11-04 11:13:00 14847 9

原创 搭建一套简单的CDN网络

目前对于CDN网络搭建技术有很多成熟的商业方案,对于资金受限的网站可能无法自己搭建或购买。这里提供了一套简单的实现CDN网络的技术架构,所使用的软件全部是开源高效且免费的。   根据CDN网络技术原理,必须有一个动态DNS服务器,开源的可以使用bind,免费,而且原代码开放。不修改代码,bind基本上可以实现简单的动态DNS解析功能。需要更强的自定义功能,可以自己修改代码实现。    假设

2008-11-02 11:50:00 15792

原创 MapDDB:一种按行关键字的分布式关系数据库系统

MapDDB: 是一种按行关键字散列的分布式关系数据库系统,主要用于解决数据库系统的水平扩充系统。在真实的互联网业务应用系统中,经常会碰到由于业务规模的增长,导致原有系统的数据库处理能力跟不上业务规模的增长,一般情况下只能不停地升级硬件系统,如从PC服务器升级到小型机,再对小型机进行升级,到中大型机器,或使用数据库系统自带的多节点方式,如使用Oracle,则可以使用RAC+SAN的方式,但一个RA

2008-10-22 19:29:00 3062 5

原创 构建10亿级PV的大型网站设计要点(二):Web服务器层

 第一篇了介绍了网络架构的设计后,这里主要介绍接入层的服务器架构设计。假设该网站使用Java 开发业务应用。    接入层可以按照应用分类,也可以按照部署分类分层。先按照部署分类设计,该分类一般把接入层分为三层:第一层是LoadBalance,用于管理一个VIP下多台接入应用服务器;第二层是Apache之类HTTP服务器,用来对静态资源的加速处理;第三层是Java应用服务器,如Jboss, W

2008-10-22 09:09:00 4322

原创 构建10亿级PV的大型网站设计要点(一): 网络层

网络层:    到了这个级别的网站,他的用户必定是面向全国,甚至面向全球,因此网络的优化设计就非常重要。尤其是国内的网络非常差,不同网络运营商之间的互通非常差,以及骨干网的流量目前已经成为瓶颈。根据真实数据测试,即使网站服务器性能非常高,但相当地区的用户体验还是非常差,原因是花在用户机器到服务器之间的网络上的开销占据了整个网页点击到显示在用户机器上的80%以上,甚至有些达95%以上。一个网页显

2008-10-21 20:13:00 4416

原创 深入Apache229Event模式续

   从2.2x开始,Apache使用了Event模式,在 Linux,使用Epoll+TCP 延迟触发事件的方式来提高服务器的高并发连接下的性能. Event模式是在原有的Worker模式基础上改进,因此Event模式的参数与Worker模式基本一致.    每个进程启动一个单独的处理网络事件的线程,叫做listener_thread;他负责监控listen_fd和其他所有的已

2008-10-08 15:45:00 2999

原创 域名解析应用相关知识

域名解析应用相关知识 一般使用gethostbyname系统函数来解析域名得到IP地址,但在linux下,gethostbyname是多线程不安全的,该函数使用了内部的静态变量,因此在多个线程中使用该函数将导致无法预知问题发生(如Crash或则解析失败),推荐使用gethostbyname_r或gethostbyaddr,这两个函数的功能与gethostbyname一样,除了是多线程安全而

2008-10-07 16:24:00 4178

原创 Apache2.2.9 支持大并发量(60000以上)

 2008-6-13 发布了2.2.9版本, 2.2系列是2系列的增强,以及一些内核模块的重新设计和革新,主要增强特性如下: 1: 最主要的增强是使用了新event MPM模型,在Linux上引入了EPOLL(早该引入了), 即支持海量并发连接数,也就是说每个Apache子进程支持65535个TCP连接,这样若配置多个子进程,则支持更多了连接了(当然内核参数需要调整一下)    另外修

2008-09-03 10:43:00 9782

原创 高性能计算-ICE 性能测试

介绍:      ICE(Internet Communication Engine),由ZeroC公司开发的一个中间件,是在CORBA的基础上进行演进而来,采用接口定义生成客户端和服务器端成根的方法来实现RPC通信,目前支持的语言有C++, Java, PHP, Ruby,.NET和Python,License方式有GPL和商业License两种,如果是在同一公司内部使用,不会分发给用户,因

2008-09-03 10:28:00 5696

原创 HTML5 Draft 的一些新特性介绍

 HTML4.x版本自从1999年正式发布后,直到现在还没有推出新版本支持新业务的需要,直到现在HTML5 Draft的推出,让我们看到了新的希望,估计HTML5在今后几年内将会逐步在各大浏览器中实现,如目前正在开发的IE8据说将支持部分HTML5特性,如包含跨文档传送,客户端存储API,网络连接检测和部分前进/后退栈的特性;当然firefox 肯定也会支持,如3.x版本已经支持HTML5

2008-09-03 10:25:00 1150

原创 Google GFS

 适用点:    1 文件比较大,一般为100MB及以上    2 整个系统里文件的数目不超过1000万    3 适合写一次,读多次的方式,文件很少做修改,顶多是append方式    4 适合搜索引擎Build出来的Document 作为存储    5 适合历史归档文件的数据仓库存储 特点:    1: 单个Master, master上只存储文件和chunk的

2008-07-27 15:14:00 1020

原创 mysql 编码问题 latin1(iso8859)

  由于项目环境的缘故, 在java项目中使用了ibatis, 而ibatis已经有个数据源是aiscii (iso8859)编码,因此mysql 数据库必须使用latin1编码, mysql客户端库也使用latin1编码,正常情况下,使用都正常,但发现有几个数据很奇怪,如只过滤"淘_淘"的数据,结果把"象_王"的数据查了出来, 和DBA一起搞了半天,使用hex函数查看"淘_淘"和"象_王"的as

2008-07-25 16:21:00 2859

原创 hadoop 又一个GFS

hadoop 实现了google的GFS,目前版本基本功能已经完成,负载均衡功能还没实现;master是单点,存在问题,需要增强http://hadoop.apache.org/core/docs/current/hdfs_design.html   

2008-07-13 11:04:00 1429

原创 Mysql 下的事务隔离级别应用问题

前段时间使用Mysql 5.0开发东西,使用了Innodb作为存储引擎,使用DBA配置的mysql的,对内存参数做了些调整。由于5.0,使用Innodb支持事务,因此在程序中使用了事务,不是autocommit,是显式事务,结果发现有多个程序同时修改数据时,有时另外的程序读不到最新的数据,有时又可以,刚开始还以为是自己程序有问题,查了一个多小时,发现程序应该没问题,然后想到用mysql自带命令

2008-07-12 12:19:00 1481 2

libmemcached0.43patch

Fix libmemcached0.43会导致hang的bug

2011-02-26

空空如也

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

TA关注的人

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