自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

若水的专栏

谁当声震人间,必长久深自缄默。谁当划破闪电,必长久如云漂泊。

  • 博客(56)
  • 资源 (3)
  • 收藏
  • 关注

原创 SOA服务经验总结

XX电商SOA服务化严重缺陷很荣幸进入XX电商公司从事SOA服务化的工作,由于时间仓促,在服务化的过程中出现了一个严重缺陷,为什么这么说:SOA基本指导思想电商SOA服务合理分层错误的SOA分层*错误的代价边重构边生活SOA基本指导思想分层思想 SOA基本原理就是分层,分为聚合服务、原子服务、适配服务。通过聚合服务达到业务逻辑的实现,原子服务则是对不变的业务进行原子化,同时也确定业

2015-11-06 02:52:23 5610 1

原创 如何采用 coreseek(sphinx) 搭建搜索系统

coreseek 实战总结该文章包含以下内容:coreseek 的典型架构实时性解决方案mmseg 分词使用经验同义词使用经验后继目标coreseek 的典型架构coreseek 的典型结构,就是通过增量索引来满足近似实时性,对于新增的记录无法及时搜索可见。对于搜索系统存在的记录,非字符串字段的更新,我们一般是调用update方法进行更新。如果搜索引擎要返回业务的其他字段,这时字段的实时

2015-04-04 17:48:12 1878

原创 千里之行之思想

系统演进思想分治重构经济、简单之约束处理分治系统发展到一定的程度,或者初期,我们要及时对系统采取分治的思想。系统分治,首先必先分层。但是分层的层次也不应该太多,我们不能为了分层而分层。层次太多,架构太复杂、性能太差。那我们到底要分几层呢?我们来分析一下系统的基本流程,其流程大致都是这样的:客户端->服务器(CGI)->数据库。从客户端到数据库,我们现有这样的层次观,如图2.0所示。 2

2015-03-22 16:39:33 1499

原创 千里之行

千里之行之系统演进工作了几年,总想写些什么,思考再三决定根据自己的工作经验,写互联网系统演进,一方面总结自己的系统架构知识,一方面也抛砖引玉,该序列的博客包含:系统如何演进进程技术篇系统技术编部署技术篇总结系统如何演进演进驱动演进历史思想工程方法演进驱动大型系统是天生如此巨大,还是在使用中不断演进?大型系统的概貌是预先设计的,还是在使用过程中不断演进的? 系统之复杂,是很少有

2015-03-21 17:14:02 1583

原创 电商系统架构——系统鸟瞰图

电商系统架构原理

2015-01-16 21:54:33 26627 1

原创 冰冻三尺非一日之寒之产品观

产品观:冰冻三尺,非一日之寒。

2015-01-14 10:56:19 1309

转载 千里之行之系统工程方法

点击打开链接,你会有收获的

2015-01-11 00:26:44 1032

转载 千里之行之设计经验

“摸我啊,点我!”,你会很愉快的

2015-01-11 00:25:33 755

转载 千里之行之庖丁解牛

点击打开链接

2015-01-11 00:23:06 754

转载 大系统演进之道

转载自己的另一原创点击打开链接

2015-01-11 00:21:31 671

原创 借力用力,一两拨千斤——抛弃程序员天生的自负

程序员要抛弃自负情节,复用别人成功的案例。数据方案组件化、平台化,收拢数据访问。

2015-01-11 00:11:32 3373

原创 码农的视角:马云菜鸟物流的一个简洁版实现

龟兔赛跑的物流玄机      80后的我们大都接受了一个励志的寓言故事:龟兔赛跑。这个寓言有很多版本,有的说兔子太骄傲,在比赛的时候睡大觉,结果被乌龟给拼命地赢了。有的说,乌龟很聪明,在比赛的路上不满了同伴,每个同伴看到兔子来,就开始跑,结果乌龟聪明地赢了兔子。      龟兔赛跑的第二个版本,充满了物流玄机:假如一个用户在XX地方买了一个商品,那什么样才能更快地把商品送到该用户手中。用龟

2015-01-10 19:05:17 2611

原创 Linux 内核编程总结

Linux 内核编程总结      从事了几年的内核编程,对内核编程有一定的经验,现总结、吐槽下,作为标记。      任何进程都有有进程的入口点,用户态的进程,其入口点是,main函数。      那么内核的入口点是什么?个人理解整个OS,运行起来就是一个进程,     内核的入口点是init进程,在这个进程中负责:     1)子进程的创建,包括内核的线程、用户态的进程。

2015-01-10 18:51:28 810

