Home » Tech

关于SOA

May 19th, 2010 at 4:58 am by admin in Learning, Share, Tech

前段时间老夏给我们布置了学习SOA的作业,现在来顺便跟大家share share。

  • 关于SOA的含义

(摘抄自百度百科:http://baike.baidu.com/view/21305.htm)

面向服务的体系结构(Service-Oriented Architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以一种统一和通用的方式进行交互。这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。

对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵活,以适应不断变化的环境,比如经常改变的政策、业务级别、业务重点、合作伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性质。我们称能够灵活地适应环境变化的业务为按需(On demand)业务,在按需业务中,一旦需要,就可以对完成或执行任务的方式进行必要的更改。

  • My Point of View

关于专业的解释,相关的书和文章网络上有很多,除了介绍概念的书,另一派是讲如何应用的,小晶就确实看不太懂了,因此主要是看了看关于SOA的一些概念性的描述。

小晶从各类书中总结了一些易懂的语言来描述几个概念,这里跟大家分享分享,欢迎comment。

  • 什么是服务?

服务是一件很单纯的事,有些地方把服务与功能、模块、流程混淆在一起,那他们绝对没有弄明白SOA,因为这是其oriented的基础——Service。提供给被服务人的这件单纯的事,就是服务,他们并不需要知道提供服务的人为了这件事做了哪些努力,经历了千山万水,这些都与“服务”二字无关。

例如,走进Mcdonald’s的我们,打开门走到柜台前对服务人员说了句“来个巨无霸”,然后10秒以后,巨无霸到手,钱交出,这笔交易就完成了,其为我们提供的服务也就完成了。这就是服务。而Mc为了这个汉堡包请了多少个清洁员工打扫卫生,进了多少片牛肉,为了降低cheese的成本谈判了多少次,都与想吃巨无霸的单纯的我们无关。

一句话:Service is a pure thing.

  • 什么是松耦合、紧耦合?

研究这个的过程中看到了很帅的这两个词语,说帅,其实也是想说这又是一个“愚化”事件。就如博弈论其实只是Game Theory一样,偏偏被冠上个看似深奥的博弈论之名,似乎不弄复杂就显不出其研究者的厉害。

其实所谓的松耦合、紧耦合也就是指两者之间的一种关系,紧密程度和相互制约程度低的,就叫“松耦合”,直白一点说就是“灵活关系”,viceversa。

例如,小晶最爱的板烧烤鸡腿堡,如果有一天这个产品下线了(但愿不要),那么其“代价”一定要小,如果下线一个产品要付出巨大的代价,使许多功能和兄弟产品要受到改造牵连,那么其耦合一定是紧密的。

  • 什么是SOA?

剥离、定义清楚最单纯的服务对象及服务,在系统设计中充分适当的应用松耦合,让架构基于服务,让系统结构像打包套餐一样灵活又强大。

补充另一位同学非常精辟的总结,4个字:变形金刚。

—————————————————————————————-

好啦,就简单的share到这里吧。越是概念和思想的东西,越是神奇,因为他们总是“看似简单”,但实际上可以很深邃也可以很浅显。。。。哲学问题。。。

谈人人桌面

April 23rd, 2010 at 4:41 am by admin in Share, Tech

大概2周前,顺手下载了人人网的桌面版,使用5分钟左右,小晶大赞:好东西!
今天,小晶打算从电脑里卸载这个玩意儿。
这是为什么?中间又发生了什么故事呢?让我们来了解一下。

人人网前身是校内,大概在2006年左右创建(仅凭个人记忆),最初是一群校园里的学生到这里来想要认识外校同学而火热起来的,随着SNS的火热,国内渐渐流行起了这种网站,校内发现其不能在把用户群体局限在“校内”了,更名为人人网。

我们不说它抄袭facebook的事情,周围抄袭的事情很多,并不稀罕,总之它火了,就是火了。今天我们不谈人人网怎么样,仅仅谈谈其桌面软件“人人桌面”。因为它Wow到了小晶,也Down了小晶。

  • 先来谈谈,人人桌面,Wow到用户的地方:
  1. 分类清楚,一眼上手
    对比QQ IM的下端一串的图标和功能(其实几乎没几个人会经常去点),人人的分类很清爽,下端只有三个分类:新鲜事、我的好友、我的应用。让小晶惊喜的时这个分类让人看了一眼马上就会用了,立即点到新鲜事里来看一看,左侧的分类也非常清楚:留言、分享等等。这里有一个小的缺陷是,这些图标实在是不能让人一眼看了就知道是什么,非得把鼠标放上去停留才知道,所以说,按钮做得烂。
  2. TAG式的好友分类
    用过QQ的人都知道,对每个好友我们只能有一种分类,拖进了“损友”类,就不能拖进“同学”类,可是万一这个同学正好是我的损友呢?人人很好的解决了这个问题,它利用前期线上对每个好友的TAG定义,在此处直接引用,每个好友都可以有多重身份了!同时每个人的头像都给切了个小边角,个人觉得挺好看。
  3. 应用定时功能
    这个感觉是为收菜类游戏量身定做的,设置了30分钟,系统会在30分钟后自从将这个游戏弹出来,并且用的是独立框而不是打开网页,这个显然应该也应用到分享和日志功能上呀!不过也有一个小缺陷就是,下方有一个“刷新”功能,经小晶试用,发现明明是“清零”功能,真不知道是怎么把这2个这么容易误解的字放上去的。
  • 再来说说,人人桌面,Down到用户的地方:
  1. 封面毫无创意
    打开软件,一看见的就是传统的登录界面,其风格继续沿用现在流行的“半透明”风,只能说从苹果半透明,到MSN半透明,到QQ半透明,人人的这个登录页面让我感觉毫无新意,丝毫嗅不到它的独特性,让人不能从众多软件中分辨或者记得它。
  2. 一个可以称得上是BUG的问题
    如果你在网页版人人上已经查看过了某个人的回复或者留言,再次登录的时候这个肯定不会是Unread的,但IM似乎和网页是脱节的,再登录人人桌面时,这些所谓的“新留言”还会谈出来。请问,我看过的东西,我怎么会再看一次,肯定是立刻X掉,还嫌烦。
  3. 技术实现问题
    既然登录了IM,自然我没有用网页,谁知道点击具体的留言和分享时,竟然还是打开了网页。如果我喜欢网页版,我就不会用IM登录了,当然应该一气呵成的用IM实现。
  • 总的来说,小晶今天打算卸载这个东西了,这是为什么呢?应该在以上的好处与坏处中,还是那个查看分享与日志要弹出网页比较不能接受吧,因为一旦弹开,小晶就宁愿自己登陆网页版了。
  • 给人人网留了言,不知道他们是否会来看看?等待回复。

—————————————————————————

感谢人人的克克来专注了这个帖子,我们回聊,呵呵!

为了保证你的隐私,我把你的留言删除了,希望理解!

ORACLE学习

July 24th, 2008 at 12:27 am by admin in Learning, Tech

近日来关注到了两个问题,特此记录以免忘记

1. ORACLE中的CHAR与VARCHAR2类型对比

CHAR虽然是定长,但实质上是对右空位的补充,很多网上说可以用这个来避免空格造成的字符型值查找不到之类的问题,但是根本我发现解决不了。如果你输入’ B’,即左方有空格,然后你的值假设是char(3),那么它会对右方补空,即变成了’ B ‘,当你要查找’B'的时候,你是查找不到的,因为它会将你搜索的内容改编为’B  ‘,SO,结果还是找不到。发现CHAR不仅会让人脑袋胀大,而且帮不了多少忙。虽然VARCHAR2会有空格问题,特别是将EXCEL的东西黏贴过来的时候,但是如果你TRIM过,反而让人易懂易看些。

2. EXECUTE IMMEDIATE

这个简直牛叉了。需要继续学习研究。简直就是万能。特别当你可以将其结合到一个控制表来让用户个性化操作的时候。娃哈哈。

Linux学习笔记

November 12th, 2007 at 8:47 am by admin in Learning, Tech

今天学习了一点Linux,实际操作了一下,因此做一个学习笔记,免得忘记:

1.ls [-选项] [文件名描述]

-l 会列出每个文件全部的详细资料,是long的意思。
-a 连同隐藏文件也列出来。UNIX有很多隐藏文件(通常是做设置用的),它的文件名开头就是一个“.”,平常我们用ls命令它们是不会列出来的。
-d 这个选项无法用几个字交待清楚。有些书上仅写“只列出目录而不列出内容”。相信这样的说明是无法让初学者了解的。
–color 会显示色彩
-F 在黑白器上的符号显示

clear 清除屏幕

date -[选项] [日期或时间格式]

其实只要两个例子就很清楚了:

date “+Date:%y.%m.%d”
Date:99.07.16

date “+Date:%Y.%m.%d”
Date:1999.07.16

date “+Date:%Y.%m.%d Time:%H.%M.%S”
Date:1999.07.16 Time:07.40.39

超级用户可以设置时间
date 071617301999 就会设置为1999年7月16日17时30分。

rm -[选项] 文件或目录名称

-i 删除之前先询问用户是否确定。
-v 删除之中出现进度报告。在删除许多文件时较有作用。
其实还有一个很关键的,最猛的忽略子目录的删除那就是 -r !!!

cat 文件名称 [文件名称]

cat a1.txt a2.txt 只有显示1和2两个文件的作用

cat a1.txt a2.txt > a3.txt 把1和2两个文件内容合并到一个3里面,而且3可以是新建的哦

cat b1.txt > b2.txt 本质上是一样的,也就实现了复制内容了

cat a4.txt a5.txt >>a3.txt 保持3内容的1和2的合并添加

cat > my.txt 实质还是一样,等于把空内容弄到my里面去了

at a1.txt a2.txt > a1.txt 测试了一下,不允许的,自己不能变自己~

cp -[选项] 文件名称 目的地     复制

-R 连同其下的所有目录一起复制,有了这个选项,它就相当于DOS 的 XCOPY 命令了。
-p 复制过去以后,仍然保持原来文件的权限值(如果允许的话)。
-i 如果目的地有相同文件名的文件存在的话,会先询问用户,而不会立刻覆盖该目的地的同名文件。
-v 复制之中出现进度报告。当复制许多文件时较有作用。
-u 除非目的地的同名文件比较旧,它才覆盖过去。
-l 创建“链接文件”而不是真的复制。所谓的“链接文件”类似于Windows的“快捷方式”(DOS无此观念)。快捷方式只是快捷方式一个记载而已,本身文件并不在那儿。当我们读取或执行链接文件的时候,它会去找到真正的原文件。

mv -[选项] 文件名称 目的地          移动文件

-i 如果目的地有相同文件名的文件存在的话,会先询问用户,而不会立刻覆盖该目的地的同名文件。
-v 搬移之中出现进度报告。对于搬移许多文件时较有作用。
-u 除非目的地的同名文件比较旧,它才覆盖过去。

测试了一下,如果是改名字的话就是用自己移动自己,假设原来的名字是a,想要改成b,那么就可以写 mv -i a b

cd [目录名称]       切换目录

在UNIX默认的目录中有一个目录叫做 /bin,也有一个叫做 /usr/bin。我们就以这个来举例。在 /usr 中(假设方才已经从主目录用 cd /usr 命令切换到 /usr 目录了),那么如果输入:

cd /bin     则会切换到 /bin 目录中。

如果输入:

cd bin       则会切换到 /usr/bin 中。

当前面没有加斜线的时候,它的意思是在现行目录的下一层;加斜线的时候,则是从主目录算起。

cd ../xr    就是同一个上级目录下的某个目录,其实也就是并列关系的目录,做网页常见的咯

cd      什么都不要的话,就是走到上级目录

mkdir -[选项] [目录名称]                创建新目录

连续创建 mkdir -p /aaa/bbb/ccc

创建时携带限制 mkdir -m 755 ccc          755属于chmod命令~嗯,还不懂。

rmdir -[选项] [目录名称]       删除目录

这个比较无趣的就是还必须目录是空的,那我还不如用rm呢

不过如果是递进的删除就可以,加一个 -p

mtools(与MS-DOS 兼容的操作命令集)

没有看头,本来就没有DOS基础~适合那些喜欢用DOS得人

mdir

DIR

列示文件

mdel

DEL

删除文件

mtype

TYPE

将文件内容显示出来

mcopy

COPY

复制文件

mmove

MOVE

移动文件

mren

REN

文件改名

mcd

CD

切换目录

mmd

MD

创建新目录

mrd

RD

删除目录

mdeltree

DELTREE

无论目录中有无文件一律删除

mformat

FORMAT

格式化磁盘

mattrib

ATTRIB

改变文件属性

mlabel

LABEL

更改或设置磁盘卷

下次继续学习~!继续挺进!!

另外向上帝祈祷~至于是什么,我用心告诉你~~~我会努力的,请你保佑我!~

FireFox > IE

July 30th, 2007 at 6:19 am by admin in Learning, Tech

    用了以后还是觉得FireFox简直就是更好噢。让一个不专业的我来列数几个它的优点:
1,只用开一个小窗口,而在这个界面里面建立很多子的标签页,这样就不用像以前IE一样,在下面开得满满的还要弄到第二排去了。因为有的时候看新闻或是什么的,会不自然得越开越多页面出来。FireFox wins!
2,书签管理功能更优。过去IE用的就是收藏夹,但如果你要把收藏夹打开,会把正常的网页页面压缩到右边,所以一般人都不会虽是把收藏夹打开。而FireFox的书签功能就是收藏夹功能,它会直接在功能条上,不用压缩页面也可以打开。另外,书签的管理功能也很棒,如果用IE,那么一个母目录会是用文件包的形式,然后点开才可以看到其中的子页面有哪些,如果你不知道或者忘记了自己要找的是哪个而恰好收藏夹里面内容很多会点到一头雾水。On the other hand, Firefox用的就是Menu的管理形式,所以鼠标放上去就会看到右边列出子目录来,不是这个就下移咯~轻松很多很多
3,我喜欢最喜欢的就是这个书签工具栏,它可以让你的地址栏下面多一条菜单,里面可以放上自己喜欢的随便什么网站,当然那些我们经常用的比如自己的Blog,还有Hotmail那些,就可以加在里面了!

总的说来,Firefox更加得好,不是吗?
希望有一天幻想也可以推出类似个人门户的东西,为所有学生提供方便的同时~垄断市场!打倒GHY!哈哈~这就是一个Fancier的梦想^_^.