web - 开发人员如何在运行中的大型在线Saas应用程序上添加新功能?

标签 web docker cloud saas

我想知道开发人员如何在云上持续开发Web应用程序。
他们使用哪种软件或哪种开发环境?
Docker是正确答案吗?
谢谢

最佳答案

这是一个极端开放式的问题,所以我给您一个相对开放的答案。 CI / CD并不是真正定义好的过程,但是通常人们遵循相同的策略。

CI:

  • 在Git或某些存储库
  • 中开发和存储代码
  • 执行单元测试用例
  • 生成源代码

  • 此时,您的代码正在不断测试和构建。现在开始使用连续交付(CD)。这在公司之间有所不同,但是可能遵循以下条件

    CD:
  • 将源代码部署到开发集成测试服务器(DIT)
  • 执行自动化测试组合
  • 将源代码部署到舞台或预生产环境
  • 执行自动化测试组合

  • 现在,此时您已对代码进行了完整的测试,并将其部署到内部测试/阶段服务器。作为一家公司,您可以决定您的置信度是否足够高以实现连续部署或是否实现变更mgmt流程。连续部署与连续交付相似,不同之处在于您无需在没有任何准备的情况下将构建的应用程序/服务自动部署到生产中。然后,您将再次针对产品运行测试产品组合。不要在产品中进行性能测试(通常在阶段中进行此测试)

    通常用于CI = Jenkins的产品(开源,强大的社区支持)
    通常用于CD的产品=木偶,Chef,Ansible,uDeploy

    免责声明-请不要讨论哪种产品最适合在哪个阶段使用...我只知道我所知道的;我知道我还没有提到其他用于CI / CD的工具。

    关于web - 开发人员如何在运行中的大型在线Saas应用程序上添加新功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41508814/

    相关文章:

    git - 如何通过 Docker secret 共享 SSH key 以访问私有(private) Github 存储库?

    docker - 我如何连接到 mac 上的 docker 桌面虚拟机? (docker 桌面版本 2.4)

    cloud - Pivotal Cloud Foundry - 为什么在绑定(bind)服务后需要重新启动

    azure - 如何在我的应用程序中实现Windows Azure或其他云平台?

    php - 我应该将标签存储在文本字段中还是单独的表格中?

    apache - 如何在 apache(xampp) 服务器中创建子域?

    html - 我可以使用什么 css 代码,以便我的网页上的内容不会改变浏览器窗口调整大小的位置?

    java - Docker - Java 容器不遵守内存限制

    python - NDB 在 python 数据存储中代表什么?

    mysql - Hibernate数据库连接错误