写点什么

Slingshot 开源加速离线 / 在线混合应用

  • 2007-07-17
  • 本文字数:1514 字

    阅读完需:约 5 分钟

13 日, Joyent 宣布基于 GPL v2 将 Slingshot Connector 开源。Joyent Slingshot 允许开发者将 Rails 应用程序部署为与桌面应用行为一致,可以在线或者离线(保持同步),可以拖拽,与所有其它桌面应用程序交互等。另外,Joyent 还提供了 Connector 产品和一组可以与 Joyent Slingshot 协同工作的第三方应用程序。

Slingshot 计划在今年 4 月份发布一个可以在 Windows 和 Mac OS X 上基本可以工作的版本(但是,似乎目前还没有发布)。Joyent 称 Slingshot 让游戏换一种玩法。

Slingshot 框架是轻量级且可自定义的,它让 Ruby on Rails 应用可以通过透明的数据同步离线运行。它不限制你如何运行应用程序及同步哪些数据,这些由开发者自己决定。这样,Slingshot 可以让 Rails 脱离浏览器。它可以打破 Web 应用和桌面应用的(通讯)壕沟,同时它没有失去 Web 应用在快速开发、部署和更新上的优势。最近 Google Gears 和 Dojo offline 也提供了这种能力,它们离线工作的方式虽然不同,但是希望给用户带来的体验是殊途同归的,这些技术希望用户能够将在线应用当作桌面应用来使用,让用户忘记“线”的存在。虽然 David Heinemeier Hanson 曾经开玩笑地认为离线只有在飞机上才有必要使用,但是从目前的技术走向上来看,这门技术无疑会被更多地开发和使用。Slingshot 以此作为一个出发点,希望进一步消除离线/在线应用的区别,所以它提供了协同工作的机制,希望帮助开发者更轻松地开发混合应用程序。近期在平台竞争上火爆的 Adobe 的 AIR、MS 的 Silverlight、Sun 的 JavaFX 无不希望提供这样的方案,这片市场被称为 RIA 市场,其竞争已经如火如荼,而传统的 HTML/CSS/Javascript 方式也依然保持强劲的发展势头,此时看到Slingshot 这样的产品开发人员应该更加感觉兴奋,因为RIA 的思路似乎依然在被不断扩展。

Slingshot 这个产品关注的是数据的交换和同步。这其实和 RIA 技术中的异步通讯一样扮演者传输的重任,因为目前的 RIA 应用大都是以数据为中心的,所以在消除离线/在线应用时首先需要解决数据同步问题。Joyent 在其 Blog 上介绍了 Slingshot 提供的数据同步的使用方法

Joyent Slingshot 是一个简洁的同步在线和离线数据的轻量级方案。作为一个开发者你可以提供一个透明的 ActiveRecord 传输层,允许简单的定义你的应用程序中哪些数据什么时候需要用什么方式进行同步。仅需要增加三十行左右的代码,你的 Rails 应用程序就可以从客户端向服务器同步数据。加上另外三十行代码你就可以使用基于文件的数据同步了。 框架提供了可以扩展的拖拽抽象层。可以挂入到应用程序已有的导入/导出机制中,而不需要修改任何应用程序的代码。

最后,它允许开发者方便的部署更新和迁移(migrations),无论用户离线了多久。

Slingshot 让开发者可以开发一种异步的 CS 应用程序,通过拖拽的方式同步数据,也可以通过文件的方式同步。并且从工作环境上 Slingshot 也提供了比较宽松的平台,Joyent 在他的 Blog 中这样描述它的运行方式

Slingshot 如何工作呢?我们已经从 Slingshot 中移除了对操作系统二进制文件的依赖和冲突。进一步说,Slingshot 允许开发者自己定义运行环境,安装 gems、plugins、二进制库或者其它,我们都可以处理。Slingshot 就像一个让 Rails 应用程序运行的虚拟机。

