说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

【技术博客推荐】2014年值得关注的10个开源项目

HTML文档下载 WORD文档下载 PDF文档下载
OpenIoT是物联网和云计算相结合的开源解决方案;OpenDaylight旨在推动创新实施以及SDN的透明化;Tox是一个即时消息应用,其目标是替代Skype;InfluxDB是一个开源分布式的时序、事件和指标数据库……

【编者按】如果你认为开源软件的优势是免费和拿来主义,那么你就错了,在当今的软件市场中开源项目越来越耀眼,选择开源软件的最大优势无非是风险低、产品透明、行业适应能力强等等,但是在开源项目领域真正有影响力的企业,绝对是那些为这个项目贡献代码最多的企业。网名为架构师的博主李强总结了值得大家关注的10个开源项目,都很有价值,以下为原文:

1. Appium

官网:http://appium.io/

Appium是一个开源的自动化测试框架,它主要用于原生移动应用或混合移动应用。


Appium使用WebDriver:JSON wire protocol来驱动iOS应用和Android应用。

注:WebDriver是一个基于Selenium的自动化测试类库,它不是运行于浏览器内的JavaScript程序,而是可以与浏览器交互以及控制。WebDriver的所有实现都是与浏览器相互通信的,RemoteWebDriver服务器应该使用一个通用的连接协议,此协议定义了一套REST风格的API,它使用了基于HTTP协议的JSON格式实现。要使用Appium,先安装Node.js。

2. Docker

官网:https://www.docker.io/

Docker是一个开源的应用容器引擎,让开发者可以打包其应用以及依赖包到一个可移植的容器中,然后发布到任意Linux发行版,也可实现虚拟化。容器完全使用了沙箱机制,相互之间不会有任何接口(类似iPhone的app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包依赖。


Docker使用标准化容器的概念,能够容纳软件组件及其依赖关系——二进制文件、类库、配置文件、脚本、Virtualenv、jar包、gem包、原始码等——而且可以在任何支持cgroups的64位(针对x64)Linux内核上运行。这样的容器可以部署在笔记本、分布式基础架构、云端或是其他地方,其对环境的保留适用于广泛的用途:持续部署、Web部署、数据库群集、SOA等。

Docker自身使用Go语言开发,并使用了Linux的cgroup、namespacing、支持写时复制特性的AUFS文件系统以及LXC脚本。

3. exercism.io

官网:http://exercism.io/


exercism.io是新一代的代码审查工具,颠覆了传统的代码评审的观念。exercism.io基于Ruby语言开发,其后台使用了PostgreSQL数据库。

4. InfluxDB

官网:http://influxdb.org/

InfluxDB是一个开源分布式的时序、事件和指标数据库。InfluxDB使用Go语音编写,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。


在InfluxDB数据库中,一切都是基于时间序列的,同时你仍然可以执行那些标准的函数,比如求最小数min、求最大数max、求和sum、统计个数count、求平均值mean、求中位数median、求百分比percentile等等。

  • InfluxDB数据库可以在任意时间间隔收集数据并完成计算汇总,它可以跟踪上百个指标到上百万个指标。
  • InfluxDB数据库的数据模型支持任意的事件数据。
  • InfluxDB数据库内建了基于HTTP的API,因此通过JavaScript读写数据非常方便。
  • InfluxDB数据库自带了管理工具,以可视化的方式管理数据库、用户及权限等。

5. OpenDaylight

官网:http://www.opendaylight.org/

OpenDaylight是一套以社区为主导的开源框架,旨在推动创新实施以及软件定义网络SDN的透明化。面对新潮的SDN网络,大家需要合适的工具帮助自己管理基础设施,这正是OpenDaylight的专长。作为项目核心,OpenDaylight拥有一套模块化、可插拔且极为灵活的控制器平台作为其核心,这使其能够被部署在任何支持Java的平台之上。这款控制器中还包含一套模块合集,能够执行需要快速完成的网络任务。


OpenDaylight大体分三层:

  1. 网络App和业务流程层
  2. 控制器平台层
  3. 物理和虚拟网络设备层

6. OpenIoT

官网:http://openiot.eu/

OpenIoT是把物联网和云计算相结合的开源解决方案,OpenIoT项目专注于提供一个开源的中间件框架,使得云环境中的物联网IoT应用能实现公式化的自管理。因此,OpenIoT中间件框架将作为物联网应用的宏伟蓝图,使得物联网应用的交付变得自动化,更能适应云基础设施。


OpenIoT创建了一个开源的中间件,可以从传感器云中获取海量信息,而无需顾虑具体使用的传感器是什么。

7. serverspec

官网:http://serverspec.org/

serverspec是面向Puppet、Chef或其它配置管理工具的,用于测试服务器的配置是否正确。它可以编写RSpec测试。


注:RSpec是一个基于Ruby语言的测试工具,它高举行为驱动开发的大旗,目的是使得测试驱动的开发TDD变得更富有效率,更令人愉悦。

RSpec的特点:

  1. 丰富的命令行程序
  2. 实例和组的文字说明
  3. 灵活和可定制的报告
  4. 可扩展的预期语言
  5. 内建了mocking/stubbing框架

使用serverspec,可以编写RSpec测试,以此检查服务器的配置是否正确。serverspec通过SSH访问来测试服务器的实际状态,你无需在服务器上安装任何代理软件,也不管你使用的是何种配置管理工具,比如Puppet、Chef、CFEngine等。

8. Tox

官网:http://www.tox.im/

Tox工具可以让你在和家人,朋友,爱人交流时保护你的意思不受政府无孔不入的偷窥。也就是说,它是一个反监听的工具,保护个人隐私。


Tox工具免费、开源,是一个即时消息应用,其目标是替代Skype。

Tox的目标是成为一个易于使用的、集很多功能于一身的通信平台,目前已经支持文本和音频,未来还将支持视频聊天。确保用户的隐私安全和消息的安全传递。

9. XPrivacy

官网:http://repo.xposed.info/module/biz.bokhorst.xprivacy

XPrivacy是Android系统的一个隐私管理器。XPrivacy是一款基于Xposed框架的模块应用,可以对所有应用可能泄露隐私的权限进行管理,对禁止可能会导致崩溃的应用采取欺骗策略,提供伪造信息。


XPrivacy是权限管理的新秀,即勾即起效,主攻隐私相关的权限,类型非常详细,同时也造福了无法使用Pdroid的用户。

10. 保留

原内容推翻,还没想好。

以“ 云计算大数据 推动智慧中国 ”为主题的 第六届中国云计算大会 将于5月20-23日在北京国家会议中心隆重举办。产业观察、技术培训、主题论坛、行业研讨,内容丰富,干货十足。票价优惠,马上 报名 !

原文链接:2014年值得关注的10个开源项目(上)、2014年值得关注的10个开源项目(中)、2014年值得关注的10个开源项目(下)(责编/魏伟)

备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