上个世纪60年代,在早期的分布式计算中就诞生了RPC的概念。
1978年,IPV4协议被IEEE通过。
1991年10月,RPC的一种实现CORBA 1.0版本发布,可以实现跨语言的RPC
1993年,HTML推出。
上世纪90年代,互联网编程BS架构的一般设计如下
1995年,Java/JavaScript提出。
1995年,apache http server v0.6.2推出。可以调用CGI(现在一般是C++代码)。在现在这个时代,apache主要用于提供静态文件和负载均衡。
1996年,ASP推出,微软体系内的程序员终于不用精通美工,在代码里写页面了。同年,微软推出了IE中的iframe技术,可以在网页中和后台交互数据。也是同一年,微软的ActiveX技术面世,同样可以实现在客户端网页和服务端交互数据。可惜,ActiveX已经是过去式了,edge浏览器已经不支持了。
1997年2月,RPC的一种java实现诞生(RMI)。RMI一般被诟病难以穿越防火墙。这是因为他并非使用标准的端口罢了。特点是可以像调用本地对象一样调用远程对象。
1997年,sun推出了EJB规范。使用的即是刚刚诞生的API
1998年1月,weblogic 8.0推出,是一个收费的J2EE服务器。
1998年,J2EE诞生。
1999年,ASF组织成立。
1999年,tomcat推出,支持servlet和JSP标准。
1999年12月,微软推出SOAP(Simple Object Access Protocol)、WSDL(WebServicesDescriptionLanguage)、UDDI(UniversalDescriptionDiscovery andIntegration)。这本来是一个可以基于文本传输(xml)的强大的服务自动发现调用架构。SOAP架构在HTTP等网络协议上。SOAP实际上和RPC不同,而是一种web service的实现。而后者何时诞生已经不可考据。
2000年,伴随者JDK1.3的推出,JNDI成为JavaEE的一项平台级服务。
2000年5月,Struts推出。
2000年,REST(Representational state transfer)概念被首次提出,核心是客户端和服务端是无状态的。
2001年,iBATIS持久层框架推出。
2001年,JSON 开始发展,现在,他已经是app和server交流数据的主流
2003年9月,Hibernate开发团队进入JBoss公司。可以使用JNDI数据源,也可以直接利用JDBC对数据库进行操作。定位是一个持久层框架。
2004年,ngnix推出,致力于成为一个高性能的http和反向代理服务器。
2004年3月,Spring1.0版本发布。随之推出的有建立在HTTP协议上,使用标准序列化的HttpInvoker
2004年9月,JBoss 4.0发布。在这一版本中,JBoss整合了tomcat的功能。JBoss的定位是一个开源的J2EE应用服务器。主要优势是开源。商业竞争对手是weblogic。
2004年,谷歌在谷歌地图中使用了ajax技术。
2008年10月,zookeeper 3.0.0版本发布
2008年,安卓发布。从此之后,手机app发展呈现井喷之形式。当时APP与后台的通信主要通过HTTP和WAP。但是WAP已经作古了。很多地方内网wifi只支持HTTP代理。当然,伴随着手机app的发展,也越来越多的直接使用TCP协议。视频传输则用UDP。
2010年,iBATIS改名为mybaits。
2010年,VMWare开始开发Redis。
2012年,阿里开源dubbo。使用RMI,可以使用multicast/zookeeper/redis /simple四个注册中心的任何一个。