目前分類:電腦和網際網路 (47)

瀏覽方式: 標題列表 簡短摘要

netsh interface ip set address name="區域連線" source=dhcp
netsh interface ip set dns "區域連線" source=dhcp

Jemmy 發表在 痞客邦 留言(0) 人氣()

  以前遇到需要將欄位轉大小寫,都是放在EditPlus用perl的__DATA__來做。但UltraEdit顯然這部份功能有補足:首先選擇(反白)要替換的行列區域,再來如下指令:

Alt-F5:全轉大寫

Jemmy 發表在 痞客邦 留言(1) 人氣()

  我不否認,架構需要包裝,好的包裝才能吸引可能的買家,過度包裝則華而不實,甚至對實際開發一點幫助也沒有,看下圖:

image

Jemmy 發表在 痞客邦 留言(0) 人氣()

  元宵節,小過年,又是二二八和平紀念日,也是我待滿三年半的一個Milestone,而且有些同事做到今天為止。

  不爽Java的語言不少,有Ruby、Lua、Erlang、Scala,還有Google出一個Go的語言。Ruby沒我預期的紅,但它帶動不少觀念,而Scala剛剛下載玩一下,像是有Function Object的Java,先建一個名為HelloWorld.scala,程式碼如下:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  駐點在外,客戶端不能上Internet是件痛苦事。幸虧一位contract介紹用route,可以同時連測試機與無線外網,有陣子可以通,雖然有時秀逗。在DOS下執行以下的command:

一、查詢route:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  原本收費的虛擬機器翹楚VMWare也有免費版本釋出—VMWare 2.0,至官網下載要註冊,而以下網址下載可免註冊:

Filehippo.com VMware Server 2.0 下載網站

Softpedia.com VMware Server 2.0 下載網站

  裝起來後有點訝異,連界面也改成Web,取代原有的Server Console,就點選群組的VMWare Server Homepage。在安裝過程時有遇到裝不起來的情形,因為原來就有裝舊版的VMWare,但不穩定。後來踹出來的步驟如下:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  在Apache產品或是它的module,安裝方式都一以貫之:configure—>make—>make install。茲以下安裝Apache server為例,自httpd.apache.org下載最新的httpd-2.2.14.tar.gz後,丟到Red Hat的/tmp目錄下。

  1. 解壓縮:切換到/usr/local/src下,執行:gzip -cd < /tmp/httpd-2.2.14.tar.gz | tar xf - 。如此就會在/usr/local/src下產出httpd-2.2.14的目錄。其實通常解壓縮檔放在tmp就好,Apache會放在src下,應該是便於來日有需要重編吧。
  2. configure:再cd到httpd-2.2.14,執行./configure,就會產出Makefile。configure是個script,作用是產出符合當下OS環境的Makefile,諸如C compiler、make指令的位置,常因OS的不同而位置有所差異。
  3. make:執行Makefile的指令,是Java的Ant甚至Maven的原形。Makefile相當於Ant的ant.xml或Maven的pom.xml的角色。
  4. make install:執行Makefile裡的install task,也類似Maven裡的mvn install。在安裝Apache過程,會預設安裝在/usr/local/apache2目錄下。
  5. 啟動時:/usr/local/apache2/apachectl start。ps ax | grep httpd就會列出數個httpd的daemon。停止的指令是apachectl stop。

  之後要安裝mod_cband,下載mod-cband-0.9.7.5.gz後解壓縮於/tmp目錄下,也是一樣經歷configure、make和make install,會產出mod_cband.so置於Apache Home目錄下的modules子目錄。so副檔名是Share Object的意思,Apache的Dynamic Share Object格式,開外掛用。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  在Solaris上的Apache試著安裝mod_cband,過程是一波三折,也間接了解Solaris還有哪些碗粿,雖然革命尚未成功。

  首先,自http://cband.linux.pl/download/mod-cband-0.9.7.5.tgz下載mod_cband套件,Solaris的tar和一般Linux的tar不太一樣,所以只好事先在Local解壓縮出mod_cband-0.9.7.5這個檔案,這檔案也是一個壓縮檔,所以再解一次後產出mod_cband-0.9.7.5目錄,上傳到Solaris上的/tmp目錄下。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  大多Linux系統都預設裝好Apache和MySQL,Solaris也不例外,只是啟動方式不太相同。以root執行以下步驟:

  1. switch到/etc/apache2目錄,cp httpd.conf-example http-conf。複製啟動apache2所需的配置檔。
  2. 啟動apahce2:svcadm enable apache2
  3. 停用apache2:svcadm disable apache2
  4. 檢查apache2是否online或offline
    1. svcs | grep -i apache2 或 svcs -a | grep apache2,得到結果是:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  PowerShell是微軟作業系統提供的Shell Script Language,早年微軟OS是以一般User為銷售對象,在Shell Script著墨完全不及Unix Like系統的Script。PowerShell是微軟官方提出比cmd更好用的script。

  不過下載很麻煩,官方網站micorsoft.com/powershell根本找不到下載點,而是透過Google找到,而且才知要先驗證本機的OS的是否為合法的,不然不能下載。我的OS是Vista,下載PowerShell 1.0版,最新到2.0了。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  除了2006年剛進公司有一個半月的時間弄個雛型的web framework外,就屬這次近三週的時間再弄個新版的framework的時間是第二久(三週的時間也叫久,唉!)。照原定計劃使用了Struts2,這時讓我想到Ruby on Rails,發現它的普及度沒我想像的高,可是影響力卻比普及度還深遠。RoR倡導的Convention Over Configuration(約定優於配置)的觀念,已被多種新興架構所應用,如Struts2、Maven、Grails等。

  以前Smalltalk觀念太先進,硬體速度沒法跟上,最後給Java獨領風騷,是一種的生不逢辰。而現在IT企業林立,一個先進的觀念被提出,但優先以這觀念實作出來的框架如RoR,並沒預期成為大多Developer的新寵,而大型IT企業或Open Source模仿更快,RoR獨享光環不久就馬上有了競爭對手。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  自文化中心借來一本「軟體測試理論與實作」來看,出自大陸原作,第一章的內容就很有意思,就摘錄下來參考:

