测试你的主机的速度

attachments/200712/0702427018.jpg
Host-tracker是一家提供全方位网络测速的网站,分别从全球四十多个服务器访问你的网站,全方位的了解你的网站被访问情况,测速后分别给出访问结果、速度等数据,比较全面。
下面是http://www.Licess.Cn的部分测试结果:

attachments/200712/4887046518.jpg

该网站还提供了网站测试挂件,可在你的网站上实时进行检测。方法很简单,点击ADD,然后会出现代码,复制粘贴到你的网站就行了。
呵呵我没有挂,因为挂的东西太多了影响访问速度。有兴趣的朋友可以试一下。

《程序员2007增刊——实战Web2.0》精彩预览之“指导篇”

理解REST软件架构

    /骆古道

一种思维方式影响了软件行业的发展。REST软件架构是当今世界上最成功的互联网的超媒体分布式系统。它让人们真正理解我们的网络协议HTTP本来面貌。它正在成为网络服务的主流技术,同时也正在改变互联网的网络软件开发的全新思维方式。AJAX技术和Rails框架把REST软件架构思想真正地在实际中很好表现出来。今天微软也已经应用REST并且提出把我们现有的网络变成为一个语义网,这种网络将会使得搜索更加智能化。

RESTHTTP协议

REST软件架构是由Roy Thomas Fielding博士在2000年首次提出的。他为我们描绘了开发基于互联网的网络软件的蓝图。REST软件架构是一个抽象的概念,是一种为了实现这一互联网的超媒体分布式系统的行动指南。利用任何的技术都可以实现这种理念。而实现这一软件架构最著名的就是HTTP协议。通常我们把REST也写作为REST/HTTP,在实际中往往把REST理解为基于HTTPREST软件架构,或者更进一步把RESTHTTP看作为等同的概念。

今天,HTTP是互联网上应用最广泛的计算机协议。HTTP不是一个简单的运载数据的协议,而是一个具有丰富内涵的网络软件的协议。它不仅仅能够对于互联网资源进行唯一定位,而且还能告诉我们对于该资源进行怎样运作。这也是REST软件架构当中最重要的两个理念。而REST软件架构理念是真正理解HTTP协议而形成的。有了REST软件架构理念出现,才使得软件业避免了对HTTP协议的片面理解。只有正确的理论指导,才能避免在软件开发的实际工作过程中少走弯路。

RESTURI(资源定位)

REST软件架构之所以是一个超媒体系统,是因为它可以把网络上所有资源进行唯一的定位,不管你的文件是图片、文件Word还是视频文件,也不管你的文件是txt文件格式、xml文件格式还是其它文本文件格式。它利用支持HTTPTCP/IP协议来确定互联网上的资源。

RESTCRUD原则

REST软件架构遵循了CRUD原则,该原则告诉我们对于资源(包括网络资源)只需要四种行为:创建(Create)、获取(Read)、更新(Update)和销毁(DELETE)就可以完成对其操作和处理了。其实世界万物都是遵循这一规律的:生、变、见、灭。所以计算机世界也不例外。这个原则是源自于我们对于数据库表的数据操作:insert(生)、select(见)、update(变)和delete(灭),所以有时候CRUD也写作为RUDI,其中的I就是insert。这四个操作是一种原子操作,即一种无法再分的操作,通过它们可以构造复杂的操作过程,正如数学上四则运算是数字的最基本的运算一样。

REST与网络服务

尽管在Java语言世界中网络服务目前是以SOAP技术为主,但是REST将是网络服务的另一选择,并且是真正意义上的网络服务。基于REST思想的网络服务,不久的将来也会成为是网络服务的主流技术。REST不仅仅把HTTP作为自己的数据运输协议,而且也作为直接进行数据处理的工具。而当前的网络服务技术都需要使用其它手段来完成数据处理工作,它们完全独立于HTTP协议来进行的,这样增加了大量的复杂软件架构设计工作。REST的思想充分利用了现有的HTTP技术的网络能力。在德国电视台上曾经出现过一个这样的五十万欧元智力题:如何实现网络服务才能充分利用现有的HTTP协议?该问题给出了四个答案:去问微软;WSDL2.0/SOAP1.2WS-Transfer;根本没有。这个问题告诉我们HTTP并不是一个简单的数据传来传去的协议,而是一个聪明的会表现自己的协议,这也许是REST = Representational State Transfer的真正含义。

