作者:莫庭胤               时间:2012-03-01

前些天晚上在找一个可以在ios、android、Windows系统下面能够方便传输文件的解决方案,发现dropbox(www.dropbox.com)确实可以实现跨系统的同步,它的机制是有一个中心服务器,每个客户端都可以请求服务器上传文件和下载文件,以及修改服务器的目录结构,作为PC端的服务器会自动同步所有的修改到PC端的文件夹(这个有点类似svn),而且也具有版本管理。

上面只是介绍这款产品的相关功能,但从这些功能出发思考,做一个跨平台的产品其架构是如何实现的呢?而且还有不少的第三方应用与之可以集成,证明其集成能力还是很好的。
查看了官方网站的api说明,除了sdk以外还有一个restl api,这个名词如果做过电商行业或者有了解过社交应用的应该不陌生,在infoQ网站也有一本这样的书RESTful Web Services Cookbook-cn,具体的可以通过google了解,关于restful的学习不是本文重点。

Restfule API的发展已基本蔓延到整个互联网,国外的facebook、twitter,甚至国内的新浪微博所提供的都有rest api。那为什么需要api呢?道理很简单,就是方便第三方应用的介入,让第三方系统能够访问系统的一些关键业务点或者业务处理。而且作为api的角度出发,它必须是与平台无关性的,这样才能满足不同平台不同开发语言的应用集成。

验证rest api的开发效果,我对dropbox 提供的rest api进行了开发,开发的过程中发现了一授权的处理,这个其实与单点登录类似,联想到我们的v9开发平台用授权的方式处理比单点登录貌似更加有说服力。授权完后,或者一个token,通过token调用不同的url进行访问,使用的是httpWebRequest的方式。

整个开发过程最大的障碍在于学习这个api涉及的方法的输入输出,但作为一般的开发人员基本上能胜任。

使用api的好处是解耦了平台与语言的关联,用.net或者java,至于是C#还是VB这个对api没有任何一点影响,api所关注的是你必须提交所指定的参数,我把处理的结果返回给你,中间用什么处理,怎么处理也不需要你管太多了。

这里联想一下v9的开发平台,是以wcf发布的服务接口,则必须使用sdk开发而且还必须是.Net平台的。作为一个开发平台,有必要把所有与业务无关的工作与处理都封装成api,避免业务过度关注业务无关的实现的问题,而且api的规划不应该是完全开放,还是有必要针对性或者是通用性的规划。如果是与平台无关性,那作为其他应用、系统的的集成就更简单方便了,毕竟很多企业都具有一个研发部分,可以进行这类的集成开发,很多企业的核心业务不是1-2个月可以帮之实现的。

使用api的好处是解耦了平台与语言的关联,用.net或者java,至于是C#还是VB这个对api没有任何一点影响,api所关注的是你必须提交所指定的参数,我把处理的结果返回给你,中间用什么处理,怎么处理也不需要你管太多了。

这里联想一下v9的开发平台,是以wcf发布的服务接口,则必须使用sdk开发而且还必须是.Net平台的。作为一个开发平台,有必要把所有与业务无关的工作与处理都封装成api,避免业务过度关注业务无关的实现的问题,而且api的规划不应该是完全开放,还是有必要针对性或者是通用性的规划。如果是与平台无关性,那作为其他应用、系统的的集成就更简单方便了,毕竟很多企业都具有一个研发部分,可以进行这类的集成开发,很多企业的核心业务不是1-2个月可以帮之实现的。然后我们的ipad、iphone、android版本其实也是可以一个服务器一套API解决三个平台上的应用,还可以给第三方应用作为集成。

本文只是通过一个实例来阐述一个集成设计的思路,并不一点是用rest才能做到好的集成,当然如果rest api滥用又会引发其他的问题。

转载于:https://blog.51cto.com/148297/794115

