系统架构设计理论与原则、负载均衡及高可用系统设计速记
摘要:一、系统架构设计理论与原则这里主要介绍几种常见的架构设计理论和原则,常见于大中型互联系统架构设计。(一)、CAP理论1、什么是CAP著名的CAP理论是由Brewer提出的,所谓CAP,即一致性(Consistency)、可用性(Availability)和分区容错性(Partition Tolera...
阅读全文
posted @
2015-06-03 18:12
JeffWong
阅读(13773)
推荐(8) 编辑
整理大型网站架构必知必会的几个服务器知识
摘要:最近看书及系统开发部署过程中的一些心得,再对照自己之前的从业经验,很多都是听闻而已,当然也有一些已经很熟悉,有的正在搞,有的未来希望可以着手付诸实施,留此存照。1、负载均衡服务器负载均衡服务器主要作用是实现某些类型服务器的规模扩展。比如对于系统前端的web服务器和后端的数据库服务器,想通过加服务器实...
阅读全文
posted @
2014-08-29 20:50
JeffWong
阅读(7702)
推荐(12) 编辑
关于反模式、设计和复用的一些想法
摘要:在维护系统的时候发现有个工作经验超级丰富的同事在C#代码中使用了goto,这段代码是一个很长的方法,goto的作用是为了复用两段逻辑。当我第一次看到goto是为了复用一段C#代码的时候感觉无比诡异,总是觉得哪里不对劲。午餐的时候再次和几个同事讨论起这个问题,大家兴致很高从goto一路扯到了反模式,设计和复用。下面浅显谈谈我的一些想法。一、反模式有一句话说的很好,知道反模式的唯一作用就是避免使用反模式。我的那位同事说有时候用用反模式很管用,比如因为特殊情况,你所维护的系统代码写得很长,思路跳跃,用用反模式就可以节省代码。我的观点是,在面向对象的设计观念里复用代码的最好做法是合理抽象,运用组合或者
阅读全文
posted @
2013-01-13 20:35
JeffWong
阅读(1580)
推荐(0) 编辑
反模式,长长长长长长…的名单
摘要:关于反模式(Antipattern),也许知道它的唯一作用就是在实际开发中尽量避免出现反模式。百度百科里的主要介绍如下:软件开发中公认的反模式项目管理上的反模式 水中望月(Smoke and mirrors):向人演示还没有实现的功能看上去会是什么样的。英文缘自一项魔术手法:放出烟雾并趁机用镜子遮住一件物体,使它看起来像是消失了。 软件膨胀:随着版本的升级,软件越来越消耗系统资源。 不良管理︰在未对主题有足够认识的情况下管理一个专案。一般设计上的反模式 反抽象:需要的功能并不暴露给用户,导致用户要在较高层次重新实现一些功能。 四不像:往往一个设计模型可以暴露不同的接口给用户,不同的接...
阅读全文
posted @
2012-07-15 21:55
JeffWong
阅读(670)
推荐(0) 编辑
新年的集体活动
摘要:公司安排在明年1月份进行集体活动,很多人选择的是玩游戏,CS和魔兽争霸之类。平时天天就在办公室这么坐着,肚子不知不觉大了,人也养肥了,这些不苟言笑的男男女女们怎么还不乘着这个绝佳的机会多活动活动筋骨呢? 所以我毅然放弃了CS(据说还有比赛,我是有多久没玩了呢?一想到大学里被虐的惨状,虚汗直流,好怕...
阅读全文
posted @
2010-12-16 23:58
JeffWong
阅读(506)
推荐(0) 编辑
【水文】也谈求职中的fizz-buzz-thing,兼谈程序员为什么不会编程
摘要:今晚在首页看到这篇为什么程序员不会编程,文中引用了一段洋文,看着似曾相识。查了一下,洋文所对应的原文不知是不是Jeff Atwood(又一个著名的Jeff)在2007年写的Why can’t programmers…program,反正表达的意思差不多,难怪看着眼熟,尤其是一看到fizz和buzz,我的脑海里立刻浮现出怒发冲冠的恐怖头像。大家可以看一下Jeff的英文原文,很多人用自己擅长的编程语言在评论中给出了解答。在我所能看懂的编程语言中,不外乎利用循环和条件判断,过滤满足特定条件的数字,然后输出,大体上都是这种思路。我看了下lipu_paul文章下的回复,贴c#代码的很多,解决方法依然不.
阅读全文
posted @
2010-11-10 23:56
JeffWong
阅读(3770)
推荐(2) 编辑
看到一个暴强的翻译,闲的蛋疼,写个c#版的
摘要:在豆瓣上看到一篇关于拿破仑的翻译,文科生的翻译有几段相当传神,不得不佩服汉语的强大。有好事者还用程序语言实现了一下,现已有java、python和html的版本,我也来写个渺小的C#版本,运行结果和java版是一致的,但是本文的这个稍作抽象(java版的我不觉得有多好,甚至应该说写得真烂),更符合C#程序员的阅读习惯。贴代码先:【渺小滴C#版(知道运行结果又如何)】Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->usingSystem;usi
阅读全文
posted @
2010-10-11 21:19
JeffWong
阅读(1247)
推荐(1) 编辑
一次维护web脚本程序有感
摘要:楼猪之前的某一个项目完成的还算顺利,在测试通过之后,眼见大局已定,就又驾轻就熟地开始了自己的娱乐八卦生涯,这样持续了几天。一领导见楼猪每天正襟危坐,每次经过楼猪所在工位,楼猪都若无其事熟练迅捷地切换桌面程序,终于开始有所警觉。终于,在一个毫无征兆的上午,某领导从侧后方悄无声息地蹦到楼猪面前,意志坚定地说要额外分配给楼猪一个光荣的任务,让楼猪维护完善他人系统中一段web客户端脚本。按照楼猪的脾气,在最最滋润的时候,背后突然挨了一刀,势必是要反抗一番的。可是,看眼前形势,推脱几乎毫无可能,分配的任务又好像是楼猪比较擅长的领域,而且一贯的勤勉、自信和过分的自以为是让楼猪失去警惕,最终还是答应了下..
阅读全文
posted @
2010-06-20 17:47
JeffWong
阅读(811)
推荐(0) 编辑
不做自了汉,大家好才是真的好
摘要:在实际的项目开发中,除了要具有遵循通用架构、设计模式和编码规范等这些基本素质之外,我们仍然不得不做很多重复的事情,比如,对表的CRUD操作,通用的业务逻辑等等,这就要求我们要有写通用功能的意识,也就是写一次代码,人人都能用,而且是非常方便地使用起来。写通用代码,实现通用功能也一直是笔者孜孜以求的事情。说的直接点,就是追求写最少的代码,实现代码功能的最大化。顺带一句,实际情况是有时必须对一些功能做些妥协,兼顾效率和安全。当然,写通用的代码不是要教童鞋们变相的偷懒,该写的代码一行也不能少。 这里笔者大言不惭地确信,绝大多数的基于某一种语言的框架啊(Java,JavaScript或C#等等),...
阅读全文
posted @
2010-02-20 23:12
JeffWong
阅读(770)
推荐(0) 编辑
【转】程序员的十层楼,你属于哪一层?
摘要:原文网址:程序员的十层楼今天整理收藏夹,发现经典的太多了。这篇同上一篇“【转】世界上最牛的程序员”一样都是收藏很久的东西了,现在也忍痛转载一下。程序员的十层楼作者:周伟明 自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外。当然现在中国的许多程序员们对此可能有许多不同的意见,有些人...
阅读全文
posted @
2009-12-06 14:30
JeffWong
阅读(1387)
推荐(5) 编辑
不要迷恋哥,哥不只是传说(再【转】世界上最牛的程序员)
摘要:原文链接网址:【转】世界上最牛的程序员话说偶当年还在大学求学的时候,以为最牛的就是教程序设计和数据结构的的那两个谢顶老头,直到偶看到了下面的神奇的传说(粗体部分)。MIT BBS上说微软电话面试的一道题就是“Who do you think is the best coder, andwhy?”。我...
阅读全文
posted @
2009-12-06 14:18
JeffWong
阅读(1151)
推荐(1) 编辑