做这个开源项目的意义是什么?(口水自问自答,不喜可略过) |
从功能上来说,请参考 预告篇,因自知当时预告篇没有任何含金量,所以并没有主动推送到首页,而是私下的给一些人发的。
从个人角度上来说,我希望.net的环境会越来越好,就我自己的成长曲线是从mxdn开始自学、cxdn尝试解答问题、博客园读别人博客再到自己写博客、最后到工作中经常使用到的stackxxxxflow、gxxgle。这其中我当然是走了很多弯路,踩过无数的坑,也埋了无数的坑。现在自己有了一点小小的能力,想尽自己所能,通过一个项目整理出来给大家参考、学习的同时也能给自己一些意见。对新人来说也算是一种回馈,对老人来说也算是互相切磋互相提升。
什么是分布式部署解决方案? |
部署也有很多人叫发布。那正常的流程是什么样的呢?
相信这张图大家都不会太陌生。一般少数几台服务器的时候直接这样发布是最省时省力的。
但是,如果有一天,你的服务器变成几十台,然后又面临着经常发布的情况该怎么办呢?
@echo off echo Start to Publish ApplicationName All Site set local="C:\inetpub\ApplicationName" Set RemotePath=C$\inetpub\ApplicationName For %%I in (192.168.0.2 192.168.0.3 ... 192.168.0.n) do ( echo "Publish ApplicationName %%I" net use \\%%I\ipc$ Password /User:UserName For %%P in (default) do ( echo "Publish \\%%I\%RemotePath%\"dd xcopy /e /y %local% "\\%%I\%RemotePath%\" ) net use \\%%I\ipc$ /del ) :End pause;
上面这段代码,相信也有一部分人用过吧。使用流程也比较简单,先用vs发布到本地,然后再使用批处理文件,通过发布命令来进行多台网站的部署。
突然有一天,你是上司跟你说,你的这段批处理有很多问题,比如不利于维护、没有部署记录、发布后首次访问很慢、没有版本管理、部署过程一旦发生异常也没有容错机制等等。
是的,这些问题都还是基础的。如果你的服务器数量达到一定级别以后,你的部署会变得异常艰难。某台服务器上部署了多少个服务、某几台服务器是一组,这些会让你抓狂,甚至想说脏话,就如同下图。
由于后面还会有一系列文章要出,此处就不再过多的解释,当你看到完整的项目之后,相信你会对它有一个新的认识。
第一个正式版包含哪些功能? |
请允许我偷个懒,从预告篇把尚不成熟的功能列表copy一份过来:
1 基础的权限控制(可能只支持一个角色,甚至是写死)
2 部署项目管理(以Jenkins为例,做自动化构建方案)
3 部署服务器管理(以Aliyun服务器为例)
4 部署组管理(包括部署组、部署组项)
5 创建部署任务(包括触发自动化构建、部署文件关联等)
6 部署服务器常驻服务(以Windows Service的形式驻留,主要完成中控的指令协助部署)
7 一键部署&#