2009-10-15 38 views
2

在DB服務器想知道什麼是對這個這是錯誤的安裝了CI服務器

我們有運行數據庫服務器上的一些集成測試,嗯...它只是似乎是錯誤的CI服務器意見在CI服務器上安裝數據庫服務器以適應該問題

更多信息回答評論: 爲什麼需要這樣做? 測試的這個特定部分檢查數據庫模式的生成和遷移,並在其上運行一些方法。

您使用的是什麼CI系統? 團隊城市,但我不認爲這是一個相關的問題TBH

如果您從數據庫服務器中分離配置項,您是否關心性能? 不是真的,你我意識到分離會使測試運行變慢,這是一個壞主意。

我很想聽聽你對這個問題的其他開發人員的意見

+0

爲什麼你真的需要這樣做?您使用的是什麼CI產品?如果將CI與數據庫服務器分開,您是否擔心性能? – 2009-10-15 16:44:16

回答

3

如果該數據庫僅存在以便從CI構建中運行集成測試,那麼它對我來說似乎並不那麼糟糕。但是,如果數月後它開始被其他方式重新利用,並被其他客戶使用,那麼也許值得重新思考。

說實話,它似乎並不像客觀上可以回答的東西。許多其他因素起着一個部分 - 許可證,機器的規格,其他服務器的可用性,虛擬化的使用水平,工作地點的支持政策等等。

如果工作沒有問題,那麼是不是有什麼好擔心的?

1

理想情況下,你有你的所有的「系統」(數據庫,CI,數據倉庫,Web服務器,試生產等),在不同的服務器,因爲您具有隔離,性能和關注點分離的好處。

但是,如果您僅限於物理機器,將這兩個項目放在同一臺服務器上沒有任何內在的錯誤。你只需要確保你知道他們是如何相互作用的,並且確保這兩者都不會佔用過多的資源。

0

我不確定我是否正在遵循您正在測試的內容。

我肯定沒有我的只有在CI服務器上開發數據庫服務器,因爲那樣你就不能在不影響服務器的情況下進行壓力測試。那麼,如果您正在討論在CI流程期間爲了運行此測試而添加另一個開發DB服務器(以及爲什麼它甚至需要在CI服務器上),那麼您將添加更多的管理,管理和備份。

1

我不一定認爲它有兩個共享相同的服務器是一個壞主意,儘管它非常依賴於您的情況。

如前所述,將它安裝在不同的服務器上是理想的解決方案,並且可以更輕鬆地解決問題。

爲什麼您需要將CI服務器放在數據庫服務器上? 您是否以某種方式與此測試緊密耦合?

您是否考慮過虛擬化兩者? 我使用http://www.virtualbox.org/它的免費,做得很好。 您可以獲得上述好處,而且不需要額外的硬件成本。

這也將讓你有一個簡單的備份/恢復過程中,如果硬件出現故障,你要釋放HTH

拉爾夫之前:-)

做一個測試之前,將最有可能發生

0

您可以在每個構建的本地構建數據庫。對於我們的其中一個版本,我們實際上擁有將從頭開始創建數據庫,表格和數據(導入CSV文件)的SQL腳本。我們對本地數據庫運行我們的集成測試。

我認爲持續集成的原理之一就是您可以帶任何處女機器並通過單擊即可運行構建。

+0

這實際上正是我在做什麼,我問的是如果在同一臺機器上安裝了數據庫服務器有任何問題。 – roundcrisis 2009-10-19 10:05:06