• 3

文中系統(MERP)移植紀錄

tony0318 wrote:
這應該比較偏向VM調...(恕刪)


我用的是PCI-E SSD(金士頓 HyperX Predator 240G),最大讀取效能1488 MB/s,VM DISK是設定成固定大小(64G)與直接寫入狀態。即使如此整個interbase綜合效能還比不上已經蹂躪使用七年的PCI SSD(容量只有50G,讀取效能剩下55MB),我當時甚至開了一個24G RAMDISK,將VM全部移植上去執行,結果也是一樣輸到脫褲子,所以證明與硬碟效能無關。

而且我不用VM,直接將整個文中系統安裝在2008 SERVER之下來跑也是一樣慘,所以證明與VM無關,與資料庫本身有關。

而且更有趣的是,後來我測試文中系統效能時,VM設定用四顆CPU跑起來綜合效能還輸給只設定二顆CPU的環境~~~這完全違反一般的認知吧!!


以下是我在VM環境內(WIN 2003 SERVER)進行磁碟效能測試的報告,因VM會使用主機記憶體當快取,所以跑出來的效能會比磁碟真實效能還要高。

-----------------------------------------------------------------------
CrystalDiskMark 5.1.0 (C) 2007-2015 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

Sequential Read (Q= 32,T= 1) : 1514.815 MB/s
Sequential Write (Q= 32,T= 1) : 1592.792 MB/s
Random Read 4KiB (Q= 32,T= 1) : 256.286 MB/s [ 62569.8 IOPS]
Random Write 4KiB (Q= 32,T= 1) : 284.847 MB/s [ 69542.7 IOPS]
Sequential Read (T= 1) : 0.000 MB/s
Sequential Write (T= 1) : 0.000 MB/s
Random Read 4KiB (Q= 1,T= 1) : 0.000 MB/s [ 0.0 IOPS]
Random Write 4KiB (Q= 1,T= 1) : 0.000 MB/s [ 0.0 IOPS]

Test : 50 MiB [C: 32.4% (20.7/64.0 GiB)] (x1) [Interval=5 sec]
Date : 2016/05/03 15:55:35
OS : Windows Server 2003 Enterprise Edition SP2 [5.2 Build 3790] (x86)
我是會偏向 interbase 重整處理
改善效能經由排除不完整的(eliminating incomplete)交易和過期的記錄
減少資料庫的大小-移除刪除的記錄
Index重建


https://dotblogs.com.tw/remhom/2009/09/09/10517
特別留意文章最後。

以上僅供參考。
tony0318 wrote:
我是會偏向 inte...(恕刪)


目前文中系統使用的是interbase 7.1 SP2,我在調教初期就已經有找到關於多核心設定更改部分的方法(ibconfig預設參數是沒有啟動),但是發現改了與沒改之間的效能差距沒有少幾秒鐘。但是與原本就是四核心的舊系統來比,差距卻不只一倍,而且舊系統同樣也沒改變多核心參數,我後來有改舊系統的參數,確實是跑得更快,但也只是少了幾秒鐘而已,所以這不應該是造成效能低落的關鍵!! 而且interbase多核心的設計並不好,即使參數開啟設定的情況下,用二核心來跑反而比四核心要高!!

最後真正能夠扳回局勢的設定都不在資料庫的設定上,而是系統電源設定。簡單來說就是interbase 7過時的設計,沒有讓新系統的CPU全力衝刺。好比一個駕駛人從四缸四段變速的轎車換成八缸八段變速的跑車,卻不懂得換檔加速只會一檔油門到底,跑輸舊車也是理所當然的。
vt_hunter wrote:
目前文中系統使用的...(恕刪)


謝謝大師指點,看完您的移植紀錄,我都忍不住想拜師學藝了
可惜小弟沒有這樣的功力與技術,只好認命讓ERP公司強迫升級新版

抱歉! 回錯地方
vt_hunter wrote:
本公司是一間小公司,...(恕刪)


您好!非常感謝您熱心且無私的分享移植經驗。
本公司使用文X產品已經八年,目前遇見一樣的問題,因伺服器時不時出現當機等問題考慮升級伺服器,打電話詢問客服後得知硬體設備如升級,軟體也需要一同升級。

目前伺服器是當初向文X購買的華碩ASUS套裝Xeon主機,作業系統為Windows Server 2003 R2,如購買新的伺服器後,舊版的server 2003作業系統無法成功安裝於新伺服器上,需要另外購買server 2008作業系統,另外資料庫也需要升級到FireBird,工作站也需要全部從IB7升級到FireBird,目前資料庫與板大相同是使用InterBase 7.1。因為線上同時有兩台主機同步,預防一部主機無法使用時另一台可持續工作,主機加上工作站有不少台的電腦需要升級,所以費用上加總起來就像您說的似乎也是不小數目!