對軟體測試的誤解:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  從業十餘年來多在Windows下開發系統,Windows有個工作管理員可以監看CPU使用情形,在Linux Like的command mode下也有這種指令:Top,便能在一整頁的Shell顯示最新的CPU使用情形,而若遇有多CPU情形,可以按1來顯示與摺疊每一顆CPU的使用比例,預設是摺疊,以Cpu(s)顯示之。

  top -c,會顯示完整的command line,而不會只有java程式名而已。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  Linux的指令常用卻又記不住每個參數的意涵,像ps -aux,就有評估process所占資源比例的功能,是故誌之備忘。

ps -aux:

顯示其他用戶啟動的行程(a)

查看系統中屬於自己的行程(x)

啟動這個行程的用戶和它啟動的時間(u)

------------------------------------------------------

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.0 1340 440 ? S Nov05 0:04 init

root 2 0.0 0.0 0 0 ? SW Nov05 0:00 [keventd]

root 3 0.0 0.0 0 0 ? SW Nov05 0:00 [keventd]

...

------------------------------------------------------

USER: 域指明了是哪個用戶啟動了這個命令;

PID : Proccess ID

%CPU: 占CPU比值

%MEM: 占記憶體比值

VSZ : 虛擬記憶體大小, 表示如果一個程式完全駐留在記憶體的話需要佔用多少記憶體空間

RSS : 常駐集大小, 當前實際佔用了多少記憶體

STAT: 顯示了行程當前的狀態:

   D 不可中斷 Uninterruptible(usually IO)

   R 正在運行,或在佇列中的行程

   S 處於休眠狀態, 表明這些行程在等待某些事件發生--可能是用戶輸入或者系統資源的可用性

   T 停止或被追蹤

   Z 僵屍行程

   W 進入記憶體交換(從內核2.6開始無效)

   X 死掉的行程

   < 高優先順序

   n 低優先順序

   s 包含子行程

   + 位於後臺的行程組

