热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

技术人观点:开发人员在处理云应用时该注意什么?

我们与28位分别来自23家企业的高管人员进行了交流,希望了解这些负责立足于云环境进行应用程序开发与部署的技术领导者如何看待相关议题。当被问及“开发人员需要在处理云应用

我们与28位分别来自23家企业的高管人员进行了交流,希望了解这些负责立足于云环境进行应用程序开发与部署的技术领导者如何看待相关议题。

当被问及“开发人员需要在处理云应用时注意什么?”时,各位企业高管人员给出了以下意见与建议:

应用程序性能管理应该分为主动与被动两类,特别是在面对开发与生产等不同场景的情况下。我们需要在开发阶段获取更多测试信息。APM工具将帮助我们在应用直接触及生产环境前对其加以测试,并有效缩短产品进入生产环境并被交付至用户手中的周期。

了解应用程序的十二因素。如何对应用程序中的服务进行远程消费?了解其中的关联性是解决问题的关键所在。

开发人员应当保持云中立性。所有应用程序都需要具备可移植能力。对于高级应用程序,我们需要将云因素排除在设计蓝图之外。在编写应用时,保持其云中立特性、构建通用API并封装特定的云依赖关系。大家不要假定使用某种特定虚拟机。为应用选定运行区域,这对安全性非常重要要。不过VCenter不具备分区特性,因为其主要面向私有云所构建。我们需要在设计之初考虑到这些前提。如果大家打算面向公有云进行应用开发,则需要利用微服务实现规模扩展——即考虑单一服务规模所带来的多重影响。沙箱属于Amazon以及V Container接口的缩影,大家可以借此了解二者之间的冲突点所在。

跳出固有思维,因为老派开发人员采用的方法往往无法适应当前需求。了解业务需求与客户需求,并为问题提供最为简单的解决方案。针对需求进行实现方法定制。保持统一的发展愿景,同时着眼于目标及需要解决的问题进行知识共享(使用JetBrains中的UTrack以及JIRA实现协作,尽可能提高社交水平)。大家需要通过添加简化要素尽可能降低应用复杂度。

积极动手。选定一款简单应用,然后立足于AWS进行构建——这也正是AWS的最大价值所在。API与使用指南都是学习云服务相关知识的绝佳途径。

考虑应用何时需要进行规模扩展,应用中的哪些组件需要进行规模扩展。立足于容器架构实现诸如登录等功能,从而建立共享式应用。必须保证自己具备按需扩展的能力。审视使用模式并考虑不同类型的用户是否应当采用同样的使用模式。了解我们不希望亲手构建的部分——换言之,了解我们可以直接使用哪些后端即服务选项(例如API网关以及数据管理服务)。了解哪些元素可以具备云服务供应商锁定特性在,则哪些能够帮助我们在市场上获取差异性优势。

利用逻辑、数学与艺术手段构建用户界面——同时使用各类更为先进的编程语言。利用自己的技能对应用做出转型。寻找一位导师,在其帮助下打下坚实的专业知识基础,这些都将在未来起到重要作用。另外,在工作中保持激情。

利用黑客马拉松活动实现快速高效的应用开发。认真审视安全性。鼓励开发人员与软件团队参与黑客马拉松,从而快速构建应用程序并提供更出色的用户体验。部署前快速发现问题,而非完全依赖于测试部门。

考虑哪些组件可以发生故障,利用AWS与GCQ启动对应实例,直接查看哪些组件正常起效而哪些遇到了问题。持续测试并了解开发成果的实际执行效果。

不要对应用程序的运行位置进行假设。保证所构建的应用能够运行在任意环境当中。从起步阶段将安全考量纳入开发流程。构建抽象机制,从而保证应用可由一种云环境迁移至另一种当中。不要过度依赖于单一云环境或者技术方案。

安全性——关注最为重要的方面,特别是隔离各租户的数据并保护敏感数据。

可扩展性——必须有能力在特定时间段内处理峰值资源需求。

成本控制——优化应用程序以实现成本效益,由于公有云资源在进行性能与扩展性优化时成本较高,这一点也变得愈发重要。基础设施成本如今主要由软件厂商而非客户承担。

日志记录——最重要的是能够调试问题并捕捉一切与故障相关的信息,从而在尽可能无需客户协助的前提下实现问题修复。

可部署性——SaaS的一大重要优势在于能够随时实现快速部署。我们的架构必须能够处理实时部署,从而轻松应对客户直接可见的零宕机时间效应。

多租户——这一点对于内部环境开发人员而言最难解决,因为此类应用并非面向防火墙后的单一客户所构建。

自动化——底层基础设施必须以自动化方式实现设施部署与扩展性调整,且无需大量人为介入。

了解如何利用特定指南资料实现模式设计。云环境下的设计模式往往缺乏充足的说明素材,从业者对其亦理解不深。我们需要率先考量模式相关问题。对设计模式进行抽象化处理,从而确保我们始终参与其中并由此实现职业生涯积累。在了解到基础模式之后,大家可以逐步体会更为复杂的执行模式。不要重复过去犯过的错误。很多人都从阅读说明文档开始学习。事实上,观察他人的工作成果,掌握他人的工作经验并阅读博文以及在线资源等都是很好的学习方式。很多企业已经开始公开讨论其云架构。大家不妨观察十家不同企业所使用的架构与实现模式。这将帮助大家在构建自己的解决方案时拥有更为开阔的思路。

不要忘记,云环境是一套非常强大的开发平台。充分利用云与其它各类资源。利用云服务实现快速迭代、频繁部署并最终打造出高质量应用。

可扩展性与安全性。开发人员需要从起步阶段认真思考安全性需求。将零宕机时间作为前提性目标。