這一年來一直有想要移植的念頭,礙於網路上相關文章不多,且成功分享的案例似乎沒有看過,因此非常有興趣和您討論!有幾個問題想提出來討論:

1.在伺服器上安裝虛擬模擬器模擬Windows Server 2003 R2環境,是否購買伺服器硬體就沒有太多限制,自行組裝能否建議購買什麼樣的伺服器使用?

2.虛擬模擬器安裝Oracle VirtualBox 5.0 或 VMware Workstation 12 Pro 速度上是否有明顯差別?

3.因為平時線上會兩伺服器會互相備份,本身主機也雙硬碟同步raid,在安裝虛擬作業系統後這些動作還能正常執行嗎?有哪些需要注意的嗎?

4.樓主升級公司內部網路速度到giga等級的環境,是否對連線文X有幫助?還是原來的10M/100M網路環境已經夠用?

不好意思一回文就提出這麼多問題,真的非常有興趣和您一同討論!
vincent0926 wrote:
1.在伺服器上安裝虛擬模擬器模擬Windows Server 2003 R2環境,是否購買伺服器硬體就沒有太多限制,自行組裝能否建議購買什麼樣的伺服器使用?


要能順利執行VM基本上就是二個條件,記憶體與硬碟。越大越快就越好!!

由於伺服器的實際服役年限都會比PC要長,所以我會傾向買新一代架構的伺服器來執行,這樣系統軟體支援的年限也可以拉久一點。現有的WIN2012上市已久,有問題也抓得差不多。搭配今年的新一代伺服器應該不是問題。VM軟體在上面執行也沒啥問題。現在VM已經發展成熟,到處都有大規模運用的案例。

不過真要自己組裝還是買現貨還是要看預算,你詢價時不要只問標準售價,而是要將硬體目標訂好一次到頂。例如很多低價入門伺服器只有4G記憶體,等到你購入之後想擴充時才發現是天價已經來不及,硬碟也是一樣。我現在已經放棄用RAID 5這種看似兼顧空間與安全的儲存架構,改用RAID 1反而比較容易維護(因為硬碟容量太大有便宜)。RAID 5遇到要重建時整個系統幾乎是卡住不能動,而且耗費時間非常久(將近一天)。這種況狀我遇到過二次,所以這次換新機一開始就放棄RAID 5。用RAID 1重建反而快很多。

而且我買的是二顆2.5吋NB用的1TB 7200 RPM硬碟,根本沒去考慮啥企業級硬碟。因為我根本不相信企業級會比較長壽!! 我要的是容易置換替代的便宜產品,就算三年換一顆都比較划算。而且2.5吋硬碟輕薄又耐震,放在機殼內容易散熱溫度不高。對我而言這二顆硬碟都是屬於第一層系統備份等級的,效能根本無所謂。真正重要的執行程式都是放在二顆SSD與RAMDISK上面。

這二顆SSD都是PCI-E規格的SSD,只是一張安裝在轉接卡上,另一張直接安裝在主機板插槽上(新架構的好處)。這二顆SSD並沒有做RAID,因為要擔負不同的任務不需要同步作業。其中一顆SSD安裝作業系統與VM程式,另一顆SSD安裝VM系統所需的磁碟機。這樣VM存取就可以分散而不會擠在同一顆SSD上。資料就備份到RAID 1磁碟上去。而RAMDISK被我用來放作業系統的LOG與系統程式快取之用。

如果你這台伺服器只是單跑一台VM版文中,最低建議規格是16G記憶體,SSD至少要256G。在VM環境設定4G RAM與2 CPU給2003 SERVER就很好(反正多了也用不到,或是跑更慢)。但如果你要兼任其他用途,那就要參考一下該項功能的系統資源需求來規劃。

基本上E3等級的CPU就夠VM文中系統使用了,E5完全沒必要。


2.虛擬模擬器安裝Oracle VirtualBox 5.0 或 VMware Workstation 12 Pro 速度上是否有明顯差別?


看任務特性吧!! 我測試文中系統時VirtualBox 5.0跑得比較快一點點,安裝設定也比較簡單。注意不要用預設值來安裝設定就好(預設值會將VM虛擬機器磁碟與作業系統都設定在同一顆硬碟上)。

3.因為平時線上會兩伺服器會互相備份,本身主機也雙硬碟同步raid,在安裝虛擬作業系統後這些動作還能正常執行嗎?有哪些需要注意的嗎?