原创 设计之禅

设计之禅有一天一个新手跟一个牛人相遇,新手就向那个牛人倾诉自己的困惑。新手说:          最近接触到两个新概念scale up 和scale out。这两个概念是什么意思?牛人说:        从个人的角度来说,scale up 好比个人努力提升自己的能力。scale out 好比一个团队扩充自己成员。新手困惑地说:       那这跟我们的系统设计有什么关系

2013-03-14 22:45:59 1047

原创 读IDEO 设计改变一切的思考

花了三个月终于把《IDEO 设计改变一切》这本书看了一遍。在这本书里面提到了设计思维,但没有明确归纳什么是设计思维。设计思维包含了三个空间:灵感、构思、实施。这里的灵感是指那些激发人们寻找解决方案的问题或者机遇,构思即生产、发展、测试想法的过程,实施是把想法从项目工作室推向市场的途径。灵感,是跟个人对问题的思考有关。一个人的问题遇到越多,就更有可能产生灵感。尤其是在互联网时代,为什么有些人可以开发

2012-12-17 23:14:45 2269

原创 程序员写小说,也太难了

最近花了时间去写小说,发现小说也不好写,这小说就如我们写代码一样,各有各的需求。有人夸写得不错,有人反应没有吸引力。看来,各有各的需求。     今天贴出来,跟大家讨论讨论。      小说链接(武侠:尘磨录):  http://data.book.163.com/book/home/009200270002/000BOOMV.html

2012-12-15 22:41:56 2396 1

原创 能力 != 钱

能力 != 钱      很多人,以为自己的能力上去了,自然钱来了,尤其是干程序的人,沉迷各样的技术、沉迷代码。      但是到了后来,才发现尽管领导说你能力很强,但是你的工资还是没提。     在一个公司,上面给你发钱,不是因为你的能力钱,而是因为你做了一些等值或者超值的工作。     有时,我们会感到很郁闷,在一个团队中,发现有些工作年限比较长的人,工作能力没你强,有

2012-08-30 23:50:17 1516

原创 用经济的策略去设计

用经济的策略去设计       什么方法是经济的? 就是投入产出比高的方法,就是经济的方法。在设计中,我们会遇到很多问题,       判断这些问题的解决方法的好坏取决于这些是否经济。       举一个例子,如果我们要读一个文件,在内存许可的条件下,我们是采用小I/O的方式去读,还是采用大I/O的方式去读,这个问题其实是比较简单,       很多人,应该采用大I/O的方式去读,

2012-08-27 00:01:59 894

原创 SSD 的运用

SSD 的运用       自从SSD一出江湖,江湖就流传了关于这个快刀很多传说, 也有很多人,都寄希望予这个快刀,所有的慢的问题,都一刀了结。       但是,快刀也有快的缺陷,首先如果一直用刀的某一处一直砍东西,那么刀的某一处就很容易钝掉,甚至有缺口。       而且,出刀的时候,由于刀刃比较长,所以在场所比较小的地方,很不容易使开来,不能横扫、斜屁,只能直刺。

2012-08-25 23:13:02 926

原创 C 面向对象程序设计

C 面向对象程序设计     运行时动态绑定一直以来都是面向对象的优势,比如C++\JAVA等面向对象编程语言都有这种特性。     但是,其实C语言也可以有这样的优势。在C语言要实现这种方式,需要利用结构体、以及结构体的操作函数表。     然后再利用工厂模式、或者桥模式,在程序运行时动态绑定。     例子如下:      typedef struct person per

2012-07-12 23:09:52 1115

原创 程序员——适合写悬疑小说吗?

程序员——适合写悬疑小说吗?     作为一个合格的程序员,或者在某些知名企业、绩效较好的程序员,     一般都是逻辑思维比较好,而且对严重、无厘头的软件BUG定位很有经验的人,是否适合写悬疑小说。

2012-07-07 21:21:17 831

原创 日薄西山的下载工具

日薄西山的下载工具          很多年前,下载工具犹如长江水,后浪推前浪。早先的是网际快车、再后来就是BT、电驴、迅雷。          其中的迅雷,由于下载速度快,曾经虏获了多少男、女网迷的心。          很多人,不管下载A片、软件、游戏、文件基本上都是用迅雷。                    但是俱往矣了,30年河东,再30年就河西了。

2012-06-28 23:42:38 4069

原创 腾讯由IT 走向CT

