『阿里云云栖社区TB』万师傅使用云产品,上手简单、开箱即用、省去运维烦恼( 二 )


实时3.1 选型原则
团队初始成员均为Java出身 , 并且我们当前没有、未来也不准备拥有自己的Hadoop集群 。 综合考虑 , 采用了阿里开源的JStorm作为核心的流式计算引擎 , 同时也在尝试业界最新的Flink , 为未来做准备 。 至于没有使用阿里云商业版的“实时计算” , 完全是出于成本考虑 , 在我们的场景下 , 自建JStorm集群的成本会远低于使用“实时计算” 。
与核心的流式计算引擎相配套的中间件及数据存储 , 使用的全部都是阿里云的产品 , 开箱即用、省去运维烦恼 。
3.2 实践
3.2.1 消息队列
消息队列类的产品 , 主要使用了“日志服务SLS”和“消息队列RocketMQ”两种 。
“日志服务SLS”这款产品 , 大于等于开源组合ELK , 不仅有日志采集、搜索引擎、分析展示 , 还有消息队列、监控告警等功能 , 价格也很合理 。 尤其 , 这几个功能的组合 , 可以轻松实现业务日志告警、nginx监控等等使用传统方式要开发很久的需求 。 如果单纯作为消息队列使用 , 还可以关闭索引 , 以节省费用 。
“消息队列RocketMQ”的使用 , 主要看中了“定时延时消息”这一功能 , 可以实现很多定时延时任务的需求场景 。
3.2.2 缓存
Redis , 不需要过多介绍 。
3.2.3 数据库
阿里云包含了非常多的数据库类产品 , 根据我们的实际需求 , 主要使用了以下几款:
(1)RDS for MYSQL , 与MYSQL一致 , 不需要过多介绍;(2)PolarDb , 阿里云自研的云原生数据库 , 与RDS价格一致 。 对于我们使用者来说 , 它是一个可以支持更高读并发、单实例容量更大的MYSQL 。 可以帮助我们建立离线数据中心 , 也解决了“所有数据库的查询都要先经过Redis缓存”的问题 , 节省了少量Redis的费用;(3)TableStore , 这款产品的初衷应该是想要对标开源的HBase , 主要用于单一索引、庞大数据量、单条或小范围检索、高并发、低延时的查询场景 。 在单条查询时 , 性能几乎可以媲美Redis , 而且也拥有TTL功能 。 被我们大量使用在用户画像、幂等校验等场景中;其他产品 , 例如DRDS、AnalyticDb , 或MongoDb、Elasticsearch等 , 由于目前的场景不需要 , 所以没有投入使用 。
数据展示4.1 选型原则
前端产品的选型原则很简单 , 由于我们的团队没有专门的前端开发 , 所以只能选择阿里云的产品、或者免费的、可对接的开源产品 。
4.2 实践
阿里云的可视化产品主要有两个:QuickBI和DataV 。 我们都在使用 。
QuickBI主要用于日常的数据展示、分析 , 帮助运营、产品等部门进行决策;
DataV主要用于“非交互式”的数据展示场景 , 例如展会、大屏等 。


推荐阅读