完全正常執行,但是要注意主系統的軟體更新有時必須要關機重開,但是VM的自動關機可以連動執行,但主機重新開機之後VM並不會跟者自動開機。必須要特別設定或是人工手動執行啟動。這點是必須要注意的。尤其VM上安裝著公司的進銷存與會計系統的時候更要小心以免領不到薪水!! 通常我都會選擇發薪日之後再來做系統異動,以免萬一出問題時會被全公司公幹!!

另外一個重點是,真實主機最好具備二個或四個網卡,然後將其中的網卡直接對應給VM使用,這樣VM的網路效能可以達到最高。避免VM的網路與真實主機系統的網路去競爭。



4.樓主升級公司內部網路速度到giga等級的環境,是否對連線文X有幫助?還是原來的10M/100M網路環境已經夠用?


一般單純KEYIN是感覺不出差異,但是碰到大量資料查詢時差很多~~~尤其是跑報表統計時,時間差距是以分來算的~~~

vt_hunter wrote:
一般單純KEYIN是...(恕刪)


非常感謝VT大這麼快速又詳細的回答!

很感謝看到這篇分享,大致上已經有自主升級的方向了!:)


過去只想著上網找能符合server 2003的伺服器,但因為各廠已經不支援Windows Server 2003 R2很久了,幾乎沒有辦法找到一台全新可以符合的伺服器,四處碰壁之後這種念頭就放棄了!


只能遇到伺服器當機或是出問題時才想辦法解決問題,換電源、換記憶體、換電容,兩台輪替使用,但舊主機終究有一天會淘汰,在沒有看到這一篇分享文章之前真的完全沒有想過用模擬機可成功移植文X系統,即使想過也覺得成功率不高而作罷,VT大真的很有實驗精神!


您的敘述非常詳細且容易理解,今天受益良多了!
vincent0926 wrote:
非常感謝VT大這麼快...(恕刪)


其實你的伺服器只單純跑文中系統,根本不用VM來另外執行2003 SERVER。前文當中我已經簡單說明破解interbase 7.1不能在新系統上執行的問題(先決條件你要有文中給你的安裝光碟原始程式,裡面就有破解的註冊檔,只是你要手動安裝到正確位置),而使用者端更不是問題,我公司用WIN10一樣都能順利安裝使用,只是安裝前後要調整一下就好。

只是新伺服器系統一定要改電源模式,強迫使用最高效能模式來執行,interbase才會有正常的反應速度。
請問一下,如果我想即時同步備份系統內的資料,該備份哪些檔案呢?
PS. 官方的備份功能是定時的匯出/匯入,但我希望能即時同步更理想,所以猜想要備份Firebird資料庫對嗎?要怎麼備份/還原Firebird資料庫呢?我只找到這個資訊:

「create shadow」指令:
http://csc.ocean-pioneer.com/docum/firebird/firebird.html
安全性(建立多個資料庫備份檔)
create shadow
一旦使用上述命令則會建立一個同步的資料庫在其它的儲存設備上,這可以保障當資料庫邏輯或實體的儲存介面損壞時,有一個備份的資料庫可以即時取代
先推一個好的分享文,百屈不撓呀。厲害!

雖然全部看完了,但是版主可能要諫言主管或老闆找時間把東西全部轉換到你們自己建設的伺服器和服務。廠商提出的那些費用多加一些應該夠自己架設一個了。

另外,樓主測試VM是在E3-1240 V5上,他本身是4C8T。不同作業系統有不同的排程,剛剛查了一下VM的CPU資源一樣是看工作管理員的邏輯核心來切。如果在VM切四個核心給他,但是四個中有幾個是hyperthread技術出來的邏輯核心的話;變成如果執行時用的這兩個核心在VM中是不同CORE,而在硬體上是同個CORE就會變成一個核心在做全部的事。反之兩個核心會變快是錯覺,僅僅是正常分配給兩個實體不同的CORE。這個問題我們在跑各種benchmark時會碰到,您可以試試讓四個和八個核心都跑滿,會發現時間並不會差距太多,但是當指定5~7個核心做的時候會變得非常有趣,這跟抽籤、排程和工作切割有關係。
這就像是機率,有四個分類(4C)和八個物件(8T),分核心給VM的時候是去拿物件,樓主碰到的情況有可能是:
1.VM配兩個核心時,抽到了兩個不同分類的物件。(T-T)
2.VM配四個核心時,配了四個物件,且其中有兩個視同個分類。(TT-T-T)
當全負載且可分工時,就會發現儘管第二種每個工作量是第一種的一半,但是因為有兩個核心同個實體核心。所以工作時間會比第一種還要久些許。

以上淺見。
  • 3
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?