腾讯由IT走向CT,会如何?     早在10年,在思考如果腾讯也自己推出自己的手机,会产生什么样的影响?     现在的智能手机,核心主题就是应用,而腾讯的应用覆盖面非常广,涵盖了:及时通信工具,游戏,视频,微博,博客,邮件,社区,购物,团购,搜索,地图。     以及腾讯的的新概念QQ、QQ桌面。      如果腾讯把PC产品移植到手机上,然后自己推出腾讯手机,给用户提供一个:

2012-06-27 20:45:42 1527

原创 谈异步线程池的设计

谈异步线程池的设计          异步线程池的作用就是统一进行线程调度,利用有限的线程处理系统中所有的异步任务。其实一个系统中的异步线程数量跟CPU的核数是有一定的关系,线程太多,容易浪费资源,而且各个线程之间的CPU调度,也不见得使性能提高,反而会对性能有一定的影响。但是,线程多,不容易照成死锁。为什么呢?           很多情况,我们在设计异步线程池的时候,很少去考虑

2012-06-23 10:57:30 5024

原创 从项目始末谈面向对象——领域模型

从项目始末谈面向对象——领域模型         利用端午放假的时间,腾出这点时间总结下对于领域模型的思考,也许这思考可能不如端午的粽子可口、美味。但是尝下不同味道的粽子,也是不错的。        希望,大家会喜欢这样的粽子。       言归正传,什么是领域?什么是领域模型?       先举个不着边的例子,比如端午节的粽子。从包粽子的过程中涉及到几个现实对象的关系:糯米、

2012-06-22 20:31:26 3185 2

原创 苹果的山寨之道

苹果的山寨之道山寨,这种策略是无处不在的,就连被称为世界最创新的公司——苹果也是这样。只是,苹果的山寨是通过其伟大、创新的商业模式——App Store。为什么这样说呢?因为首先苹果利用这个平台去吸引众多开发者去开发应用,然后聚集了很多很有创意、很有实用的应用。苹果再根据某些应用的流行度,做某种方面的山寨,然后推出这些应用。然后,很多故事一般都有这样的结局:很多流行

2012-06-14 23:50:04 798

原创 警惕苹果的阴谋

警惕苹果的阴谋大家使用苹果的产品是否有发现,必须申请一个APPLE ID的这个现象。其实个人感觉,苹果采用这种模式是在暗渡陈仓啊。我为什么这么说,因为每一个APPLE ID意味着一个用户,随着苹果产品销量的增加,那么苹果的潜在用户群也在不断地增加。这时苹果再每次更新新产品的时候,推出一些新的功能能:   1) imessage   2) facetime   3) 地图

2012-06-12 22:07:38 1610

原创 从项目始末谈面向对象——领域分析、需求分析、分析模型、设计、实现

从项目始末谈面向对象——领域分析、需求分析、分析模型、设计、实现                                                                                    序言          在旅行之前,先介绍下我所从事的项目的一些特点。我从事的是存储行业的软件开发,主要做的事情是解决存储系统的性能、可靠性问题。

2012-06-12 21:09:55 1282

原创 从项目始末谈面向对象——领域分析、需求分析、分析模型、设计、实现

从项目始末谈面向对象——领域分析、需求分析、分析模型、设计、实现  经过了六年的工作经验,有必要从实战的角度来谈面向对象设计。  因为经验派跟学院派的总结或多或少有些不同,也只有经历过,才知道血汗之辛苦。 “没经历过炮火的摧残,是不会知道战略、战术的实施智慧”。  以前从课本上、培训教材上看到的,一实际实践起来还是有很多的艰辛要体验。  毕竟没有实践经验的,多多少少有点

2012-06-11 23:33:15 2520 1

原创 谈系统设计之面向对象设计方法

谈系统设计之面向对象设计方法                                                                  误解刚开始出道,从事C++编程,也了解了面向对象设计方法。但是,那时以为只有像C++、JAVA这样的开发语言,才有面向对象这种设计方法。

2012-06-09 23:23:01 4499

原创 是继续当码农,还是选择当改变现状的码农?

是继续当码农,还是选择当改变现状的码农?毕业了多年,写了多年的代码,过了多年的码农生活。越来越感觉有个问题摆在眼前:是继续当无奈的码农,还是选择当改变现状的码农?不管,现状如何的你、我,始终会面临这样的一个问题。虽然,最终我们还是继续是码农,但是不一样的是码农的生活。互联网,充满未知的希望,但是单靠各自的,我们无法抓住机会,感到力不从心。单独的一

2012-06-05 22:39:49 1228 1

原创 是继续当码农,还是选择当改变现状的码农?

