
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了无服务器编程开发的一些基础知识等内容,而本文我们就通过案例分析来简单了解一下,无服务器编程监控与测试方法分享。
1、监控、日志和调试
一旦我们的应用程序被部署完毕,我们就会需要针对监控和日志的良好的解决方案,这类工具目前有几个组织正在尝试积极地发展着。除了评估其中一个组件的功能,我们也需要号的工具追踪请求,这些请求穿越了一个完整的多个无服务器计算功能和配套服务体系的分布式系统。Amazon正在将X-Ray推向该领域,目前说这个还有点为时尚早。
调试也是挺重要的。程序员很少在一次代码运行通过之前不犯错误,我们也别寄希望于这种情况会有所改变。我们依赖于监控,在FaaS功能的开发阶段评估问题,但是这种调试方式是石器时代的工具。
当我们调试传统的应用程序时,我们从IDE工具那里可以得到很大的支持,通过设置断点、单步调试代码,等等。使用现代化的基于Java的IDE工具,你可以绑定一个正在运行的远程进程,并且远程执行调试工作。因为我们更加倾向于使用云端部署的FaaS功能完成大量的部署工作,希望未来你的IDE工具也可以具有类似的功能,可以连接到一台正在运行的无服务器平台,查询每个功能的执行情况。这需要工具和平台开发商之间的协作,如果想要让无服务器被广泛采用,这些措施都是必要的。这些想法对于云计算来说有一定开发工作量,也有大量的测试工作量。
2、测试
我到目前为止所讨论的所有关于无服务器工具的话题,我认为落后的是测试工具。值得关注的是,无服务器方案较传统解决方案来说有着相当大的测试优势,主要是两点,(a).无服务器计算的各个功能的单元测试很成熟,(b).无服务器服务写的代码更少,并且至少在单元测试层面,只需要做简单的测试。
但是这并没有解决跨组件功能/集成/验收/业务流程等测试问题。无服务器计算时我们的逻辑是分散在几个函数和服务内的,因此,更高级别的测试甚至比使用接近单一方法的组件更重要。当我们如此依赖于在云端基础设施上运行时,我们应该怎么做呢?
对于我们来说,测试可能是没有看清楚的。我猜测未来基于云端的测试会变得很普遍。这一部分会变得更加容易部署、监控,以及调试我们的无服务器apps,甚至于比我现在描述的这些原因更加丰富。
换句话说,为了运行更高级别的测试,我们将会部署整个生态系统的一部分到云端,并且对部署在那里的组件执行测试用例,而不是针对部署在我们自己开发机器上的系统运行测试用例。这种做法有一定的优势:
执行部署在云端的组件的真实度较本地模拟来说更高。
我们较过去,更有可能可以运行高负载/高丰富度数据测试。
生产环境数据源的测试组件(例如,一个发布订阅模式的消息总线,或者一个数据库)会更加容易,虽然显而易见我们需要关注能力/安全问题。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!请读者仅作参考。更多内容请加抖音太原达内IT培训学习了解。