AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

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:101036

评论

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

API网关才是大势所趋?SpringCloud Gateway保姆级入门教程

Zhendong

Java spring API 网关

写给大神

小梨蕊

情人节 520单身福利 520 单身福利

线程与线程池的那些事之线程篇

秦怀杂货店

Java 线程 多线程 进程 并发

❤【520特别祝福篇】愿有情人终成眷属,已成眷属爱情稳固

码界西柚

爱情 5月日更 520单身福利 520 单身福利

数据预处理&特征工程

Qien Z.

Python 5月日更

父母为什么催婚,而你又在逃避什么

小天同学

婚姻 爱情 5月日更

浪潮云洲链斩获2020-2021年度新一代信息技术创新产品殊荣

珠联壁合地设天造|M1 Mac os(Apple Silicon)基于vscode(arm64)配置搭建Java开发环境(集成web框架Springboot)

刘悦的技术博客

Java vscode spring Boot Starter JDK11 m1

数据挖掘从入门到放弃(七):TensorFlow和keras实现线性回归LinearRegression

数据社

机器学习 5月日更

【偶尔一道ctf】xctf adword mobile easy-apk

Thrash

架构学习笔记:复杂度来源

风翱

5月日更 架构复杂度

Dubbo 延迟与粘滞连接

青年IT男

dubbo

音频均衡器EQ

floer rivor

音视频 Eq

520,珍惜眼前人

数据社

520 520单身福利 520 单身福利

这一次,彻底搞懂 Go Cond

HHFCodeRv

Go 语言

高并发调优backlog多大合适?

运维研习社

nginx 运维 5月日更 并发调优

夺魁!亚马逊云科技荣膺中国数据管理解决方案领导者!

亚马逊云科技 (Amazon Web Services)

为什么“放弃”?

Nydia

学习

高性能 JavaScriptの笔记(四)

空城机

JavaScript 大前端 5月日更

PKI系统简介

上海派拉基础研发

CA PKI

Flink的广播变量

大数据技术指南

大数据 flink 5月日更

造车潮

ES_her0

5月日更

520节日快乐

IT蜗壳-Tango

5月日更

Golang function

escray

学习 极客时间 Go 语言 5月日更

拥有5大核心竞争力的华为云GaussDB,成SACC2021最靓那一个…

华为云开发者联盟

数据库 华为云 GaussDB 存算分离 GaussDB(for Redis)

Nginx基础配置-反向代理

梁龙先森

nginx 大前端

聊聊dubbo协议

捉虫大师

破茧成蝶,如何用数据之力重塑您的业务?| 云途专栏

亚马逊云科技 (Amazon Web Services)

【epoll】epoll多路复用和Reactor设计思想

Linux服务器开发

后端 网络编程 C/C++ epoll Linux服务器开发

产品思维

lenka

5月日更

从技术趋势看质量赋能

BY林子

敏捷 软件测试 质量赋能

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