实际上目前很多大公司已经采用了REST技术作为网络服务,如GoogleAmazon等。在Java语言中重要的两个以SOAP技术开始的网络服务框架XFireAxis也把REST作为自己的另一种选择。它们的新的项目分别是Apache CXF Axis2 Java语言也制定关于REST网络服务规范:JAX-RS: Java API for RESTful Web Services (JSR 311)。相信还会出现更多与REST相关的激动人心的信息。

RESTAJAX技术

尽管AJAX技术的出现才不到两年时间,但是AJAX技术遵循了REST的一些重要原则。AJAX技术充分利用了HTTP来获取网络资源并且实现了HTTP没有的对于异步数据进行传输的功能。AJAX技术还使得软件更好地实现分布性功能,在一个企业内只要一个人下载了AJAX引擎,其它企业内部的人员,就可以共享该资源了。AJAX技术遵守REST准则的应用程序中简单和可伸缩的架构,凡是采用AJAX技术的页面简洁而又丰富,一个页面表现了丰富多彩的形态。

AJAX技术还使用了一种不同于XML格式的JSON文件格式,这个意义在哪里呢?在REST软件架构下我们不能对于XML文件进行序列化处理,这样程序员必须要使用自己的XML绑定框架。而以序列化的JavaScript对象为基础的JSON已经获得了广泛认可,它被认为能以远比XML更好的方式来序列化和传输简单数据结构,而且它更简洁。这对REST是一个极大贡献和补充。

当前的网络应用软件还违背了REST的“无状态服务器”约束。REST服务器只知道自己的状态。REST不关心客户端的状态,客户端的状态自己来管理,这是AJAX技术的应用之地。通过AJAX技术,可以发挥有状态网络客户机的优势。而REST的服务器关心的是从所有网络客户端发送到服务器操作的顺序。这样使得互联网这样一个巨大的网络得到有序的管理。

RESTRails框架

Ruby on Rails框架(简称Rails或者Rails框架)是一个基于Ruby语言的越来越流行的网络应用软件开发框架。它提供了关于REST最好的支持,也是当今应用REST最成功的一个软件开发框架。Rails框架(从版本1.2.x起)成为了第一个引入REST作为核心思想的主流网络软件开发框架。在Rails框架的充分利用了REST软件架构之后,人们更加坚信REST的重要性和必要性。Rails利用REST软件架构思想对网络服务也提供了一流的支持。从最直观的角度看待REST,它是网络服务最理想的手段,但是Rails框架把REST带到了网络应用软件开发框架。这是一次飞跃,让REST的思想从网络服务的应用提升到了网络应用软件开发。利用REST思想的simply_restful插件已经成为了Rails框架的核心内容。

REST安全性

我们把现有基于SOAP的网络服务和基于REST/HTTP网络服务作个比喻,前者是一种传统的寄信方式,而后者是现代网络的电子邮件方式。要是寄信和电子邮件都有病毒存在的话,传统的寄信被送到对方就很危险,而电子邮件是开发的,电子邮件供应商比如Google为我们检查了电子邮件是否有病毒。这里并不是说明SOAP网络服务消息容易包含病毒,而是说明HTTP是无法处理SOAP信息包究竟好不好,需要额外的软件工具解决这一问题,包括防火墙也用不上和管不了。

REST/HTTP网络服务的信息包可以被防火墙理解和控制。你可以按照操作和链接进行过滤信息包,如你可以规定从外部来的只能读取(GET操作)自己服务器的资源。这样对于系统管理员而言使得软件管理更为简单。REST的安全性还可以利用传输安全协议SSL/TLS、基本和摘要式认证(Basic und Digest Authentication)。除了这些REST自身的安全性功能外,还可以利用像基于信息的Web Services SecurityJSR 155)作为REST不错的补充。

作者简介:骆古道,网名Cnruby,八十年代初毕业于西北工业大学数理力学系,1988年公派留学德国,从事组合最优化理论研究,从九十年代初期起一直致力于计算机领域软件开发、设计和管理等方面工作,个人博客为道喜技术日记”。