总而言之,使用 Joyent Slingshot 你可以:

  • 创建混合的 Web/ 桌面应用程序
  • 同步在线和离线数据
  • 在线和离线应用程序中使用相同的代码
  • 轻松的部署和更新你的应用程序
  • 在应用程序中拖拽导入/导出

Rubyinside 在报道 Slingshot 开源的时候,将其比喻为 37signals 将 BaseCamp 产品开源,可见其重要程度。Slingshot 的创新性在未来肯定会激发一些混合 RIA 应用的产生,让我们一起关注这个未来的技术吧。

2007-07-17 02:101209

评论

发布
暂无评论
发现更多内容

YashanDB CRYPT_SELFTEST函数

YashanDB

yashandb

YashanDB|Mybatis-Plus 无法识别 YashanDB?加一段配置就能解决

数据库砖家

数据库·

哈尔滨等保应用安全测评

黑龙江陆陆信息测评部

YashanDB |掉电后数据库启动报错 core dump?原来是 VMware 默认配置的“锅”!

数据库砖家

数据库·

YashanDB|Ubuntu 加载 C 驱动后 PHP 启动失败?原来是“库冲突”惹的祸

数据库砖家

数据库·

YashanDB CRYPT_HASH函数

YashanDB

yashandb

估值150亿后,腾讯继续加码「智元机器人」

机器人头条

人形机器人 具身智能 智元机器人

YashanDB|大事务回滚卡死全库,YAS-02016 报错怎么破?

数据库砖家

数据库·

YashanDB CRYPT_HMAC函数

YashanDB

yashandb

基于 Amazon Nova 和 TEN 框架的实时音视频交互解决方案

亚马逊云科技 (Amazon Web Services)

「Boli-职业发展助手」:技术人必备的智能职业规划与求职利器

Y11

找工作 简历 实习 校招 失业

BOE(京东方)发布行业首个可持续发展品牌“ONE”:以开放创新科技之力守护人类未来

爱极客侠

京东方

八大年度奖项揭晓!2024 BSRC年度盛典沙龙圆满举办

百度安全

「产品功能授权」和「外部开发者授权」的差异

柯杰

授权

YashanDB |执行 SQL 报 YAS-02024 锁等待超时?可能是默认设置的问题

数据库砖家

数据库·

Arthas sc(查看JVM已加载的类信息 )

刘大猫

人工智能 监控 Arthas 大模型 sc

YashanDB|数据库运行没问题,为何日志频繁提示 metadata changed?

数据库砖家

数据库·

字节推出 LiveCC,首个实时评论视频模型;AI 客户访谈初创 Listen Labs 融资 2700 万美元,红杉领投丨日报

声网

Kairos:AI Agent 时代的基础设施新范式,重塑全球算力网络

股市老人

YashanDB |PHP 无法连接 YashanDB?ODBC 驱动“找不到”的锅怎么甩?

数据库砖家

数据库·

从Servlet到云原生:一文讲透Java Web容器的核心技术体系

AI时代的一滴水

tomcat 云原生 Java web

桌面日历工具有哪些?3个常用的任务管理软件盘点!

职场工具箱

项目管理 任务管理 在线白板 办公软件 日历应用程序

烟草行业信创迁移-企业综合管理平台上线运行

中烟创新

YashanDB CRYPT_KEY函数

YashanDB

yashandb

教育考试院存储系统焕新:轻量升级,无缝切换!

天翼云开发者社区

存储 天翼云

YashanDB|JDBC 插入慢?别忽略了“网络带宽”这个瓶颈!

数据库砖家

数据库·

YashanDB CRYPT_RANDOM函数

YashanDB

yashandb

YashanDB|YAS-00413 超时报错?其实是系统资源限制“卡脖子”了

数据库砖家

数据库·

YashanDB|关闭归档时报 YAS-02079?你可能忘了关闭“复制模式”

数据库砖家

数据库·

10.接口而非实现编程

杨充

Slingshot开源加速离线/在线混合应用_Ruby_田乐_InfoQ精选文章