是继续当码农,还是选择当改变现状的码农?毕业了多年,写了多年的代码,过了多年的码农生活。越来越感觉有个问题摆在眼前:是继续当无奈的码农,还是选择当改变现状的码农?不管,现状如何的你、我,始终会面临这样的一个问题。虽然,最终我们还是继续是码农,但是不一样的是码农的生活。互联网,充满未知的希望,但是单靠各自的,我们无法抓住机会,感到力不从心。单独的一

2012-06-05 22:33:51 1098 1

原创 设计模式应用之使用COMPOSITE模式实现流程(四)

设计模式应用之使用COMPOSITE模式实现流程(四)   最近在工作的过程中,完成了一个实现动态流程的任务。因此将我的demo程序共享出来,给大家参考如何使用COMPOSITE实现流程的编写。在前面序列文章,我本来计划利用MEMENTO解耦COMPOSITE 对象,使COMPOSITE 对象得到共用,但是在实际开发过程中,我发现这样在开发上有一定的难度,因此我没有采用这样的思路去开发。

2012-03-11 22:15:26 804 1

原创 一次的面试体会

                                            一次的面试体会                                                           ——————如何面试?    进入新公司快三年,难得有次机会去面试人,个人感觉这次面试还是比较成功。    这次面试结果通过该兄弟在后继的表现得到了验证。我当初第一次面

2011-06-26 19:50:00 1005

原创 敏捷不是神话

                                                          敏捷不再是一个神话          敏捷是当今流行的一种软件开发方法,也是一种快速响应外部变化的软件开发能力。    但个人认为不要给敏捷带高帽子,我们应该从工程的角度去审视我们的活动,最终选择适合的方法。           众所周知,每一项工程都有自己的工程实施和管

2011-06-26 18:31:00 915

原创 ACE之旅 (二)

                                         ACE之旅 (二)                 ——如何处理超过100个客户端的连接                 (一)前记 之所以学习ACE,是因为尝试利用ACE解决平时工作中遇到的问题。   在平时从事分布式程序开发,直接调用系统的Socket API,很经常遇到如下的问题:  1

2008-10-26 16:58:00 1503 3

原创 ACE之旅的开始问题

                             ACE之旅的开始问题    最近闲来,没什么事情做,就来研究ACE。刚开始,接触ACE遇到一些莫名其妙的问题。 以下是我碰到的问题,以及解决方法: 问题一:调用ACE::select(int,ACE_Handle_Set) 返回-1。 调 ACE_ERROR_RETURN((LM_DEBUG,"%

2008-09-09 21:56:00 2524 4

原创 ICE 的回调

                                   ICE 的回调   使用分布式计算中间件ICE到现在已经有一年多了,在这一年里里面对ICE的理解、应用比较熟悉。   使用ICE写分布式软件,确实是很方便:ICE比较稳定、可靠,调用返回速度低延迟,使用简单,学习曲线不是很陡。    总之利用ICE开发分布式软件,是一个可行的选择。    在实际的过程中,ICE客

2008-07-25 21:02:00 7904 6

原创 对软件开发的思考

                                    对软件开发的思考     在开始这篇文章之前,我先给出构思这篇文章的人性假设。假设是人思考的出发点,人的思考活动往往围绕着一定的假设展开的。     人性假设:P1:人总是有惰性的。P2:人总是按照自己的习惯做事情,对陌生事物具有一定的抵触。(一)   界面程序界面程序包括:桌面程序,web程序。对

2008-07-05 20:56:00 1267

原创 分布式软件设计之DECORATOR模式(三)

                       分布式软件设计之DECORATOR模式   自从上次写了两篇文章 分布式软件设计之DECORATOR模式(一)、(二)。在前两篇文章举的例子还不能充分说明利用这个模式的有点。   不过之所以把这个方法叫DECORATOR模式,可能是因为这个方法就是在不修改当前的软件设计,而是仅仅加了一些职责。这样的方法姑且套用设计模式的DECORATOR模式。

2008-06-27 21:35:00 787

FB广告营销

互联网巨头模式学习,可以借鉴巨头,站在巨人的肩膀上。

2012-06-09

运用RUP 4+1视图方法进行软件架构设计.pdf

该资料是从IBM下载的介绍架构的资料。该文章利用4+1视图模型阐述软件架构的各个层面。对于希望往架构师成长、程序员有很好的帮助。

2009-09-29

UML基础: 统一建模语言简介.pdf

UML 基础很适合初学者学习UML建模的资料。该资料是从IBM网站下载整理而来的。

2009-09-29

空空如也

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

TA关注的人

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