点击围观!腾讯 TAPD 助力金融行业研发提效、敏捷转型最佳实践! 了解详情
写点什么

Colossus:来自 Tumblr 的新服务框架

  • 2014-12-12
  • 本文字数:836 字

    阅读完需:约 3 分钟

一直以来,全球最大的轻博客网站 Tumblr 面临的最大问题之一是如何随着平台规模的增长恰当地扩展基础设施。微服务是一个前景非常光明的策略。它清晰地划分了功能职责,有助于建立结构良好的基础设施,更容易处理 Bug 和性能瓶颈。但微服务也面临自己的问题。一是微服务需要易于构建、维护、部署和监控;二是,它需要有非常高的性能和容错能力。 Colossus 是 Tumblr 开发的一个用于应对这些挑战的新框架。它用 Scala 编写,基于 NIO 和 Akka actor 框架构建,提供了一个轻量级的 I/O 框架,用于构建高性能的 Scala 微服务。它有如下特性

  • 基于事件的编程——Colossus 采用了一种基于事件编程的现代化用法,直接基于 NIO 构建,充分利用了 Scala 的函数式和面向对象特性。借助它,开发人员可以用最少的样板代码编写出功能强大的应用程序。
  • 与 Akka 无缝集成——Colossus 完全作为 Akka actor 编写。因此,开发人员很容易使用外部 actor 连接底层事件处理代码。此外,它还提供了完全基于 actor 的 API。
  • 实时监控指标——Colossus 包含一个指标聚合与报表系统,使开发人员很容易实时跟踪事件。像请求速率、延迟这样的常用指标都是内置在服务中,可以开箱即用。而且,开发人员很容易添加自己的指标。
  • 不只可以编写服务——虽然 Colossus 起初是为开发微服务而构建的,但其核心是对 NIO 的简单包装,开发人员可以用它编写自定义的服务器和客户端。而且,Colossus Task 允许开发人员在事件循环内编写任意代码。

Colossus 现在已经成为 Tumblr 基础设施的一个基础部分,极大地改善了他们构建服务的方式。他们已经将它成功地用在生产环境的数个后台系统中。

目前,该项目已经遵循 Apache License 在 Github 上开源。但由于其开发还在进行中,所以版本是 pre-1.0。感兴趣的读者可以查看入门指南完整文档示例


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-12-12 01:562347
用户头像

发布了 1008 篇内容, 共 356.7 次阅读, 收获喜欢 332 次。

关注

评论

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

干货 | 在Docker 上搭建持续集成平台 Jenkins

霍格沃兹测试开发学社

力扣17 - 电话号码的字母组合【回溯、哈希映射、队列】

Fire_Shield

队列 深度优先搜索 9月月更

干货 | 环境问题还是测试的老大难?两个步骤轻松搞定

霍格沃兹测试开发学社

2022 世界人工智能大会|人工智能与开源技术先锋论坛成功举办

Kyligence

人工智能大会 先锋科技论坛

干货 | 读懂 Appium 日志,让测试效率翻倍!

霍格沃兹测试开发学社

干货|APP自动化Android特殊控件Toast识别

霍格沃兹测试开发学社

透过Redis源码探究Hash表的实现,你学废了吗?

Java快了!

干货 | 原来升职加薪的测试工程师都擅长做接口测试

霍格沃兹测试开发学社

干货 | 测试人职场晋升“潜规则”:15 年经验资深测试经理的职场忠告

霍格沃兹测试开发学社

有哪些方法可以提高企业的文档管理水平?

Baklib

文档 文档管理

干货 | 利用 pytest 玩转数据驱动测试框架

霍格沃兹测试开发学社

相约 ArchSummit 杭州站,参与官方评论赢取精美周边!

InfoQ写作社区官方

热门活动 ArchSummit

干货 | 谁懂这篇文,玩游戏还会卡顿?

霍格沃兹测试开发学社

解读《Benchmarking Hybrid OLTP&OLAP Database Systems》| StoneDB学术分享会

StoneDB

数据库 国产数据库 StoneDB 企业号九月金秋榜 9月月更

干货| app自动化测试之Andriod微信小程序的自动化测试

霍格沃兹测试开发学社

CeresDB 技术架构简介

TRaaS

#开源项目

openGauss内核分析:SQL by pass & 经典执行器

Java-fenn

Java

WAIC 2022 | 洞见科技王湾湾:隐私计算在金融产业的应用与挑战

洞见科技

干货 | 背熟这些 Docker 命令,面试再也不怕啦~

霍格沃兹测试开发学社

字节前端必会面试题

夏天的味道123

JavaScript 前端

知识管理,知识经济时代必不可缺的工具

Baklib

知识管理 知识 知识经济

百度前端高频面试题(附答案)

beifeng1996

JavaScript 前端

Kyligence 联合创始人兼 CEO 韩卿荣获金融科技风云人物奖

Kyligence

金融科技大会

TDengine 如何进行 SQL 写入?官方最全教程来了

TDengine

数据库 时序数据库 企业号九月金秋榜

2022年哪些工具适合设计企业产品手册?

Baklib

产品 产品手册

WAIC 2022 | 洞见科技CTO何浩:隐私计算统一底座赋能金融数字化转型

洞见科技

干货 | 应用打包还是测试团队老大难问题?

霍格沃兹测试开发学社

干货 | 录制你的第一个web 自动化测试用例

霍格沃兹测试开发学社

干货 | 移动端App自动化之App控件定位

霍格沃兹测试开发学社

干货 | 解决 App 自动化测试的常见痛点(弹框及首页启动加载完成判断处理)

霍格沃兹测试开发学社

Colossus:来自Tumblr的新服务框架_语言 & 开发_谢丽_InfoQ精选文章