国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種WebApp開發(fā)部署方法及系統(tǒng)的制作方法

      文檔序號:9727121閱讀:10527來源:國知局
      一種WebApp開發(fā)部署方法及系統(tǒng)的制作方法
      【技術領域】
      [0001]本發(fā)明涉及互聯(lián)網(wǎng)技術領域,特別涉及一種WebApp開發(fā)部署方法及系統(tǒng)。
      【背景技術】
      [0002]隨著互聯(lián)網(wǎng)技術的發(fā)展,WebApp得到了越來越重要的應用。WebApp是指基于Web的系統(tǒng)和應用,其作用是向廣大的最終用戶發(fā)布一組復雜的內容和功能。webApp框架是一種簡單的與WSGI兼容的網(wǎng)絡應用程序框架,可以與App Engine配合使用。不必為了使用App Engine而使用webApp網(wǎng)絡服務器支持任何使用CGI的Python應用程序。webApp提供一種簡單的方式來開始為App Engine開發(fā)應用程序。
      [0003]WebApp說白了就是一個針對Iphone、Android優(yōu)化后的web站點,它使用的技術無非就是HTML或HTML5、CSS3、JavaScript,服務端技術JAVA、PHP、ASP。需要注意的是webApp開發(fā)還是比較有限的。因為WebApp開發(fā)不能整合設備的核心功能,比如發(fā)文本信息,也不能充分使用APP Store進行銷售和更新。但是WebApp開發(fā)也有其優(yōu)勢所在。首先它解決了 iphone APP的可擴展性問題,因為它是可以跨平臺使用的。比如你開發(fā)了一款WebApp,那么它既可以在手機iphone上使用,也可以再平板ipad上使用,而不像iphone APP那樣只針對某個平臺。其次WebAPP也繞開了 APP store嚴格的提交和更新審查規(guī)則。眾所周知,隨著APP store中的APP逐漸增多,APP store也推出了一系列的提交和審查規(guī)則,可謂相當之嚴格。而WebApp則繞開了這些提交和更新審查規(guī)則,從而使得WebApp的升級和維護變得更容易。因為它是一個獨立的站點,而不是依附于app store上的,不管是升級還是維護在客戶端進行即可,無需提交審核。最后則是開發(fā)語言了。相比較Objective-C而言,HTML、CSS以及JavaScript學起來要容易多了。且對于傳統(tǒng)開發(fā)者來說,HTML、CSS以及JavaScript基本都是可以直接上手的,省去了前期的培訓工作。
      [0004]對于WebApp來說,現(xiàn)有的開發(fā)部署都是基于本地開發(fā),通過FTP或SFTP部署。開發(fā)調試及部署分離,開發(fā)效率較低,缺少流程化,自動化部署人工出錯較大。亟需要一種開發(fā)調試部署一體化的整體解決方案,以提高整體WebApp的開發(fā)效率。

      【發(fā)明內容】

      [0005]本發(fā)明提供一種WebApp開發(fā)部署方法及系統(tǒng),用以解決現(xiàn)有技術中WebApp開發(fā)調試及部署分離,開發(fā)效率較低,缺少流程化的問題。
      [0006]本發(fā)明提供一種WebApp開發(fā)部署方法,包括:
      [0007]監(jiān)聽fileSystem pro ject工程列表文件目錄,當所述工程列表文件目錄中文件發(fā)生改變時,上傳所述文件到服務器;
      [0008]服務器啟動監(jiān)控Demon,刷新Live服務,同時監(jiān)聽部署目錄;當所述部署目錄發(fā)生改變時,所述監(jiān)控Demon殺掉進程,重啟主程序;
      [0009]前端WebApp映入Live刷新服務,重新加載刷新。
      [0010]所述fileSystem pro ject工程列表文件目錄通過遞歸方式監(jiān)聽。
      [0011]所述fileSystem project工程列表文件目錄中記錄工程列表文件信息,當所述工程列表文件信息發(fā)生改變時,同步更新所述工程列表文件目錄。
      [0012]所述部署目錄根據(jù)工程列表文件的部署情況進行改變。
      [0013]所述方法還包括:
      [0014]所述主程序重啟時,通知所述前端WebApp映入Live刷新服務。
      [0015]所述WebApp為本地開發(fā)。
      [0016]一種WebApp開發(fā)部署系統(tǒng),包括:
      [0017]開發(fā)裝置,用于監(jiān)聽fileSystem pro ject工程列表文件目錄,當所述工程列表文件目錄中文件發(fā)生改變時,上傳所述文件到服務器;
      [0018]服務器,用于啟動監(jiān)控Demon,刷新Live服務,同時監(jiān)聽部署目錄;當所述部署目錄發(fā)生改變時,所述監(jiān)控Demon殺掉進程,重啟主程序;
      [0019]前端WebApp,用于映入Live刷新服務,重新加載刷新。
      [0020]所述開發(fā)裝置還用于本地開發(fā)所述WebApp。
      [0021]所述服務器在重啟主程序后,通知所述前端WebApp映入Live刷新服務。
      [0022]所述服務器還用于維護所述部署目錄,所述部署目錄根據(jù)工程列表文件的部署情況進行改變。
      [0023]本發(fā)明實施例中,通過監(jiān)聽fileSystem pro ject工程列表文件目錄,當工程列表文件目錄中文件發(fā)生改變時,上傳文件到服務器;服務器啟動監(jiān)控Demon,刷新Live服務,同時監(jiān)聽部署目錄;當部署目錄發(fā)生改變時,監(jiān)控Demon殺掉進程,重啟主程序;前端WebApp映入Live刷新服務,重新加載刷新。本發(fā)明實施例能夠使WebApp達到本地開發(fā),自動上傳,服務自動部署啟動,通知前端refrsh,前端自動重載,全部自動化。減少人工干預,提高整體開發(fā)及部署能力流程化。
      [0024]本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現(xiàn)和獲得。
      [0025]下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。
      【附圖說明】
      [0026]附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與本發(fā)明的實施例一起用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:
      [0027]圖1為本發(fā)明實施例1提供的一種WebApp開發(fā)部署方法原理流程圖;
      [0028]圖2為本發(fā)明實施例2提供的一種WebApp開發(fā)部署系統(tǒng)結構示意圖。
      【具體實施方式】
      [0029]以下結合附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
      [0030]如圖1所示,為本發(fā)明實施例1提供的一種WebApp開發(fā)部署方法原理流程圖,其中,
      [0031]步驟11,監(jiān)聽fileSystem project工程列表文件目錄,當工程列表文件目錄中文件發(fā)生改變時,上傳文件到服務器。
      [0032]一般來說,WebApp需要本地開發(fā)。本地開發(fā)的WebApp程序文件需要通過開發(fā)調試及部署分離,其中需要大量的人工操作。這個過程中,有許多個環(huán)節(jié)可能出現(xiàn)錯誤。一旦出現(xiàn)錯誤,就會影響整理軟件開發(fā)部署進程,從而影響最終的用戶體驗。
      [0033]本實施例中,通過監(jiān)聽fileSystem pro ject工程列表文件目錄D (遞歸)來監(jiān)控開發(fā)工程列表文件的改變。通常的,工程列表文件目錄D中維護著工程列表文件,其中,所有開發(fā)部署的工程文件都在此保存具體的文件信息。這些文件信息實時的保存,并在文件改變后及時進行目錄D中文件信息的變更。因而,工程列表文件目錄D中,實際上保存這所有需要部署的文件信息,因而,通過監(jiān)控該目錄D,可以及時發(fā)現(xiàn)所有工程列表文件的變化,并及時作出調整。
      [0034]一般來說,工程列表文件目錄D (遞歸)中通過遞歸方式監(jiān)聽。
      [0035]本實施例中,通過watchfile來監(jiān)控工程列表文件目錄D, —旦發(fā)現(xiàn)文件發(fā)生改變modified,立即將該文件以及文件信息上傳S服務器。本步驟的目的在于將監(jiān)控到發(fā)生改變的工程列表文件及時上傳到S服務器,由S服務器繼續(xù)后續(xù)的操作。
      [0036]步驟12,服務器啟動監(jiān)控Demon,刷新Live服務,同時監(jiān)聽部署目錄;當所部署目錄發(fā)生改變時,監(jiān)控Demon殺掉進程,重啟主程序。
      [0037]通常的S服務器中維護著所有在線進程的Live服務。在收到上傳的工程文件后,S服務器需要啟動監(jiān)控程序Demon。這個Demon監(jiān)控程序首先刷新相應的Live服務,監(jiān)控相應的改變,并監(jiān)聽部署目錄。這里的部署目錄中維護著需要部署的文件列表。當有文件需要部署時,更新該部署目錄。從而,通過監(jiān)控部署目錄就可以獲知需要部署的文件列表,從而進行相應的部署。
      [0038]當部署目錄發(fā)生改變的時候,也就是有文件需要部署。此時,監(jiān)控程序Demon殺掉與該文件部署相關的進程,并重新啟動主程序。
      [0039]通常,在linux下,用ps查看進程。-e顯不所有進程。-f全格式。-h不顯不標題。-1長格式。-w寬輸出。_a顯示終端上的所有進程,包括其他用戶的進程。-r只顯示正在運行的進程。-X顯示沒有控制終端的進程。一般用ps auxlgr印進程名搜索某個進程。殺死進程一般用kill進程號。比如,ps出來的某個進程如下所示:
      [0040]4948 ? Ss 0: OOxinetd-stayalive-pidfile/var/run/xinetd.pid
      [0041]殺死該進程命令為ki 114948。
      [0042]如果要殺死一組進程用killall進程組名。
      [0043]而在Windows環(huán)境下殺死進程的過程則分為以下幾種方式:
      [0044]普通殺死:
      [0045]Tasklist:列出所有的計算機正在運行的進程cmd-)) tasklist ;
      [0046]Tskill:殺死進程tskill+進程名;
      [0047]強殺:
      [0048]用Windows自帶的工具就能殺大部分進程:
      [0049]c:>ntsd_c q-p PID
      [0050]只有System、SMSS.EXE和CSRSS.EXE不能殺。前兩個是純內核態(tài)的,最后那個是Win32子系統(tǒng),運行ntsd本身需要它。
      [0051]ntsd命令是從2000開始的系統(tǒng)自帶的調試工具。被調試器附著(attach)的進程會隨調試器一起退出,所以可以用來在命令行下終止進程。
      [0052]使用ntsd自動就獲得了 debug權限,從而能殺掉大部分的進程。用法:開個cmd.exe窗口,輸入:
      [0053]ntsd-c q-p PID
      [0054]把最后那個PID,改成你要終止的進程的ID。如果你不知道進程的ID,任務管理器一〉進程選項卡一〉查看一〉選擇列一〉勾上〃PI
      當前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1