为什么每个程序员都要学C语言的五个理由

  1. C语言不是面向对象语言。因为这一点,任何学习C语言的人必须学会用函数思考问题。当你真正的去学习一门面向对象语言时,就会有C语言的函数学习基础去对比。这会使学习面向对象编程更容易理解和更有乐趣。
  2. 用C编程就像进行智力体操。你要顾及到每一件事情,而这在很多其他语言中他会为你处理。你要管理指针,内存分配,和内存回收。你要明白如何处理串,还有动态数据。在其他语言中,所有这些对你来说是隐藏的。你不知道他们如何运行,更不用说改变他们的运行方式了。你得到了使用的便利,失却了对程序的控制和速度。很多情况下,这是笔值得的买卖。其他的情况下就不是这样了。
  3. 不同情况下你会使用不同的编程语言。某些情况下要求使用Lisp,其他的要Java,还有别的要C++。但是C是你坚实的基础。你可能不会使用它做一些项目,但是它会帮助提高你的能力,熟练的用其他语言编程。
  4. 除了汇编语言之外,C代码生成的程序比其他任何语言生成的程序来得更小和运行更快。那么为什么不学汇编语言呢?汇编是一门学了很有用的语言,但是它没有C那样的可移植性,并且其他流行的语言比如JAVA的语法是基于C的,而不是汇编。你仍然应该学汇编,但它并不会证明它会像学C那样有用。
  5. 如果你想要写一个视频游戏引擎或操作系统,你会需要C。你不能使用C#, Java, 或 Basic来完成这些编程任务。

简单七步最大限度优化你的博客文章

  博客的写作需要一定的搜索引擎优化(SEO)的技巧才可能得到良好的回报,这里有很简单的七个博客写作技巧和方法,虽然看起来很简单,但是这些技巧可以最大限度的使你的努力获得更多的收获和成果,目标只有一个:增加你的读者并且吸引他们阅读你的文章。

  1、删除代词,并将其修改为描述性的名词

  这个方法是为了帮助搜索引擎能更准确的索引和确定你文章的内容,名词有利于说明你的文章,并减少歧义,在大多数情况下,代词都很多余,并限制你的文章达到其应有的最高潜力。

  2、为你的文章选择准确描述性标题

  这对于你来说可能不是个新闻,因为这是优化策略中非常重要的一部分,不过,根据我的经验,一个理想的标的长度通常是4-7个英文单词,标题应该转却的反映文章内容,并且尝试使用最重要的关键词短语。

  3、在第一段中强化你的标题关键词

  你已经选择了一个非常不错的标题栏,那么,你应该不能就此为止吧,在你正文第第一段中,你应该补充你标题的主要内容:

  1)一个精确的短语来匹配标题中的内容。

  2)增加一些额外的关键词。

  4、文章内容至少150个单词

  短小的内容会遭到搜索引擎惩罚,但是关键内容过于稀释的话可能伤害更大,因此,我推荐150-250的高关键词密度,并减少代名词。对于参考文章和HOW-TO类型的文章,我一般推荐500个以上的单词,这样就很容易超过关键词优化的界限,以避免遭到搜索引擎的人为惩罚,通常最好关键词分布在三段之中。也许很多人对于这点有不同的意见,但是文章的长度的确非常重要,尝试不同的技巧,你会最终尝到甜头。

  5、使用超级链接文字推广你的文章

  即使只有一个链接到你的文章,那也是很好的,关键是要添加链接,同样重要的是,链接中的锚文本要和文章标题的关键字匹配。

  通过一些社会化的工具,例如DIGG等可以将你的文章推送到社会化网络中,以便获得更多人的推荐。另外,还要鼓励他人在自己的博客中对其进行评论,每一个博客都在寻找写作的主题,所以一篇好的文章往往会得到充分认可。

  6、鼓励相互交流

  你写的每一篇文章,对于你来说都是一个机会,你可以借机和你的读者进行交流,有很多方法可以鼓励留言评论,但重要的是,你要重视你的读者们的看法,问他们有什么想法,或者对他们提出一些有挑战性的问题。

  7、让用户能轻松订阅

  可能你并不知道什么是RSS Feed,但是你依旧可以建立一个RSS Feed的订阅基础,一个Feed订户很可能会在未来经常访问你的博客,如果你想换个花样,你可以考虑每月通过电子邮件的方式发送一篇通讯稿,无论使用哪种形式,你都应该鼓励大家订阅,无论是在文章的底部还是在顶部,用粗体字呼吁大家订阅你的博客。

  好了,以上就是7个文章写作技巧,可以让你的博客文章最大限度的在搜索引擎上表现良好。