性能与指令。尽可能在代码中添加指令,从而简化未来的故障排查工作。数小时的服务宕机有可能带来数百万美元损失。了解APM配置并构建修复指令。另外,在性能层面确定哪些状况可以接受,而哪些绝对不能接受。

脱离应用本身从技术层面审视V5原则。服务器架构正是我们的指向目标(例如Amazon Lambda——其中包含一段代码,在被调用时会运行Nano服务)。

目前已经有大量平台开始引入众多业务功能,这意味着我们可以借此创建预测模型,同时定义业务算法并为预测模型提供分析素材。立足于开发领域的知识,并将其与抽象思维结合起来。Google Tensor Flow、Google Now以及微软目前都开始提供开源机器学习服务。大家可以考虑如何利用这些新成果解决问题。

考虑到越来越多的应用遭受黑客攻击,我们需要始终将安全性作为关注重点。安全性与可靠性可谓相互依存。确保应用具备应对流量峰值以及长期发展所需要的扩展能力。尽快帮助客户从应用中获取价值。

了解当前可供使用的各类工具。着眼于规模化及性能水平进行应用设计。预测可能发生的变化。着眼于产品的当前作用,并预测其如何与企业环境下的其它产品进行集成。保证应用具备可扩展能力。将安全性引入其中,否则我们的应用将无法通过合规审查。将用户体验视为设计工作的核心。

自动化与验证机制。如果大家在云应用中使用现代工具方案,但却发现其并不适应当前实际需求,那么请果断将目光转回较为陈旧的实现模式。通过互联网了解其它厂商的实际作法。尽可能利用开源工具实现大规模迁移(例如Netflix)。通过这种方式,大家将获得出色的思维方式与解决方案。

安全性为先,保证应用中不存在可被利用的漏洞。坚持使用多租户环境以实现规模化成本效益。

开发者与DevOps团队需要以云原生角度理解应用程序,而非服务交付方式。很多工具内置有大量功能,但往往并不切合我们的实际需求。因此大家应当进一步学习与性能表现、用户体验以及面向最终用户的应用服务效果相关的知识。了解应用是否可用且是否具备用户友好特性。掌握应用依赖性与可扩展性。与DevOps及运维团队交流,从而了解代码成果的实际运行情况。

大家对于开发人员处理云应用的方式这一议题又有哪些观点?请在评论中与我们分享。


本文转自d1net(转载)



推荐阅读
  • 博客_2018年博客总结
    本文由编程笔记#小编为大家整理,主要介绍了2018年博客总结相关的知识,希望对你有一定的参考价值。前言     ... [详细]
  • DockerDataCenter系列(四)-离线安装UCP和DTR,Go语言社区,Golang程序员人脉社 ... [详细]
  • 服务网关与流量网关
    一、为什么需要服务网关1、什么是服务网关传统的单体架构中只需要开放一个服务给客户端调用,但是微服务架构中是将一个系统拆分成多个微服务,如果没有网关& ... [详细]
  • 有意向可以发简历到邮箱内推.简历直达组内Leader.能做同事的话,内推奖励全给你. ... [详细]
  • 提供:ZStack云计算原创2016-12-26张鑫讲师介绍张鑫ZStack总架构师、联合创始人《系统虚拟化》主要作者,曾任职Intel开源软件技术中心 ... [详细]
  • 说出来你可能不信,我用三天做了一个完整的项目
    Java在人工智能中能起到什么作用?作为编程语言中的扛把子,Java20多年稳定不倒,就在于它的稳定性,维护成本极低。这使得 ... [详细]
  • 虚拟化_深度:资源虚拟化
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了深度:资源虚拟化相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 来源:将门创投本文共约7000字,建议阅读9分钟。本文从多个角度畅想无人驾驶走入人们生活之后未来会变成什么样。无人驾驶的到来将会影响和改变我们生活的方方面面,未来 ... [详细]
  • 开发笔记:DevOps Gitlab环境部署
    本文由编程笔记#小编为大家整理,主要介绍了DevOpsGitlab环境部署相关的知识,希望对你有一定的参考价值。DevOps介绍 ... [详细]
  • 【限时免费】       架构和运维技术高峰论坛·成都站来啦~~     报名请点击左下角 阅读原文运维和架构系列论坛,由IT趣学社主办,以目前最火热的运维技术体系为核心,邀请业界 ... [详细]
  • Cisco vs. Arista:守擂者与挑战者的血战
    编者按:思科前CEO约翰·钱伯斯曾这样评价思科:“我们之于网络革命,正如机械技术之于工业革命思科交换机模拟器。我们在适当的时机从事着适当的行业。”找准方向,抓准 ... [详细]
  • 智慧城市背景下Python机器学习项目实战案例分享
    首先,何为智慧城市?智慧城市的“智慧”源自何处?智慧城市的特征在于运用大数据和数字技术提高居民生活质量。机构获得的数据越全面、越实时,它们就越有能力观测事件发生的详情、分析需求模 ... [详细]
  • 杂谈,微服务API Gateway
    让我们想象一下你正在建立一个使用微服务模式的网上商店,你所用的产品详细信息页面。你需要开发多个版本的产品详情界面:l由服务器端Web应用程序生成的HTM ... [详细]
  • 后台自动化测试与持续部署实践
    后台自动化测试与持续部署实践https:mp.weixin.qq.comslqwGUCKZM0AvEw_xh-7BDA后台自动化测试与持续部署实践原创 腾讯程序员 腾讯技术工程 2 ... [详细]
  • 云原生SRE
    序言年底了,没有分手的朋友的赶紧分了,所谓新年新气象,年年不重样。去留无意,望看风卷残云。。。运维不会消失,但 ... [详细]
author-avatar
菜蕻的薇笑2602929033
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有