- 跟周公跨年已經非常駕輕就熟,希望來年可以換新的方式跨年
- 考張車子駕照 ,年紀大了,是該考張駕照了
- 多寫點文章,充實部落格的內容
- 房價低一點,人人有其屋
- 工作少一點,薪水多一點
- 台灣少內耗,努力往前走
2009年12月31日 星期四
2009年12月22日 星期二
reduce viewstate size for performance issue
微軟的asp.net中,有個東西叫viewstate,預設會啟用,用來維護他的控制項的一些狀態與資訊,原始的設計理念,是用來減輕程式設計師的負擔,少寫一些code,但是,凡事總是有例外,比如說,我笨笨的寫了一個小網站,巡檢系統,程式不算大,也就不到十個頁面,但是他的效能就是不佳,看原始碼,也沒複雜到那兒,但是有時就是很慢。
今天,裝了一個firefox的add-on,叫Viewstate Size,當我逛一個網頁時,他就在右下角透出這個頁面的viewstate(viewstate只會出現在用微軟asp.net寫的網站)的大小,然後就逛了一下我的小網站,天呀,真是暴肥,隨著自訂巡檢單的大小不同,竟然可以肥到635KB,如果以512/64的ADSL來說,大約要10秒的下載時間,然後如果計算整個網頁的size,竟然達到2.27MB。
在asp.net的寫法下,有很多便利的地方,但是也因為這樣,對於我這種不熟練的傢伙來說,也很容易寫出怪物程式,從他的開發介面中,並不會看到這些問題,為了方便,我拉了一狗票的User Control,然後,巨量的control,養肥viewstate,程式仍然可以動,功能仍然正常,只是,偶爾覺得,怎麼頓頓的?但又不是每次都頓頓的(歸功於區域網路的頻寬充足)。
針對viewstate,有許多處理方式,下面是參考的連結,我經驗不夠,就不亂說了
1.關掉viewstate
Help! My ViewState Is Out Of Control
2.把viestate轉到session中
Reduce ViewState Size In ASP.NET 2.0
3.查看viewstate存放的資訊--tool ViewState Decoder (2.2)
(不過我網頁的viewstate太肥,這工具沒辦法看)
http://alt.pluralsight.com/tools.aspx
今天,裝了一個firefox的add-on,叫Viewstate Size,當我逛一個網頁時,他就在右下角透出這個頁面的viewstate(viewstate只會出現在用微軟asp.net寫的網站)的大小,然後就逛了一下我的小網站,天呀,真是暴肥,隨著自訂巡檢單的大小不同,竟然可以肥到635KB,如果以512/64的ADSL來說,大約要10秒的下載時間,然後如果計算整個網頁的size,竟然達到2.27MB。
在asp.net的寫法下,有很多便利的地方,但是也因為這樣,對於我這種不熟練的傢伙來說,也很容易寫出怪物程式,從他的開發介面中,並不會看到這些問題,為了方便,我拉了一狗票的User Control,然後,巨量的control,養肥viewstate,程式仍然可以動,功能仍然正常,只是,偶爾覺得,怎麼頓頓的?但又不是每次都頓頓的(歸功於區域網路的頻寬充足)。
針對viewstate,有許多處理方式,下面是參考的連結,我經驗不夠,就不亂說了
1.關掉viewstate
Help! My ViewState Is Out Of Control
2.把viestate轉到session中
Reduce ViewState Size In ASP.NET 2.0
3.查看viewstate存放的資訊--tool ViewState Decoder (2.2)
(不過我網頁的viewstate太肥,這工具沒辦法看)
http://alt.pluralsight.com/tools.aspx
2009年12月18日 星期五
Virtualbox簡介&版權宣告
對許多預算有限的小公司來說,每一份IT預算都珍貴無 比,利用免費的軟體以避免不必要的支出與版權問題,會是許多人所努力追尋的。
虛擬化,是近幾年很熱門的一項技術,VMWARE更是市場龍頭,VMware本身亦有提供一些免費的產品線,供人使用,除此之外,微軟亦有Virtual PC,連windows 7都有內建XP Mode(其實就是virtual PC + XP OS),最後,VirtualBox則是我最後認識的一套軟體。
需要注意的,如果你用一台實體機器,上面利用虛擬機器灌了一堆iwndows OS,那要計算的軟體費用也是很可怕的,而且,根據人的「灌」性,通常都會灌上N個虛擬機器。並不是每一個老闆都能理解,為什麼沒有買機器,軟體授權的費用還是一直往上成長,windows 2008有不同的計算方式,第一個虛擬機器是不另計費(他內建的Virtual PC & server 2003 Standard版 &Hyper-V授權),但第二個以後還是要乖乖算錢。在大量虛擬化後,軟體佔支出費用的比例,將佔用更高的比率。
Virtualbox跟vmware workstation不同的地方,在於對於光碟片與硬碟的處理方式,在vmware workstation中,是一個資料夾,裡面就放上虛擬機器的設定檔,還有硬碟映像檔,甚至是suspend時記憶體的snapshot等,所以操作上,是以資料夾為單位,一個資料夾代表一個虛擬機器,還有他的硬碟、設定檔等資料。
但是Virtualbox則是一個介面(Virtual Media Manager)集中放置所有的硬碟檔、光碟映像檔路徑、軟碟映像檔路徑等,所以如果你在其中一台機器中有使用過D:\xp.iso,那麼另外一台虛擬機器亦可以從他的介面中選擇此iso檔
在預設值中,他的硬碟是集中放置於一個地方,C:\Documents and Settings\UserAccountName\.VirtualBox ,對於習慣將資料放在C槽以外的使用者,會需要手動更新一下設定,在執行Virtualbox後,在檔案(file)->偏好設定(Preference)中的「一般」,就可以設定
下表為他的授權說明,原始網址:http://www.virtualbox.org/wiki/VirtualBox_PUEL
In summary, the VirtualBox PUEL allows you to use VirtualBox free of charge
If you do not belong to either category, you will have to purchase a commercial license. Do not hesitate to contact Sun Microsystems, Inc. in this matter.
If you are confused by the legalese below, you may also want to take a look at our Licensing FAQ to answer a few common questions.
SUN MICROSYSTEMS, INC. (“SUN”) IS WILLING TO LICENSE THE PRODUCT (AS DEFINED IN § 1 BELOW) TO YOU ONLY UPON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS VIRTUALBOX PERSONAL USE AND EVALUATION LICENSE AGREEMENT (“AGREEMENT”). PLEASE READ THE AGREEMENT CAREFULLY. BY DOWNLOADING OR INSTALLING THIS PRODUCT, YOU ACCEPT THE FULL TERMS OF THIS AGREEMENT.
IF YOU ARE AGREEING TO THIS LICENSE ON BEHALF OF AN ENTITY OTHER THAN AN INDIVIDUAL PERSON, YOU REPRESENT THAT YOU ARE BINDING AND HAVE THE RIGHT TO BIND THE ENTITY TO THE TERMS AND CONDITIONS OF THIS AGREEMENT.
§ 1 Subject of Agreement. “Product”, as referred to in this Agreement, shall be the binary software package “Sun VirtualBox,” which Product allows for creating multiple virtual computers, each with different operating systems (“Guest Computers”), on a physical computer with a specific operating system (“Host Computer”), to allow for installing and executing these Guest Computers simultaneously. The Product consists of executable files in machine code for the Solaris, Windows, Linux, and Mac OS X operating systems as well as other data files as required by the executable files at run-time and documentation in electronic form. The Product includes all documentation and updates provided to You by Sun under this Agreement and the terms of this Agreement will apply to all such documentation and updates unless a different license is provided with an update or documentation.
§ 2 Grant of license. (1) Sun grants you a personal, non-exclusive, non-transferable, limited license without fees to reproduce, install, execute, and use internally the Product a Host Computer for your Personal Use, Educational Use, or Evaluation. “Personal Use” requires that you use the Product on the same Host Computer where you installed it yourself and that no more than one client connect to that Host Computer at a time for the purpose of displaying Guest Computers remotely. “Educational use” is any use in an academic institution (schools, colleges and universities, by teachers and students). “Evaluation” means testing the Product for a reasonable period (that is, normally for a few weeks); after expiry of that term, you are no longer permitted to evaluate the Product.
(2) The “VirtualBox Guest Additions” are a set of drivers and utilities that are shipped as a subset of the Product for the purpose of being installed inside a Guest Computer to improve its performance and cooperation with the rest of the Product. In addition to and independent of the rights granted by subsection 1, Sun allows you to install, execute, copy and redistribute a) unmodified copies of the ISO installation medium of the VirtualBox Guest Additions as shipped with the Product and b) the VirtualBox Guest Additions together with the Guest Computer into which they have been installed.
§ 3 Restrictions and Reservation of Rights. (1) Any use beyond the provisions of § 2 is prohibited. The Product and copies thereof provided to you under this Agreement are copyrighted and licensed, not sold, to you by Sun. Sun reserves all copyrights and other intellectual property rights. This includes, but is not limited to, the right to modify, make available or public, rent out, lease, lend or otherwise distribute the Product. This does not apply as far as applicable law may require otherwise or if Sun grants you additional rights of use in a separate agreement in writing.
(2) You may not do any of the following: (a) modify the Product. However if the documentation accompanying Product lists specific portions of Product, such as header files, class libraries, reference source code, and/or redistributable files, that may be handled differently, you may do so only as provided in the documentation; (b) rent, lease, lend or encumber the Product; (c) remove or alter any proprietary legends or notices contained in the Product; or (d) decompile, or reverse engineer the Product (unless enforcement of this restrictions is prohibited by applicable law).
(3) The Product is not designed, licensed or intended for use in the design, construction, operation or maintenance of any nuclear facility and Sun and its licensors disclaim any express or implied warranty of fitness for such uses.
(4) No right, title or interest in or to any trademark, service mark, logo or trade name of Sun or its licensors is granted under this Agreement.
§ 4 Termination. The Agreement is effective on the Date you receive the Product and remains effective until terminated. Your rights under this Agreement will terminate immediately without notice from Sun if you materially breach it or take any action in derogation of Sun's and/or its licensors' rights to Product. Sun may terminate this Agreement should any Product become, or in Sun's reasonable opinion likely to become, the subject of a claim of intellectual property infringement or trade secret misappropriation. Upon termination, you will cease use of, and destroy, Product and confirm compliance in writing to Sun. Sections 3-9, inclusive, will survive termination of the Agreement.
§ 5 Disclaimer of Warranty. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, SUN PROVIDES THE PRODUCT “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. The entire risk as to the quality and performance of the Product is with you. Should it prove defective, you assume the cost of all necessary servicing, repair, or correction. In addition, Sun shall be allowed to provide updates to the Product in urgent cases. You are then obliged to install such updates. Such an urgent case includes, but is not limited to, a claim of rights to the Product by a third party.
§ 6 Limitation of Liability. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE PRODUCT, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Sun's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for Product under this Agreement. Some states do not allow the exclusion of incidental or consequential damages, so some of the terms above may not be applicable to you.
§ 7 Third Party Code. Portions of Product may be provided with notices and open source licenses from communities and third parties that govern the use of those portions, and any licenses granted hereunder do not alter any rights and obligations You may have under such open source licenses, however, the disclaimer of warranty and limitation of liability provisions in this Agreement will apply to all the Product.
§ 8 Export Regulations. All Product, documents, technical data, and any other materials delivered under this Agreement are subject to U.S. export control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with these laws and regulations and acknowledge that you have the responsibility to obtain any licenses to export, re-export, or import as may be required after delivery to you.
§ 9 U.S. Government Restricted Rights. If Product is being acquired by or on behalf of the U.S. Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights in Product and accompanying documentation will be only as set forth in this Agreement; this is in accordance with 48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD acquisitions).
§ 10 Miscellaneous. This Agreement is the entire agreement between you and Sun relating to its subject matter. It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement. No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this Agreement will immediately terminate. Course of dealing and other standard business conditions of the parties or the industry shall not apply. Place of performance and legal venue shall be Santa Clara, California, the domicile of Sun. Any action related to this Agreement will be governed by the law of the State of California and controlling U.S. federal law. No choice of law rules of any jurisdiction will apply.
虛擬化,是近幾年很熱門的一項技術,VMWARE更是市場龍頭,VMware本身亦有提供一些免費的產品線,供人使用,除此之外,微軟亦有Virtual PC,連windows 7都有內建XP Mode(其實就是virtual PC + XP OS),最後,VirtualBox則是我最後認識的一套軟體。
需要注意的,如果你用一台實體機器,上面利用虛擬機器灌了一堆iwndows OS,那要計算的軟體費用也是很可怕的,而且,根據人的「灌」性,通常都會灌上N個虛擬機器。並不是每一個老闆都能理解,為什麼沒有買機器,軟體授權的費用還是一直往上成長,windows 2008有不同的計算方式,第一個虛擬機器是不另計費(他內建的Virtual PC & server 2003 Standard版 &Hyper-V授權),但第二個以後還是要乖乖算錢。在大量虛擬化後,軟體佔支出費用的比例,將佔用更高的比率。
Virtualbox跟vmware workstation不同的地方,在於對於光碟片與硬碟的處理方式,在vmware workstation中,是一個資料夾,裡面就放上虛擬機器的設定檔,還有硬碟映像檔,甚至是suspend時記憶體的snapshot等,所以操作上,是以資料夾為單位,一個資料夾代表一個虛擬機器,還有他的硬碟、設定檔等資料。
但是Virtualbox則是一個介面(Virtual Media Manager)集中放置所有的硬碟檔、光碟映像檔路徑、軟碟映像檔路徑等,所以如果你在其中一台機器中有使用過D:\xp.iso,那麼另外一台虛擬機器亦可以從他的介面中選擇此iso檔
在預設值中,他的硬碟是集中放置於一個地方,C:\Documents and Settings\UserAccountName\.VirtualBox ,對於習慣將資料放在C槽以外的使用者,會需要手動更新一下設定,在執行Virtualbox後,在檔案(file)->偏好設定(Preference)中的「一般」,就可以設定
- 硬碟映像檔案預設的位置
- 虛擬機器設定的預設位置
- What exactly do you mean by personal use and academic use in the Personal Use and Evaluation License?
Personal use is when you install the product on one or more PCs yourself and you make use of it (or even your friend, sister and grandmother). It doesn't matter whether you just use it for fun or run your multi-million euro business with it. Also, if you install it on your work PC at some large company, this is still personal use. However, if you are an administrator and want to deploy it to the 500 desktops in your company, this would no longer qualify as personal use. Well, you could ask each of your 500 employees to install VirtualBox but don't you think we deserve some money in this case? We'd even assist you with any issue you might have.
Use at academic institutions such as schools, colleges and universities by both teachers and students is covered. So in addition to the personal use which is always permitted, academic institutions may also choose to roll out the software in an automated way to make it available to its students and personnel.
下表為他的授權說明,原始網址:http://www.virtualbox.org/wiki/VirtualBox_PUEL
VirtualBox Personal Use and Evaluation License (PUEL) ¶
This license applies if you download the full VirtualBox binaries from the Downloads page. It does not apply to the VirtualBox Open Source Edition (OSE), which falls under the GPL instead; see Editions for details about the differences between these releases.In summary, the VirtualBox PUEL allows you to use VirtualBox free of charge
- for personal use or, alternatively,
- for product evaluation.
If you do not belong to either category, you will have to purchase a commercial license. Do not hesitate to contact Sun Microsystems, Inc. in this matter.
If you are confused by the legalese below, you may also want to take a look at our Licensing FAQ to answer a few common questions.
VirtualBox PUEL terms and conditions ¶
License version 7, September 10, 2008SUN MICROSYSTEMS, INC. (“SUN”) IS WILLING TO LICENSE THE PRODUCT (AS DEFINED IN § 1 BELOW) TO YOU ONLY UPON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS VIRTUALBOX PERSONAL USE AND EVALUATION LICENSE AGREEMENT (“AGREEMENT”). PLEASE READ THE AGREEMENT CAREFULLY. BY DOWNLOADING OR INSTALLING THIS PRODUCT, YOU ACCEPT THE FULL TERMS OF THIS AGREEMENT.
IF YOU ARE AGREEING TO THIS LICENSE ON BEHALF OF AN ENTITY OTHER THAN AN INDIVIDUAL PERSON, YOU REPRESENT THAT YOU ARE BINDING AND HAVE THE RIGHT TO BIND THE ENTITY TO THE TERMS AND CONDITIONS OF THIS AGREEMENT.
§ 1 Subject of Agreement. “Product”, as referred to in this Agreement, shall be the binary software package “Sun VirtualBox,” which Product allows for creating multiple virtual computers, each with different operating systems (“Guest Computers”), on a physical computer with a specific operating system (“Host Computer”), to allow for installing and executing these Guest Computers simultaneously. The Product consists of executable files in machine code for the Solaris, Windows, Linux, and Mac OS X operating systems as well as other data files as required by the executable files at run-time and documentation in electronic form. The Product includes all documentation and updates provided to You by Sun under this Agreement and the terms of this Agreement will apply to all such documentation and updates unless a different license is provided with an update or documentation.
§ 2 Grant of license. (1) Sun grants you a personal, non-exclusive, non-transferable, limited license without fees to reproduce, install, execute, and use internally the Product a Host Computer for your Personal Use, Educational Use, or Evaluation. “Personal Use” requires that you use the Product on the same Host Computer where you installed it yourself and that no more than one client connect to that Host Computer at a time for the purpose of displaying Guest Computers remotely. “Educational use” is any use in an academic institution (schools, colleges and universities, by teachers and students). “Evaluation” means testing the Product for a reasonable period (that is, normally for a few weeks); after expiry of that term, you are no longer permitted to evaluate the Product.
(2) The “VirtualBox Guest Additions” are a set of drivers and utilities that are shipped as a subset of the Product for the purpose of being installed inside a Guest Computer to improve its performance and cooperation with the rest of the Product. In addition to and independent of the rights granted by subsection 1, Sun allows you to install, execute, copy and redistribute a) unmodified copies of the ISO installation medium of the VirtualBox Guest Additions as shipped with the Product and b) the VirtualBox Guest Additions together with the Guest Computer into which they have been installed.
§ 3 Restrictions and Reservation of Rights. (1) Any use beyond the provisions of § 2 is prohibited. The Product and copies thereof provided to you under this Agreement are copyrighted and licensed, not sold, to you by Sun. Sun reserves all copyrights and other intellectual property rights. This includes, but is not limited to, the right to modify, make available or public, rent out, lease, lend or otherwise distribute the Product. This does not apply as far as applicable law may require otherwise or if Sun grants you additional rights of use in a separate agreement in writing.
(2) You may not do any of the following: (a) modify the Product. However if the documentation accompanying Product lists specific portions of Product, such as header files, class libraries, reference source code, and/or redistributable files, that may be handled differently, you may do so only as provided in the documentation; (b) rent, lease, lend or encumber the Product; (c) remove or alter any proprietary legends or notices contained in the Product; or (d) decompile, or reverse engineer the Product (unless enforcement of this restrictions is prohibited by applicable law).
(3) The Product is not designed, licensed or intended for use in the design, construction, operation or maintenance of any nuclear facility and Sun and its licensors disclaim any express or implied warranty of fitness for such uses.
(4) No right, title or interest in or to any trademark, service mark, logo or trade name of Sun or its licensors is granted under this Agreement.
§ 4 Termination. The Agreement is effective on the Date you receive the Product and remains effective until terminated. Your rights under this Agreement will terminate immediately without notice from Sun if you materially breach it or take any action in derogation of Sun's and/or its licensors' rights to Product. Sun may terminate this Agreement should any Product become, or in Sun's reasonable opinion likely to become, the subject of a claim of intellectual property infringement or trade secret misappropriation. Upon termination, you will cease use of, and destroy, Product and confirm compliance in writing to Sun. Sections 3-9, inclusive, will survive termination of the Agreement.
§ 5 Disclaimer of Warranty. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, SUN PROVIDES THE PRODUCT “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. The entire risk as to the quality and performance of the Product is with you. Should it prove defective, you assume the cost of all necessary servicing, repair, or correction. In addition, Sun shall be allowed to provide updates to the Product in urgent cases. You are then obliged to install such updates. Such an urgent case includes, but is not limited to, a claim of rights to the Product by a third party.
§ 6 Limitation of Liability. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE PRODUCT, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Sun's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for Product under this Agreement. Some states do not allow the exclusion of incidental or consequential damages, so some of the terms above may not be applicable to you.
§ 7 Third Party Code. Portions of Product may be provided with notices and open source licenses from communities and third parties that govern the use of those portions, and any licenses granted hereunder do not alter any rights and obligations You may have under such open source licenses, however, the disclaimer of warranty and limitation of liability provisions in this Agreement will apply to all the Product.
§ 8 Export Regulations. All Product, documents, technical data, and any other materials delivered under this Agreement are subject to U.S. export control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with these laws and regulations and acknowledge that you have the responsibility to obtain any licenses to export, re-export, or import as may be required after delivery to you.
§ 9 U.S. Government Restricted Rights. If Product is being acquired by or on behalf of the U.S. Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights in Product and accompanying documentation will be only as set forth in this Agreement; this is in accordance with 48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD acquisitions).
§ 10 Miscellaneous. This Agreement is the entire agreement between you and Sun relating to its subject matter. It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement. No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this Agreement will immediately terminate. Course of dealing and other standard business conditions of the parties or the industry shall not apply. Place of performance and legal venue shall be Santa Clara, California, the domicile of Sun. Any action related to this Agreement will be governed by the law of the State of California and controlling U.S. federal law. No choice of law rules of any jurisdiction will apply.
2009年12月5日 星期六
2009年11月15日 星期日
PowerShell SQL Server Health Check Script - The Multifunctioning DBA
PowerShell SQL Server Health Check Script - The Multifunctioning DBA
用powershell check資料庫的狀態,文章中有附上script檔。
涉及到
1.powershell如何產生excel文件
2.powershell如何連接資料庫伺服器
用powershell check資料庫的狀態,文章中有附上script檔。
涉及到
1.powershell如何產生excel文件
2.powershell如何連接資料庫伺服器
2009年11月4日 星期三
Google Application Engine
這一兩年所謂的雲端運算很熱門,最主要的廠商,就微軟、Google、Amazon這幾家廠商,就目前所觀察到的,雲端運算還不算很成熟,畢竟新的東西,配套的軟體還是相當的有限,對沒有多少開發能力的企業來說,還需要更多的現成選擇,再來就是,有那些東西可以放到企業外部的?利用這個新的架構,這需要再三的思考與確認。
在雲端運算的概念下,消費者所看到的,要花錢買的,是CPU的運算能力、網路上的儲存空間,還有耗用的對外對內頻寬, 至於到底硬體上要多少設備來達到你所需要的Resource,這個就交給Service Provider來考慮,你消耗的資源再兇,也只是在費用上成長,你不用傷腦筋,想要規劃多少台機器,預備多少資源,要花多少時間改程式,要用什麼OS,程式要由一台機器處理,還是切成兩台分工合作?
對消費者來說,把複雜的硬體、OS、軟體一堆有的沒的專有名詞,還有軟體架構、未來需求分析,全部簡化成CPU的運算資源、硬碟空間、頻寬這三個東西,只要你的程式是照Service Provider所提供的SDK撰寫出來,那你就不用考慮一堆複雜的名詞,只要考慮到,我的程式會耗掉多少資源?這些資源要花多少錢?要寫那些功能出來?
有利有弊,為了所謂的雲端運算,大家習慣的關連式資料庫不能用了,要用datastore,要用simpledb,然後許許多多發展了許多年的免費軟體,因為都是前端用程式(php asp.net jsp),後端用mysql、ms sql這類關聯式資料庫,變成要改寫才可能在這環境中運作,也就是說,許多配合的軟體,都要再重新撰寫,修改架構。
對程式開發的人來說,或許是一個利多,因為,你只要專心開發程式,再也不用搞那半吊子的系統管理,也不用擔心,寫出來的程式,為什麼在開發的機器上可以正常的跑,但就是沒辦法在客戶的機器上跑?各種軟體版本所造成的複雜衝突,也不用考慮了,因為一切都丟到雲端上了。當企業從10人變成1萬人,沒關係,多買Resource就好了,連程式都不用改了,你不用到底要用多少機器跑Web Server,多少機器跑Appication,多少機器跑SQL DB,程式要如何修改,切割成多台機器運算。
不過,人力的需求又減少了,工作機會也減少了,傳說中,可憐的MIS,連裝忙的機會也要消失了,因為mail外包,網頁外包,連僅存的幾台Server,也因為雲端運算而沒有用處了,所謂的檔案伺服器,有幾萬塊就可以解決的便宜NAS,連小高中生都會設定。
那天,台灣與美國的海底電鑬斷了,啥事也都不用做了,因為啥東西都存在那遙遠的美國雲端上。
在雲端運算的概念下,消費者所看到的,要花錢買的,是CPU的運算能力、網路上的儲存空間,還有耗用的對外對內頻寬, 至於到底硬體上要多少設備來達到你所需要的Resource,這個就交給Service Provider來考慮,你消耗的資源再兇,也只是在費用上成長,你不用傷腦筋,想要規劃多少台機器,預備多少資源,要花多少時間改程式,要用什麼OS,程式要由一台機器處理,還是切成兩台分工合作?
對消費者來說,把複雜的硬體、OS、軟體一堆有的沒的專有名詞,還有軟體架構、未來需求分析,全部簡化成CPU的運算資源、硬碟空間、頻寬這三個東西,只要你的程式是照Service Provider所提供的SDK撰寫出來,那你就不用考慮一堆複雜的名詞,只要考慮到,我的程式會耗掉多少資源?這些資源要花多少錢?要寫那些功能出來?
有利有弊,為了所謂的雲端運算,大家習慣的關連式資料庫不能用了,要用datastore,要用simpledb,然後許許多多發展了許多年的免費軟體,因為都是前端用程式(php asp.net jsp),後端用mysql、ms sql這類關聯式資料庫,變成要改寫才可能在這環境中運作,也就是說,許多配合的軟體,都要再重新撰寫,修改架構。
對程式開發的人來說,或許是一個利多,因為,你只要專心開發程式,再也不用搞那半吊子的系統管理,也不用擔心,寫出來的程式,為什麼在開發的機器上可以正常的跑,但就是沒辦法在客戶的機器上跑?各種軟體版本所造成的複雜衝突,也不用考慮了,因為一切都丟到雲端上了。當企業從10人變成1萬人,沒關係,多買Resource就好了,連程式都不用改了,你不用到底要用多少機器跑Web Server,多少機器跑Appication,多少機器跑SQL DB,程式要如何修改,切割成多台機器運算。
不過,人力的需求又減少了,工作機會也減少了,傳說中,可憐的MIS,連裝忙的機會也要消失了,因為mail外包,網頁外包,連僅存的幾台Server,也因為雲端運算而沒有用處了,所謂的檔案伺服器,有幾萬塊就可以解決的便宜NAS,連小高中生都會設定。
那天,台灣與美國的海底電鑬斷了,啥事也都不用做了,因為啥東西都存在那遙遠的美國雲端上。
2009年8月6日 星期四
Freenas新增網卡驅動程式
一般較常見或是不要太新的網路卡,Freenas(FreeBSD)都認的到,但是一但認不到的話,就只能用掛kernel module的方式,把驅動給掛上去,然後才能驅動。
在Freenas中要掛未附的驅動程式,有兩個步驟
一、把編譯好的檔案(*.ko)放到正確的位置
二、設定好組態檔,讓FreeBSD知道有這個驅動程式可以使用
為了操作上的方式,我是用vmware的方式,灌一個FreeBSD的環境做事
1.灌了一個FreeBSD的虛擬機器,再把灌了embbed img的cf卡磁區給mount起來
mount -t ufs /dev/da0 /mnt
(我是用外接的usb讀卡機,所以是da0)
2.去官網抓驅動程式freebsd 6.x for freenas 0.6x,freebsd 7.x for freenas 0.7x
3.我網卡的chip是marvell 88e8057,解開後就一個ko檔,一個man page檔,ko檔是就要用的驅動程式,把檔案塞到freenas中的/boot/kernel,然後改一下loader.conf,開機載入此driver即可。
a.因為此時我是用FreeBSD開機,mount外來的cf卡,所以路徑是/mnt/boot/kernel,所以我是把if_myk.ko檔案複製到/mnt/boot/kernel路徑下 (實際開機時,會是/boot/kernel,此處是因為我mount到/mnt下的關係)
b.再來,複製一個 libmbpool.ko 到/mnt/boot/kernel ,freenas 7.0rc1並沒有這個檔,但要執行if_myk.ko需要這個檔案,檔案來源是我是找FreeBSD 7.x光碟片中的檔案來用,網路上有許多公開的Ftp站都有這個檔案,且透過網頁即可抓取(要用freebsd 7.x的版本)。
c.修改/mnt/boot/loader.conf 加入下列這一行,讓Freenas知道可以載入此驅動程式
if_myk_load="YES"
如此修改後即可生效。
會想買Shuttle的SA76G2L ,主要是考慮到他有三個SATA,可以裝三個硬碟,試試軟體的Raid5, 空間上也塞的下三顆3.5吋的硬碟。然後還蠻小的,又是xpc中的低階型號,5000元的價格尚可接受。不過沒想到他的網卡晶片型號實在太新了,所以只好自已手動裝驅動程式。
在Freenas中要掛未附的驅動程式,有兩個步驟
一、把編譯好的檔案(*.ko)放到正確的位置
二、設定好組態檔,讓FreeBSD知道有這個驅動程式可以使用
為了操作上的方式,我是用vmware的方式,灌一個FreeBSD的環境做事
1.灌了一個FreeBSD的虛擬機器,再把灌了embbed img的cf卡磁區給mount起來
mount -t ufs /dev/da0 /mnt
(我是用外接的usb讀卡機,所以是da0)
2.去官網抓驅動程式freebsd 6.x for freenas 0.6x,freebsd 7.x for freenas 0.7x
3.我網卡的chip是marvell 88e8057,解開後就一個ko檔,一個man page檔,ko檔是就要用的驅動程式,把檔案塞到freenas中的/boot/kernel,然後改一下loader.conf,開機載入此driver即可。
a.因為此時我是用FreeBSD開機,mount外來的cf卡,所以路徑是/mnt/boot/kernel,所以我是把if_myk.ko檔案複製到/mnt/boot/kernel路徑下 (實際開機時,會是/boot/kernel,此處是因為我mount到/mnt下的關係)
b.再來,複製一個 libmbpool.ko 到/mnt/boot/kernel ,freenas 7.0rc1並沒有這個檔,但要執行if_myk.ko需要這個檔案,檔案來源是我是找FreeBSD 7.x光碟片中的檔案來用,網路上有許多公開的Ftp站都有這個檔案,且透過網頁即可抓取(要用freebsd 7.x的版本)。
c.修改/mnt/boot/loader.conf 加入下列這一行,讓Freenas知道可以載入此驅動程式
if_myk_load="YES"
如此修改後即可生效。
會想買Shuttle的SA76G2L ,主要是考慮到他有三個SATA,可以裝三個硬碟,試試軟體的Raid5, 空間上也塞的下三顆3.5吋的硬碟。然後還蠻小的,又是xpc中的低階型號,5000元的價格尚可接受。不過沒想到他的網卡晶片型號實在太新了,所以只好自已手動裝驅動程式。
2009年7月31日 星期五
Freenas初探
為了備份資料的需要,架了一個freenas的系統,用來做備份資料。
OpenFiler
Freenas
為了穩定,也為了避免搞一個月,結果系統還是沒上線的問題,所以就先用0.69.2的版本先上,測試的話,其實還蠻簡單的,二天前,我裝在讀卡機的CF卡忘了拿掉,結果就變成用讀卡機上CF卡的freenas開機,差點嚇死我,因為設定都變成空的,而前一晚還copy了一晚的資料。
所以說,理論上只要把測試的CF卡塞好資料,就可以測試。
說到我onboard的Marvell 88E8057,marvell本身有提供bsd的driver,不過,因為我手賤,裝了一個AMD64版的img,所以還在try.
OpenFiler
- 由CentOS修改而成,後來是用rPath Linux(沒用過rPath),總體感覺還是蠻像CentOS的
- 佔用空間較大,不像embedded的系統。最好用個1GB~2GB的空間來灌系統會比較保險
- 效能上感覺比較差一點(使用上的感覺,沒有測數據)
- 硬體的Support就像其他linux一樣,比FreeBSD齊全
Freenas
- 由FreeBSD修改而成,目前有0.69 & 0.70 兩個分支,分別對映 6.x & 7.x的FreeBSD
- 佔用空間比較小,不用64mb的空間就可以裝設完成
- 效能上感覺不錯
- 硬體的Support比較差一點,尤其是太新的硬體(我可憐的Marvell 88E8057晶片網卡,要手動裝)
為了穩定,也為了避免搞一個月,結果系統還是沒上線的問題,所以就先用0.69.2的版本先上,測試的話,其實還蠻簡單的,二天前,我裝在讀卡機的CF卡忘了拿掉,結果就變成用讀卡機上CF卡的freenas開機,差點嚇死我,因為設定都變成空的,而前一晚還copy了一晚的資料。
所以說,理論上只要把測試的CF卡塞好資料,就可以測試。
說到我onboard的Marvell 88E8057,marvell本身有提供bsd的driver,不過,因為我手賤,裝了一個AMD64版的img,所以還在try.
訂閱:
文章 (Atom)