济南IT人才现状

 据前程无忧(http://www.51job.com)数据显示:本周济南的有效职位数为1857个。济南才市有效的职位数经过前段时间的震荡下调后,现在每周的有效职位数在1800个上下平稳浮动。本周以NEC软件(济南)有限公司、中兴软件技术(济南)有限公司、浪潮等企业为代表的软件技术公司抛出了众多的软件工程师需求名额。其中NEC软件(济南)有限公司对软件工程师的需求达到50人之多。

 
  某企业人力资源经理表示,他们公司的招聘广告挂到网上一个多月了,几乎没有招到令老总满意的员工,没办法只好到IT培训学校去“抢”人了。对此现象,某业内人士一语中的:主要是软件人才太紧缺了。在政府大力发展软件产业和数字产业的背景下,吸引了NEC、中兴软件等大型IT企业落户济南建立研发中心,随着入驻济南、入驻齐鲁软件科技园的IT企业日益增多,导致了软件人才的极度缺乏。
 
  目前济南也在增加对IT人才培养的投入,无论是政府、高校还是民间,大家都对IT业产生了巨大的兴趣。齐鲁软件科技园建立,各种培训学校开设,各大高校也纷纷开设软件开发及相关专业。但是人们还是可以清晰地看到,虽然开设了这些课程,但是教学质量以及培养出的人才还是与国际水平有一定差距.软件工程师是一个对专业要求非常严格的职业,一般要求精通VC++、C/C++、JAVA、.NET其中的一门语言,并熟练使用数据库,具备UNIX、Linux等相关知识。记者从相关学校了解到,学校不是不想开设更多的IT课程,并培养出国际化的软件开发人才,但是能教这门课的教师实在是太难找了。某IT企业的负责人表示,他们现在的软件工程师多数来自各大培训机构。
 
  当人们想方设法为济南IT培养软件工程师的时候,很多软件工程师看到的是外面更精彩的世界,他们纷纷奔向中关村、美国硅谷这样的IT中心。人才外流也成为导致济南软件开发人才缺乏的原因之一。某企业负责人表示:济南培养出来的很多人才都豪气壮志地出去了,有的获得了成功,有的碰壁后又回来了。他们碰壁不是因为他们不优秀而是因为他们没有很好的定位,济南的环境已经为他们提供了非常好的平台供他们发展。其实企业是非常喜欢这些在外碰壁后归来的求职者的,因为他们在了解到外面世界的真正情况后,会更加珍惜现在拥有的工作,更加踏实认真地完成现有的工作。
 
  日前,NEC软件(济南)有限公司、中兴软件技术(济南)有限公司参加了前程无忧主办的“实习2008”全国大学生实习总动员活动,走进高校寻求适合的软件工程师实习生,通过一天的选拔,企业方表示找到了一些非常不错的学生,遗憾的是其中挺多优秀的学生现在处在大三或者研一阶段,不能通过一段时间的实习后留在公司工作,所以企业只能放弃他们。这充分说明了近期IT企业需求的是:能够马上进入公司工作的人才,并且这个需求量是巨大的。

免费申请微软@w.cn和@9.cn邮箱

免费申请@w.cn,@9.cn邮箱,5G免费空间,找资源网测试4位的帐号可以申请。

绑定到您的QQ上,用这Email邮箱替换QQ号码,倍儿有面子!全世界最短的邮箱!
  
@w.cn的申请地址:
https://domains.live.com/members/signup.aspx?domain=w.cn
 
@9.cn的申请地址:
https://domains.live.com/members/signup.aspx?domain=9.cn 
  
9.cn w.cn是由 Windows Live Mail 授权的提供电子邮件服务的组织。 
  
有朋友说不知道登陆地址,mail.msn.com/mail.live.com/mail.hotmail.com都可以登陆,需要输入邮箱完整地址。