从dropbox的使用引申想到的系统集成相关推荐

  1. 转:中国互联网十五年的22个创新模式

    中国互联网十五年的22个创新模式     今天,看网上有人推荐<沸腾十五年>,讲中国互联网从发源到现今. 有人有如此梳理,自己本来也想梳理一下中国互联网这么多年,到底是哪些公司出来了,为什 ...

  2. 阿朱分享:中国互联网十五年的22个创新模式

    今天,看网上有人推荐<沸腾十五年>,讲中国互联网从发源到现今. 有人有如此梳理,自己本来也想梳理一下中国互联网这么多年,到底是哪些公司出来了,为什么会是他们出来了.他们的出来代表着什么趋势 ...

  3. 中国互联网十五年的22个创新模式

    中国互联网十五年的22个创新模式 作者: meng分类:坊间人语  阅读:198,032 次添加评论 今天,看网上有人推荐<沸腾十五年>,讲中国互联网从发源到现今. 有人有如此梳理,自己本 ...

  4. 日本語で独学する-五十音速记

    [あ行] --あア-- 平假名あ很像汉字的"女"字,像女孩子有个大肚子. 片假名ア很像汉字的"了"字,读音类似"啊". 一句话记忆:&quo ...

  5. 阿朱分享:中国互联网十五年的22个创新模式(转自CSDN)

    今天,看网上有人推荐<沸腾十五年>,讲中国互联网从发源到现今. 有人有如此梳理,自己本来也想梳理一下中国互联网这么多年,到底是哪些公司出来了,为什么会是他们出来了.他们的出来代表着什么趋势 ...

  6. 系统集成15真题解析

    上午试题 1.根据控制论创始人维纳及信息论的奠基者香农对信息的定义,信息是( ). A.一种物质                        B.一种能量 C.事先预测可知的报道           ...

  7. 以太坊的企业系统集成

    最流行的开源Java集成库--Apache Camel现在支持以太坊的JSON-RPC API. 以太坊生态系统 以太坊是一个开源,公共,区块链平台,用于运行智能合约.它提供了一个去中心化的图灵完备虚 ...

  8. DropBox免费扩容到10G了

    好久没有写博客了,郑重推荐下Dropbox这款同步软件,很多人有多台电脑,比如公司和家里一些文档需要同步更新,用U盘拷贝来拷贝去,不胜其烦.自然而然就想到用同步软件,而这方面DropBox从速度来说, ...

  9. 14 岁发现 Bug 兼职游戏开发、拒绝过乔布斯,Dropbox 创始人成为科技创业者的偶像...

    ‍‍ 作者 | 年素清 责编 | 王晓曼 出品 | 程序人生 (ID:coder _life) Drew Houston(安德鲁·豪斯顿)是著名的互联网企业家和云存储行业Dropbox公司的创始人和首 ...

最新文章

  1. 编程实现路由算法 实验报告_lt;中国通信专刊gt; EARS:用于软件定义网络中自动路由的智能驱动体验网络架构...
  2. Struts2中Action访问Servlet API的三种方法
  3. 中国稀土永磁材料市场发展态势及产销需求规模预测报告2021版
  4. 我总结的120页《图解MIT线性代数笔记.pdf》,都是干货!
  5. 00截断上传绕过_关于上传中的00截断分析
  6. oppo r17听筒测试软件,【OPPOR17评测】ColorOS变智能 OPPO R17堪称生活小秘书(全文)_OPPO R17(6GB RAM/全网通)_手机评测-中关村在线...
  7. LINQ找出重复和不重复的元素及linq OrderBy 方法 两个字段同时排序有关问题
  8. matlab做信号实验需要安装那些模块_无人机基于Matlab/Simulink的模型开发(连载一)...
  9. 为什么说算法是程序猿“修仙”的必经之地?
  10. 【树状数组+离线查询】HDU 3333 Turing Tree
  11. java二进制八进制十六进制写法,java 二进制,八进制,十进制,十六进制间相互转换的步骤...
  12. gcc is unable to create an executable file.
  13. VS C++ 从字符串中查找字符最后一次出现的位置 strrchr
  14. plc secs半导体通讯协议 PLC 与MES的SECS/GEM通讯方案
  15. C#用openhardwaremonitor动态链接库获取CPU温度
  16. Echarts绘制各种数据可视化图表案例(效果+代码)
  17. 20155313 杨瀚 《网络对抗技术》实验六 信息搜集与漏洞扫描
  18. 笔记本电脑WIFI图标消失解决方案大全,无WIFI图标也能自由连WIFI上网。
  19. 【mininet 0x02】如何使用mn工具来操作mininet
  20. PS操作01 - PS切手机图标 + Android.9.png图片制作

热门文章

  1. Angualr6表单提交验证并跳转
  2. Linux文件查找find和locate
  3. 斜杆和反斜杠在不同系统的区别
  4. angular2+ 自定义pipe管道实例--定义全局管道及使用
  5. ZooKeeper的配置文件优化性能(转)
  6. 1.html5究竟是什么
  7. [zz]三权鼎立形式的软件开发方式
  8. QTableView和QTableWidget翻页功能实现
  9. C++多线程的简单程序
  10. 判断某个元素是否使用jquery绑定方法