我們正在部署的Matangle客戶關系數據庫,嚴格來說并不需要一個單獨的數據庫和網絡服務器。在這個軟件的Clojure層已經包含了一個稱為HTTP Kit的網絡服務器。
通常,在Java、Python還有其他服務器之前會用一個專門的網絡服務器,最主要的原因是關注點分離。這一次,并不是因為業務隔離,而是非功能性需求,比如性能、負載均衡和安全上的考慮。目前,基于Java的網絡服務器可能可以完美地提供靜態內容,但是一個基于純C語言的網絡服務器,例如Apache httpd或者NGINX的性能更出眾,內存更節省。使用一個前端網絡服務器也很常見,例如SSL加速和負載均衡。
現在我們有一個數據庫和一個網絡服務器了。接下來需要構建和部署企業的應用程序。
在你的開發機上,在本書解壓后的源代碼文件夾里運行以下命令:
cd ch3/crml
lein build
我們現在創建了一個Java程序,可以部署和運行了。
嘗試啟動應用程序:
ein run
在一個瀏覽器里訪問終端輸出的URL就可以看到web界面。
怎樣才能正確地把應用程序部署到服務器上呢?如果我們可以使用與剛才安裝數據庫
和網絡服務器相同的命令和結構,那當然是最好了。我們將在第7章部署代碼里介紹方法。
現在的話,在shell里運行這個應用已經足矣。