swift能干什么,不能干什么及相关概念

swift能干什么,不能干什么及相关概念,第1张

本帖最后由 pig2 于 2014-3-11 18:45 编辑

1.swift 是什么?

OpenStackObject Storage (Swift) 是开源的,用来创建可扩展的、冗余的、对象存储(引擎)。 swift使用标准化的服务器存储 PB 级可用数据。但它并不是文件系统 (file system) ,实时的数据存储系统(real-timedata storage system) 。 swift 看起来更像是一个长期的存储系统 (long term storage system) ,为了获得、调用、更新一些静态的永久性的数据。比如说,适合存储一些类型的数据:虚拟机镜像,图片存储,邮件存储,文档的备份。没有“单点”或者主控结点 (master point of control) , swift看起来具有更强的扩展性、冗余和持久性。

2.swift 能做什么?

长于存储非结构化数据,大、小文件性能据说都很好(目前没有测试数据, adrian otto 说测试过10 亿个 1byte 数据)。

简单来说swift是开发苹果iOS的最快捷的计算机语言。

但是实际上swift已经可以进行一次性编译之后,同时实现在苹果iOS和安卓系统上的部署。能够实现这个功能的目前唯一的IDE是SCADE,一个德国的软件产品(目前处于试用状态)。

而且从2015年起,swift不但支持在手机前端的开发,还支持开发服务器后端的程序,比如使用PerfectlySoft出品的Perfect 2.0就可以确保swift在Linux Ubuntu 16.04上运行并实现一个Web服务器,访问各种数据库并调用远程访问。实际上Perfect 2.0是市面上最快的HTTP服务器,比php和java服务器都快得多。

3.swift 不能做什么?

Objects must be <5GB : swift 1.2 之后已经对 object 的大小不做限制

Not a Filesystem :不是文件系统。 swift 使用 REST API ,而不是使用传统意义上的文件操作命令, open(), read(), write(), seek(), 和 close() 等。

No File Locking :干脆不支持“文件锁”。其实在 swift 中,“锁”的概念是没有必要的。

No Directory Hierarchies :没有文件目录结构。 swift 可以模拟目录结构,但没有必要

Not a Database :不是数据库。 swift 使用 account-container-object 的概念存储 object ,可以列表出指定 container 中的 object ,不支持 server 端的查询和处理操作。

swift做web我觉得优势不大,web的未来基本上被js把持着,js的能力大家有目共堵。如果你要做web开发那一定是要学js的(浏览器内置的都是js执行引擎),不是有特殊原因的话没必要再学另一门语言一起做web开发,不管是php,ruby,python还是java,c#,何必呢。

要说swift除了开发iOS外,我觉得在后端也会非常大的价值,swift采用ARC而不是gc,这就意味着它可以替代C,C++成为高性能项目的主打语言,这些也是java,go所不足的地方,同时swift的生产力却远非c能达到。当然这个过程肯定没那么快,swift要成为后台语言首先要解决跨平台的问题,mac os x的服务器占比相当低。跨平台就意味着一套平台无关的高性能基础库,还要针对服务端的性能优化,这些都是swift往后需要不断完善的是,swift的开源也是为swift的未来提供了很大的想象空间,但是用来做web页面没有什么优势


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/280226.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-21
下一篇2023-04-21

发表评论

登录后才能评论

评论列表(0条)

    保存