• 【G】开源的分布式部署解决方案


    G.系列导航

    【G】开源的分布式部署解决方案 - 导航

    为什么想到要做分布式部署解决方案?

    当项目越做越大以后,你会发现部署变成一件极其头疼的事情。当然头疼的绝不仅仅在部署一个环节,比如新服务器环境搭建当中就许多坑要踩、各种重复性的工作,包括但不仅限于增加IIS Application、修改防火墙、加入到域等。

    不要慌,我不会做一个大而全的解决方案,一方面本人实在没那么多精力满足所有人的需求,另一方面很多定制化的功能我也不可能加入进来。

    所以本开源项目的第一个版本的目的就相对简单而明确。

    PS:将来会在此基础上扩展更多实用的功能,先卖个关子,都是跟分布式架构相关的。

    第一个版本有哪些功能?

    1 基础的权限控制(可能只支持一个角色,甚至是写死)

    2 部署项目管理(以Jenkins为例,做自动化构建方案)

    3 部署服务器管理(以Aliyun服务器为例)

    4 部署组管理(包括部署组、部署组项)

    5 创建部署任务(包括触发自动化构建、部署文件关联等)

    6 部署服务器常驻服务(以Windows Service的形式驻留,主要完成中控的指令协助部署)

    7 一键部署(支持单台或部署组)

      7.1 支持手动绑定历史部署文件版本(理论上支持所有的,如Jenkins这种构建方案还会涉及到保存构建副本数量和天数等,另本功能只支持单台部署,部署组的修改版本通过创建部署任务时统一指定)

      7.2 自动检测部署文件包状态(以Jenkins为例,会自动等待构建完毕,并会自行检测构建状态判断是否继续向下执行)

      7.3 下载部署文件包并解压

      7.4 控制负载均衡降权

      7.5 部署(包括等待服务器正在执行的请求完成的检测)

      7.6 触发缓存(也可以理解为触发首次访问,提升用户体验)

      7.7 控制负载均衡升权

    PS:这里先列出一些核心功能。另外部署过程是属于冷部署,原因是加入了负载均衡控制和触发缓存,可以更好的解决部署导致的服务预热问题。

    开源计划?

    首先澄清一下,本项目目前还没有任何代码,整个编写过程都会一步步的写出来,不只是单纯的开源一个项目那么简单。里面还包含了设计思路、不断的优化过程、遇到的难点攻破等。但请各位放心,因为核心功能已经写了一版,目前正在本人供职的公司使用中。

    更新时间其实我并没有给自己定一个明确的目标,可能就是抽空了便写一些,直到项目完结吧。也欢迎有兴趣的人加入一起来做这件事。群号应该会找得到吧,哈哈。

    题外话说完入正题。

    1 项目会放在oschina的git上,原因很简单,不用翻墙啊。(不是不会,是懒得翻)

    2 项目会基于 .net core 来做,但可能很长一段时间只会在windows上测,保证windows上可以正常使用。

    3 使用开源的UI框架、相对流行的技术选型、相对主流的架构。

    4 整个编写过程中,欢迎大家提建议和意见,我会根据实际情况选择一些好的建议加入到第一个版本中。

     

    口说无凭?

    部署界面

    最初的流程图,当然新版肯定是功能更多更复杂

    最后最后,其实写这篇的原因是希望在我正式开始写源码之前,有一部分人可以关注到这个项目,从而给出一些建议那是最好了。

    本篇因太水,自知不敢上博客园首页,欢迎扩散,欢迎扩散,欢迎扩散!

  • 相关阅读:
    Github上优秀的.NET Core开源项目的集合
    阿里云服务器CentOS7.5 部署RabbitMQ
    Centos7开放及查看端口
    虚拟机CentOS7.0 部署Redis 5.0.8 集群
    CentOS7 服务检查命令
    CentOS7 常用命令集合
    pyflink小试牛刀
    python mysql pymysql where 当多条件查询,动态出现某些查询条件为空,就不作为条件查询的情况
    centOS6.2 最小安装下的无线网络配置
    Linux命令提示符的配置
  • 原文地址:https://www.cnblogs.com/doddgu/p/6306939.html
Copyright © 2020-2023  润新知