HTTP长连接与短连接、长轮询与短轮询及长轮询的实现概述

    HTTP长连接(longconnection)与短连接(shortconnection)本质上是TCP长连接和短连接:短连接是指在一次HTTP请求和响应之后立即关闭本次TCP连接,下次请求响应重建一个新的TCP连接;而长连接是指请求响应之后并不立即关闭本次TCP连接,下次请求响应继续重用该TCP连接。HTTP/1.0默认短连接,HTTP/1.1起默认长连接,长连接通过请求头Connection:keep-alive启用长连接、通过Keep-Alive:timeout=20设置长连接的超时时间...

阅读全文

如何解决Cookie和Ajax的跨域问题

        Cookie用来在浏览器端保存小文本信息,它的属性Domain和Path用来标识该Cookie在什么域和什么路径下有效。要使Cookie跨域如何实现?若是在同一顶级域名下实现各子域名跨域,可以设置Cookie的Domain,假设顶级域名是example.com,则设置Cookie.Domain=".example.com"即可。那不同顶级域名之间如何跨域呢?为各顶级域名生成一个相同名和值的Cookie、JSONP调研、SSO单点登录等。&n...

阅读全文

浅谈API接口

        API接口作为面向外部系统的门户,其背后是数据,用于隔离系统与数据,方便各异构系统整合与交互。不同系统之间的交互本质上是数据的交互,若直接访问各自的数据,必然造成高耦合、混乱和不安全,所以API也可以看作是外部系统与数据之间的中间件,用于各异构系统之间共享数据。      设计API,首先要考虑如下几个问题:(1)如何标识调用方;(2)如何防止请求被撰改;(3)如何过滤过期请求。 &nb...

阅读全文

AJAX网页如何实现SEO友好

        在WEB网页上应用AJAX技术可以提高用户体验,但是对于SEO却不够友好,因为搜索引擎不会执行JS,而AJAX网页的内容都是动态生成(即网页展示的内容都是在浏览器端通过JS动态生成的)。既要保留AJAX又要利于搜索引擎收录,应该如何做到两者的兼顾呢?        搜索引擎收录网页,是通过机器蜘蛛抓取网页HTML源代码,并从中解析网页URL或网页内容。因此每个AJAX网页应分配UR...

阅读全文

小试Git源码版本控制

        我们一个人开发或维护一个项目的时候,一般项目源码放在自己的电脑上就可以了;当加入新成员和我们一起开发或维护的时候,如果还是按照这样的方式放置源码,那源码的合并将是一件麻烦和苦恼的事情。因此在团队开发中我们需要源码版本控制系统,常用的有SVN、Git等,有了源码版本控制,方便团队开发,也更方便随时随处获取源码。SVN是集中式存储,而Git是分布式的方式,Git的使用方式也较SVN更复杂一些。目前有不少网站提供Git方式的源码托管服务,如GitHub、Git@OS...

阅读全文

没有新的东西,只有新的组合!

        曾经在一本书上看到这样一句:没有新的东西,只有新的组合!思量万千,不无道理。我想大概有万变不离其宗,以不变应万变的意思吧。        再优美动听的曲调,也不过是由有限的音符组成的;再经典的文章,也不过是由几千字符择字组合出来的;再新的物质,也还是不过由那几十种元素组成的;再优秀的程序,也不过是由若干字母拼成的……...

阅读全文

关于学习IT新技术的一点看法

        IT技术的确是日新月异、更新迅猛,学习IT的人得坚持学习、积极跟进IT技术的步伐。可能一个人刚掌握一门技术,新的技术产生了,刚掌握的技术又过时了。IT学习没有终点、没有顶点,其实任何学习都一样。        然而,即使技术日益更新,现实应用却不一定会跟着新技术的步伐——现实应用不一定会即时采用新技术,因为采用任何一样新技术都是有风险的,都是可能要付出一定代价的。而且,现实应用有老...

阅读全文