本篇内容介绍了“2020年部署Web应用的方式有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
对于初学者来说,让我们看看你有哪些选择:
定期托管(Digital Ocean, AWS, GCP) + Jenkins
GitHub动作/Bitbucket管道+ Heroku
Travis-CI / Circle-CI
全自动云平台
1. 常规云托管+ Jenkins
Jenkins是CI/CD平台上最大的骑手之一。它是一个自动化的CI/CD软件,在主代理体系结构上工作。那么什么是主/代理呢?嗯,代理只是软件的一种花哨说法,它安装在一台机器上,用于协调[和绑定]不同的构建。詹金斯使用一个主机连接和协调所有可用的代理。那么,你可以用什么机器来完成这些任务呢?大多数情况下,包含docker的虚拟机(vm)是首选,因为这样做更容易,然而,docker不是强制性的。可以使用的其他一些工具是物理服务器,甚至是运行在Kubernetes上的临时容器。
优点:
它是高度可定制的。
它非常灵活,因为它有超过1.5K的插件。所以对于任何你想尝试的测试用例,可能有人已经为你做过了:D。
即使您是第一个运行特定测试用例的人,您也可以构建自己的插件和/或共享库=>一个友好的社区。
它支持更快的构建和缓存模块。因为它不强迫我们使用docker镜像,不像它的竞争对手,服务中的任何内容都可以缓存以备后用,因此它比许多竞争对手更快。
它并不局限于基于Linux的系统。我们也可以使用Windows系统。
缺点:
2. Bitbucket管道/ Github操作Heroku
Bitbucket的管道是另一个类似于Jenkins的平台,但更容易使用。Bitbucket管道的工作方式类似于Github的动作;使用Git版本控制系统。您可以根据所使用的平台进行选择。
管道是您不希望错过的一个特性。有了管道,大部分SDLC(软件开发生命周期)可以完全自动化。因此,比Jenkins更容易的替代方案(尽管功能有限)是位桶管道。
Bitbucket使用Docker镜像来运行构建。图像也可以在每个步骤中变化,从而更容易地分离SDLC的每个步骤。
优点:
缺点:
3. Travis-CI/ Circle-CI
Travis-CI是社区中著名的CI服务机构。嗯,很多原因。最主要的原因之一是它对开源项目是免费的,这意味着你只需要为私人项目付费。它的持续集成环境还提供了多个运行时,即节点。JS, PHP, Python版本,数据存储等等。因此,当托管在这个平台上时,可以轻松地完成针对多个运行时/数据存储的库测试,而无需承担本地安装它们的负担。
优点:
Travis是一个易于设置的平台。向项目中添加一些基本的构建指令,提交代码……瞧!你的网站是实时的。
大量的服务和数据库,如MySQL, PostgreSQL, Elasticsearch, Redis, Riak, RabbitMQ, Memcached已经安装,并等待启用配置。
Travis支持很多部署平台,如Heroku, Cloud Foundry, OpenShift, Cloud Control, Nedejitsu等。
Travis CI目前是一个成熟的平台,大部分(如果不是全部的话)常见的抱怨都得到了改进。这包括支持颜色的文档和日志…
缺点:
尽管它对开源项目是免费的,但付费计划要付出沉重的代价——69美元/月是垫脚石。
repos不能在Travis上直接修改[你可以,如果你付钱的话…,所以每次[甚至]需要做一个小的调整时都去到存储库中的文件是相当麻烦的。
建立建立矩阵的travis.yml文件相当困难。
对于免费计划,由于基础设施有限,构建队列有时会非常长。
4. 自动化的云平台
最后,对于一个完整而简单的自动化解决方案,我们可以选择许多自动化云平台中的一个。[其中,我个人更喜欢男招待,但这完全是主观的。基本上,大多数幕后的编码工作已经为您完成了,因此您可以直接从git存储库部署代码。
所有关于设置云服务器、web服务器和类似繁琐任务的担忧都不需要您操心。
在大多数情况下,你会得到免费的SSL和CDN的最新安全和许多其他津贴。由于比其他服务更便宜,也更容易使用,这些平台涵盖了大部分的使用。所以,除非你有一个专门的团队准备全力进行手工测试,或者想花钱购买其他自动化系统,比如Jenkins(它仍然有很多手工工作要做),否则最明智的选择是使用像Hostman这样的自动化云平台。
优点:
缺点:
“2020年部署Web应用的方式有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注天达云网站,小编将为大家输出更多高质量的实用文章!