Jemmy 發表在 痞客邦 留言(0) 人氣()

  之前不太會分辨Open Source釋出的版本後綴加個RC或是GA是什麼意思,現在懂了,這也是做Production該有的sense之一,在wiki找到如下的Software Development Stages如下:

283px-Software_dev2_svg 

Jemmy 發表在 痞客邦 留言(0) 人氣()

  換到Vista後,都不知怎麼截取單一視窗的螢幕了,踹了幾次,終於知道是:alt + fn + insert[prt srt]。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  在踹Ruby on Rails另一個container-Mongrel(匈牙利的),結果可以做成Windows的服務(Service),可以啟動終止,但移除的方法卻沒講,只好找來下面的VBScript進行移除,這工具好用…但也粉危險。


 

Jemmy 發表在 痞客邦 留言(0) 人氣()

(1)欲知微軟錯誤代碼的意義, 在cmd下指令net helpmsg 26, 會得到代碼26的定義: 無法存取指定的磁碟或磁片。

(2)cmd下指令msconfig彈出視窗, 可以在[啟動]頁籤取消開機時自動載入的程式, 增加開機速度。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  吉隆坡出差之行,見識到Symantec一個software failover的product叫Veritas,覺得這product idea不錯,思考一下怎麼仿製Veritas的架構。欲被Veritas進行failover的程式,需為該程式撰寫run.sh和shutdown的script,經由配置檔設定active和slave主機,由這兩台主機互相handsharking,若active主機本身停止運作、或是某程式停止運作,slave主機經由handsharking得知而啟動自身的程式。反之若蓄意讓active主機A程式停止運作,slave主機接手時A程式啟動失敗的話,又會由active主機接手A程式繼續啟動。

  Veritas用到一個Linux程式設計常用的技巧,就是run.sh作法將已啟動的程式的Process ID寫到指定位置下的檔案,在shutdown.sh被呼叫時會去讀該檔案然後kill該process。這樣一個產品功能要仿製應該不算難,賽門奧客還有辦法拿來賣錢,還綁著只能failover三支程式的Licence。在目前吉隆坡的案子裡架構程式是可以被Veritas進行failover,但也可以在架構下寫個仿Veritas模組,由架構進行failover,就不必擔心Licence的問題。目前進行的架構是屬上一節的bootstrap,原本是設計來monitor thread,是故可以考慮monitor process這種type。


Jemmy 發表在 痞客邦 留言(0) 人氣()

  從事IT業已一輪了,有些奇想如下:

1.三角架構:最著名的是MVC架構,其它三角架構與它也有異曲同之妙,如Web Services架構:WSDL(Model)、SOAP(View)、UDDI(Controller);還有RMI機制:Stub Skeleton(Model)、SkeletonStub(View)、rmiregister(Controller)。幾乎是Provider、Caller和Broker的組合,在於每個三角架構賦予每個角色的定位及權限。若以專案比喻:客戶(Model)、開發者(View)、業務(Controller)…唉!好個複雜的三角關係。

2.bootstrap架構:這架構源於OS,由bootstrap載入init process,再由init fork諸多system與application process,並由init monitor其process,這樣的好處是諸多processes由init監控,若process死掉可以設定(或系統內定)由init喚起,而init若也死的話,由bootstrap再叫起。有個商業組織拿來比擬很有趣。bootstrap好比董事長,init好比CEO,其它process好比各業務單位或部門,CEO可以決定成立、撤銷或整併業務單位,而若CEO表現不好,自有董事長(或董事會)撤換,保持系統不至Crash。

  不過現在還是不太明瞭,Architecture和Frameowrk的差別,前者多用於職掌,後者多用於成品。隱性的含喻,architecture比較有行進式、創造創新的意味;framework就比較靜態,具守成的意涵。


Jemmy 發表在 痞客邦 留言(2) 人氣()

1 23