前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Apprenda和R分析应用程序工作负载数据

使用Apprenda和R分析应用程序工作负载数据

作者头像
神话_Tyrannosaurus
发布2018-01-10 11:44:48
8450
发布2018-01-10 11:44:48

平台即服务(PaaS)可以利用的最重要的数据类型之一就是它在其权限范围内运行的访客应用程序的内容。PaaS服务应该了解关于访客应用程序的各种各样的事情 - 包括它们的体系结构,依赖性,跨基础设施的规模等等。

包括应用程序资源利用指标(CPU,RAM等)在内的数据是企业数据中心容量规划,策略实施和应用程序隔离等关键因素。像Apprenda这样的PaaS服务通过一个集中的单一实例(在我们的例子中就是一组REST风格的API)提供了这些信息,使得在数据中心运行应用程序指标分析变得比以往更容易。

Apprenda作为PaaS服务的方式是通过平台可扩展性和API为开发人员和平台操作员提供有用的信息。这是因为数据中心提供了大量工具来提供高级分析功能,只要您可以为其提供所需的信息即可。我们整合了一些工具,比如系统中心(System center)New Relic等等,因为这些工具是我们客户投资的工具,而且这些工具擅长于分析。

我们的工作不是重新发明这些工具,而是提供数据。 Apprenda捕获有关应用程序的信息,例如部署的时间,资源策略(CPU和内存的分配),资源的实际利用率,规模(实例数量),自定义元数据等等。所有这些信息都可以输入到数据中心工具中,帮助IT人员做出重要的数据驱动决策。

然而,在DevOps的领域内,人们创造性使用这些数据并不罕见。通常情况下,这意味着使用“du jour”机制,它可以是脚本(PowerShell)、编程语言(R(https://en.wikipedia.org/wiki/R_(programming_language%2529%29)或一个运行平台([Node.js](https://nodejs.org/)),以快速有效地获取、处理和操作数据。

在一个数据量较大的例子中,让我们看看R的表现,这是一个以数据挖掘和统计分析为中心的强大的编程语言。它为许多类型的数据分析技术提供了直接的工具,并且可以使用社区维护包进行扩展。

在下面的简单例子中,我使用标准的R函数加上三个包(使用R的install.packages()函数很容易将包包含进来):

  1. jsonlite用于解析Apprenda API返回的JSON数据。
  2. httr用于处理验证和检索数据所需的HTTP请求。
  3. plotrix帮助渲染检索到的数据。

从以上步骤看非常简单。第一步是使用Apprenda环境进行身份验证:

我现在将我的Apprenda会话标记存储在一个名为“token”的变量中。我将该“token”作为我的API调用的参数以获取应用程序数据:

GET()是由httr包提供的一个函数,它简化了对API的HTTP请求。我已经将Apprenda会话标记添加到HTTP Headers 进行身份验证,并且包含查询字符串参数,该参数将帮助返回平台上当前正在运行的所有应用程序工作量。返回的数据被解析并存储在一个名为'r'的变量(在R中,这是一个向量)中,,该变量现在有151条记录,每条记录为一个应用程序工作量。 'r'变量中的每条记录都有15个变量(属性),我们可以使用这些变量在整个结果集合上运行分析。

为了便于说明,我将使用变量componentType,它表示Apprenda对已部署的应用程序工作量的类型 - 七种一目了然的类型:UserInterface,PublicUserInterface,WindowsService,JavaWebApplication,LinuxService,WcfService,和Database(数据库。然后,按照组件类型对集合进行分组时,绘制显示组件类型工作量分布的图表变得非常简单:

结果图(pie3D()方法来自 plotrix 包)如下所示:

01.png
01.png

我曾与那些无法详细描述他们的应用程序组合的架构构成的IT人员进行对话,在这种情况下,我们用一行R实例实时地提取数据。不可否认,饼图是相当简单的方式来呈现这个信息的,但重点是数据是可用的,可以分组,过滤,操纵,并与R分析非常简单。

在这个例子中,我使用了RStudio的开源版本。从平台的API中可以收集到一些其他有用的信息:

1.资源分配与每个工作量的实际利用率之间的平均差异。 (这在容量规划中很有用。)

2.运行时间最久的应用程序工作量。

3.最分散的应用程序。 (这可以帮助扩大决策。)

还有更多的信息。像Apprenda这样的PaaS服务,本质上是数据中心栈中一个独特的部分,因为它维护了基础架构和应用程序。它也作为数据的中心,当进行创造性地分析时,提供新的见解。这些见解为企业提供了一个机会,可以增强他们的实践,可以帮助他们更好地为开发人员和应用程序提供服务,同时也提高了运行效率。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档