ASP.NET MVC3 - TempData的Session消失問題

網友一篇「 MVC 3上,Session消失的問題與解決辦法」引起我的興趣,我留言要了些基本的Code,以下是我驗證程式碼,結論是,Session並不會消失,怪怪!

Step 1. 新增Controller及Action
以下程式碼為驗證使用,沒有進行任何安全過濾,請不要使用。

Imports System.IO 

Namespace UpDownFileFromDBMvc
    Public Class FileUploadAndSessionTestController
        Inherits System.Web.Mvc.Controller

        '
        ' GET: /FileUploadAndSessionTest/Upload

        Function Upload()
            Return View()
        End Function

        
        Function Upload(upfile As HttpPostedFileBase )
            If upfile  IsNot Nothing andalso upfile.ContentLength > 0 Then
                Dim savePath As String = Path.Combine(Server.MapPath("~/Files/"), upfile.FileName)
                upfile.SaveAs(savePath)
                TempData("FileName") = upfile.FileName 
            End If

            Return RedirectToAction("FileInfo")
        End Function

        Function FileInfo()
            ViewBag.FileName = TempData("FileName")
            Return View()
        End Function

    End Class
End Namespace

以上參考該網友提供程式碼,我所撰寫的VB程式碼。

Step 2. 新增Upload與FileInfo的View

Upload.aspx

<%@ Page Title="" Language="VB" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Upload
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>Upload</h2>
<%Using Html.BeginForm("Upload", "FileUploadAndSessionTest", FormMethod.Post, New With {.enctype = "multipart/form-data"})%>
    <%: Html.ValidationSummary(True)%>
    File:<input id="upfile" name="upfile" type="file" value="" />
    <br />
    <input type="submit" value="Upload" />
<%End Using%>
</asp:Content>

FileInfo.aspx

<%@ Page Title="" Language="VB" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
FileInfo
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>FileInfo</h2>
Upload File Nale: <%: ViewBag.FileName %>
</asp:Content>

以下為執行結果圖。

Upload File then Pass file name
圖一:Upload File then Pass file name(點擊看大圖)
程式唯一不同處只有路徑我有先使用Path.Combine處理過,不知道是不是這個原因。

重構 - List of Sound Bites(原音重現)

以下節錄《重構-改善即有的設計》一書最後一篇的重點清單,此章我認為是《重構-改善即有的設計》此書中最重要的一章,它提出讓程式裡不應該有的壞味道。
p.7
When you find you have to add a feature to a program, and the program’s code is no structured in a convenient way to add the feature, first refactor the program to make it easy to add the feature, then add the feature.
如果你發現自己需要為或式添加一個特性,而程式碼結構使你無法很方便地那麼做,那就先重構那個程式,使特性的添加比較容易進行,然後再添加特性。
p.8
Before you start refactoring, check that you have a solid suite of tests. These must be self-checking.
重構前,先檢查自己是否有一套可靠的測試機制。這些測試必須有自我檢驗能力。
p.13
Refactoring changes the programs in small steps. If you make a mistake, it is easy to find the bug.
重構技術係以微小的步伐修改程式。如果你犯下錯誤,很容易便可發現它。
p.15
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
任何一個傻瓜都能寫出電腦可以理解的程式碼。唯有寫出人類容易理解的程式碼,才是優秀的程式員。
p.53
Refactoring (noun): a change made to the internal structure of software to make it easier to understand and cheaper to modify without changing its observable behavior of the software.
重構 (名詞):對軟體內部結樣的一種調整,目的是在不改變「軟體之可察行為」前提下,提高其可理解性,降低其修改成本。
p.54
Refactor (verb): to restructure software by applying a series of refactorings without changing the observable behavior of the software.
重構 (重詞):使用一系列重構準則(手法),在不改變「軟體之可察行為」前提下,調整其結構。
p.58
Three strikes and you refactor.
事不過三,三則重構。
p.65
Don’t publish interfaces prematurely. Modify your code ownership policies to smooth refactoring.
不要過早發佈介面。請修改你的程式碼擁有權政策,使重構更順暢。
p.88
When you feel the need to write a comment, first try to refactor the code so that any comment becomes superfluous.
當你感覺需要撰寫註釋,請先嘗試重構,試著讓所有註釋都變得多餘。
p.90
Make sure all tests are fully automatic and that they check their own results.
確保所有測試都完全自動化,讓它們檢查自己的測試結果。
p.90
A suite of tests is a powerful bug detector that decapitates the time it takes to find bugs.
一整組測試就是一個強大的臭蟲偵測器,能夠大大縮減搜尋臭蟲所需的時間。
p.94
Run your tests frequently. Localize tests whenever you compile – every test at least every day.
頻繁地執行測試。每次編譯請把測試也考慮進去 – 每天至少執行每個測試一次。
p.97
When you get a bug report, start by writing a unit test that exposes the bug.
每檔你接獲臭蟲提報,請先撰寫一個單元測試來揭發這隻臭蟲。
p.98
It is better to write and run incomplete tests than not to run complete tests.
編寫未臻完善的測試並實際執行,好過對完美測試的無盡等待。
p.99
Think of the boundary conditions under which things might go wrong and concentrate your tests there.
考慮可能出錯的邊界條件,把測試火力集中在那兒。
p.100
Don’t forget to test the exceptions are raised when things are expected to go wrong.
當事情被大家認為應該會出錯時,別忘了檢查彼時是否有異常被如期拋出。
p.101
Don’t let the fear that testing can’t catch all bugs stop you from writing the tests that will catch most bugs.
不要因為「測試無法捕捉所有臭蟲」,就不撰寫測試碼,因為測試的確可以捕捉到大多數臭蟲。
我個人是對p.88這一條有些意見。但事後想想,他的意思應該是讓程式自我解釋,不過這有很大的難度。相反的,在一些教科書或實作上,我們希望註解是越清楚越好。

小孩帶金剛 - 什麼是寵愛與溺愛?

上週,小女因病住院一週。幾次住院的日子裡,可以碰到各式各樣的照顧者,父母、祖父母、舅舅、姑媽…其中以父母與祖父母最多。

在院照顧的日子多了,碰過許多讓人…搖頭的照顧者,例如,有一次碰到一位國中小女生與祖母,這位小女生把病房當自己家,帶著一個Radio來病房聽音樂,這沒什麼關係,不過晚上九點…十點…十一點…她們還在聽,而且還在和祖母聊天。越晚越靜時,一點點小聲音就顯的很大聲,我們可以忍受(或說習慣)孩子不舒服所產生聲音,但音樂加聊天聲,實在讓人無法休息。更好笑的話,隔天下午約兩、三點時,這對祖孫可能是前一天聊太晚累了,想要休息,這位小女生還用不小的音量說:「聊天的聲音好吵哦,我都沒辦法睡午覺。」

重點是這位長輩,從頭到尾都是和孫女同一陣線,讓人直搖頭。

不過,這次住院碰到Particular Case,讓我深刻了解寵愛與溺愛,算是另類「小孩帶金剛」的教育。

Tool - Longman Dictionary of Contemporary English, 5th Edition In Windows 7 No Voice

如果你的Longman Dictionary of Contemporary English, 5th Edition (2009) 在Windows 7中無法播放聲音,試試以下解決方案。

Step by Step 1:控制台 → 聲音 → 喇叭 → 右鍵 → 設定喇叭 → 立體聲

如果你的硬體規格是比較新的,可能音效支援可能有「立體聲」、「四聲道」、「5.1環場音效」、「7.1環場音效」,Longman Dictionary of Contemporary English, 5th Edition (2009)只能在立體聲下播放。

Step by Step 2:控制台 → 聲音 → 喇叭 → 右鍵 → 內容 → 等級 → CD音訊 → 不能靜音

Windows 7 CD音訊設定
圖一:CD音訊設定

金剛帶小孩 - 是誰殺了孩子的想像力?

當了爸爸後,會很注意孩子的變化,這些變化有好有壞,有些可避免,有些無法避免。

有孩子的家裡,通常玩具一堆,大玩具、小玩具、滿地整床的玩具,不過在我們家我買的玩具不多,通常是玩到壞了,玩到支離破碎。大寶貝,媽媽教的好,玩具通常是老二玩壞比較多,原因也簡單,因為她才一歲多,正是破壞力超強的年紀,給她破壞王的稱呼絕不過分。

最近,買了一個電話玩具,之前的電話玩具玩壞了,每次看著大寶、二寶拿著電話在對空氣聊天,我都覺的好可愛,現在的玩具都聲光效果很好,按1會說One,按2會說Two,按有馬圖案按鍵會有馬叫聲然後說horse,不然就是Do,Ri,Me,唱歌根本小事。

真理越辯越明嗎?

就我讀過的書,目前只有兩位很會很會"討論"的人,他們不只會問,而且還會說。

  • 會問,能抽絲剝繭,一層一層慢慢進入核心(Core)。
  • 會說,能提出事證,證明或反證明你論點中的盲點(Blind)。
一位是東方代表孔子,一位是西方代表蘇格拉底。他們其實只說不寫,也就是他們本身並無任何著作,所有的著作都是由弟子或後人所幫忙記錄留下來的。

為什麼會想提這兩位,因為每當台灣選舉時間一到,就罵聲四起,好像平常的弊案都不是弊案,選舉時的弊案才是弊案。我先說明,這不是政治文,我不想討論政治。

金剛事件簿 - Some Plurk Fun Talk About Anti-Spam

以下對話來自我Plurk上的一些對話,基本上是"練瘋話"(台),不過覺得有趣,留下來當記念。

  1. 亂擋一通 (from KKBruce)
  2. Anti-Spam filter good (from KKBruce)
  3. Server Crash (email server根本就葛了 from Bill)
  4. Nobody Nobody want you (沒人寄信 from No.18)
  5. 你撥的電話無回應 (網路斷了 from Bruce)
  6. 沒交錢,台電不爽 (機房停電 from Bill)
  7. 找不到Server, 110處理 (server被拆了 from No.18)
  8. 我要成為火影 (一切都是幻覺 from 只能選擇放手)
  9. 我是蛤蜊肉(台) (瞎了,把拉圾郵件當成正常郵了 from No.18)
  10. 馬克,靠!凸!(公司倒閉 from Bruce)

Focus - 買車交車及保養時,應該注意什麼?

朋友在大陸要買車,問我交車和保養時要注意什麼,以下是我個人一些心得。

二內一外

二內,車內與引擎室。

車內,通常比較不會有問題。
引擎室,所有的"油"都有檢查,一般的三油一水、五油一水。

一外,車外的烤漆是否有問題。新車應該一點點"瑕疵"都不應該有。

試著發動引擎,聽聽聲音,通常新車的聲音都很不錯。所有的門,試著開關,都不該有"異音"(久了或許有)。

檢查完,簽個名,車就是你的了,他們就不負責了!^_^

油耗

我的Focus開了十多萬了,油耗嗎…看你是市區為主,還是高速為主。

Focus板金較重,相對安全性高,經常走走停停,油耗就高。

以市區為主,經常起步,油耗相對較高。
以高速公路為主,油耗我覺得好。

最重要的是,你是否"經常大腳",每一台也耗油。如果真的在意油耗,也可考慮柴油引擎,算是另一種省油方式。

保養

每5000公里進廠保養一次,基本上,"耗材類"不算(輪胎、電池、來令片、皮帶 <-- 這四個最常碰到),到沒有什麼大問題。

不要太相信"保養廠"的技師,這是多年保養下來的經驗,我車子因為前三年在保固內,所以都在Ford原廠保養,也習慣了,我有朋友也是在外開保養廠,後來,只要原廠跟我說"什麼東西有點小問題,建議更換",我都會先去找我這位朋友看一下,5-7成,我朋友都是XD原廠,後來,我習慣,有問題,請原廠技師"帶我去看",一方面看他是否在虎爛,一方面請技師解釋一下,這個零件有什麼影響,不影響安全性的問題,我是都不太理他。

大概就這樣。

金剛事件簿 - Why I Deleted Facebook Account

初戀呀!初戀!

一開始申請 facebook 只是好玩,申請了也只是放在那裡,動也沒動過,但我覺得 facebook 厲害的地方在於,讓不動人最後也會去使用它

在使用 facebook 初期,會一段時間的「友情爆發期」,也就是短短一些時間,讓你加入大量的「朋友」,這裡的朋友是指「認識的」、「失連的」、「有關係的」,而不是亂加一通式加入朋友。當你在facebook加入的朋友越來越多,你會發現,它對你的「人際網路」比你還清楚

以我為例,在加入facebook約半年多後,有一天,有一位女性友人申請加入我為好友,通常個人資料不多或照片無法分辨的,我都會留言請問對方是誰?再決定要不要加入,結果讓我大為吃驚,她是我國中的初戀情人。國中畢業後,我們就沒有再碰過任何一次面。能在facebook上相遇,讓我很高興,她已經是二個"大"孩子的媽。還記得當天晚上,馬上跟婆婆報告這個消息,婆婆問我說有什麼感覺?其實,心情很平和,都已經是近二十年前的事了,只是覺得能碰到一個久未見面的朋友,心情還不錯。

但,我覺的我是個怪人。有一天,我覺的不對勁,心裡有個聲音跟我說,你應該要刪除 facebook 了,這個聲音在我心裡有幾個月之久,我思我想,最後我同意了這個聲音,進行刪除facebook帳戶的動作。刪除 facebook 帳戶,對於 facebook 一般用戶可能還不是件容易的事。你在帳號設定裡,只能做「停用」的動作,你完全找不到任何刪除 facebook 帳戶的設定,我停用、又啟用,進入 facebook 的說明裡,打上中文的「刪除」關鍵字,還是找不到,打上了英文「Delete」關鍵字,才找到一個申請刪除帳號的連結,而且刪除後還有14天的後悔期,14天後才會將你的資料刪除。

刪除 facebook 帳戶很多天之後(我沒有特別留意和計算),我終於接到第一通電話,更讓我相信,刪除facebook帳戶是很正確的事。感謝老妹。

理由一:浪費太多時間

facebook 能成為網路世界裡的另一強權,不是沒有理由,需要有大量的使用者,大量的瀏覽量,大量的訊息。另一重點是,新使用者加舊使用者的不斷回流使用。只要開啟瀏覽器,Mouse就會自動的去點擊facebook連結,然後把最近的訊息快速的瀏覽一片,不管現在有多重要的事、多重要的工作…都一樣。

我也發現,如果你能上網的環境越方便,你越是離不開這種模式。有不少次,我帶著寶貝們去公園遊戲區玩,可以發現,許多家長都忙著「看手機」,都忙著「分享照片」,不停「刷」著手指,眼光停留在小孩子的身上都不超過5秒。

每個人的時間很固定,你花在A的時間越多,做B的時間就越少。

理由二:上癮,不是一件好事

網路上癮,可能和「打Game上癮」一樣慘。過與不及都不是一件好事,這我們都知道,讀書是一件好事,但只知道讀書、考試,那叫書呆子。網路資源豐富,如果能掌控、利用它,那是非常棒的一件事,但只拿來上傳照片、傳影片、打卡、打Game…那應該是宅嗎。

又如上面的例子,透過平板、手機等設備,我們可以說做到了「anytime, anywhere, you can do anything」地步,do anything不是do facebook,除了facebook,我們應該還有更多重要的事要做。我又發現,越來越多孩子,出門只坐在旁邊玩手機、平板,而不活動。出了門,還迷在網路上,小孩迷,大人癮,真慘

理由三:太多虛假的人際

80/20法則,大家都應該了解。在facebook中,我發現80/20法則一樣適用,有80%人,從邀請我加入,或我邀請他加入,從頭到尾到我刪除facebook帳戶那一天,我們從沒聊過天!除了平常有在連絡的朋友不談,在facebook上數百位的朋友,全部只有一個人打過電話給我。那是99/1法則嗎?

我認真想過,facebook要我們盡量留下一堆個人資料,那堆個人資料有幾個人會去關心,還是只有facebook會去關心,因為你留的越多,facebook就能分析的越透徹。朋友發生好事或壞事,我們當然會留個言,表達關心,不過那不是我想要的,這和第五點有關。假設你生病住院了,你是希望看到一堆留言說:加油!還是希望接到一通電話,問候你病情如何?還是希望看到這個人出現在你面前,看看你,和你聊聊天?
  1. 留言
  2. 電話
  3. 見面
如果能選擇,電話與見面,是我能接受的答案。但有了facebook,大部份人都選擇留言,只留言的關心,好虛哦!

理由四:理所當然…嗎?

facebook已經變成一個訊息交換中心,這造成一個問題,好像訊息只要有發佈到facebook,理所當然有facebook帳號的人都應該接收到此訊息…是這樣嗎?

理由五:「文字」是一個不簡單藝術

現在是一個文字能力低下的時代,尤其是以電腦代替文字書信,文字書信是指「手寫」的文字書信。不管是和我同年紀、或年紀比較小,用我妹當例子好了,我妹打注音輸入法,我打嘸蝦米輸入法,嘸蝦米輸入法你一定要知道那個字,才有辦法打出來,注音輸入法只要有「音」就能打出來,注音好是好,但不知為什麼現在的人都偷懶成習慣,打錯字不算,打注音都懶得選字,也不管整句組合出來是什麼妖魔鬼怪,看不懂,是因為我年紀老,跟不上潮流。

公司也是,明明就坐在方圓0.5公尺、1公尺、1.5公尺之內,不想站起來走也可以撥個內線,但大家都是選擇使用IM來溝通,明明用講的,不到30秒、1分鐘就能解決一件事,但使用了IM後,絕對花超過3~5倍時間。對於遠方的友人,IM的確是個好工具,但對於位在同一Office的同事們,使用IM是非常沒有生產力的事。

facebook讓人與人能在網路上連結起來,而且能活絡起來,這點是非常不簡單。全世界有多少家公司想做這樣的事,失敗者不計其數,也不能說成功者只有facebook一家,但目前為止,以"全球性"來看,facebook真的是最成功的。

以上是我個人膚淺的理由,在按下刪除鍵之前,我認真想了很多,有些已經忘的差不多了。我妹打電話問我說,你的facebook帳號怎麼不見了,我回說:「我希望有事,妳能直接打電話給我,而不是透過facebook留言。最少,我還能聽到妳的聲音,詐騙集團才騙不到我。」刪除facebook已經是很久的事,除了我妹的那通電話,沒有任何朋友在意我是否還活在facebook的世界裡,原因很簡單,在刪除facebook帳戶之後,從來沒有任何一個人問我關於facebook的事。

So,或許我覺得上facebook已經是種壓力,離開之後我覺得輕鬆很多。

金剛事件簿 - 偷偷摸摸之壹電視網樂通機上盒

停用有線電視與網路

將家中的有線電視與有線電視網路停用。原因主要有:
  1. Cable TV與Cable Net必須一起申請,你能單獨申請Cable TV,無法單獨申請Cable Net。
  2. 每個月Cable TV與Cable Net的費用 1100 ~ 1400 元,這筆費用,我可以每個月拿來投資小朋友新教材,不管買CD、VCD、DVD、書、玩具…都覺得比給孩子看電視來的好。
  3. Cable TV的兒童節目,重播、重播、再重播,我都快要會背稿子了。
  4. 我們看TV與使用Net時間太少,反而都是小朋友在看TV。就算有看,也是吃飯看個半小時的新聞。
  5. 想改走純Internet方案。
純Internet方案,有很多選擇,例如,拿一台NB接電視,然後用PPS,想看什麼播什麼。或是,現在有很多「網路影院」的產品、無線電視台、MOD…,我也有例入考慮。雲呀雲,希望有朵彩虹雲可以用。

簡單說,就是我們家沒有電視的需求,只有網路需求,例如,我們家中的 070 網路電話(節費盒),順便說一下,我在 12/1 日合約到期日,把那不更新軟體 070 軟體網路電話給停用了。我想要只透過網路解決家中的影、音之類的需求。剛好和同事聊天,聊著聊著,同事說,我們的代理商是壹電視網樂通的代理,他手邊剛好有代理商送來的機子(讓我們玩),沒有多久就拿著一台來給我帶回家玩。

壹電視網樂通機上盒試玩心得

  • 除了看節目與影片時,其他什麼都慢。
  • 穩定度…不好。
我拿到時的軟體版本是 247,現在為 251,整個選單的過程就是慢,開機慢,上下慢、左右慢,進出慢,更軟體體也慢,簡言之,就是操作時反應很慢,其他當你開始看節目台(含HD)或電影台時,是OK的。穩定度是指,會當機,一週內有三次,對於我的選擇進入無反應情況,畫面就停在某選單上,通常插拔電後就能回復正常

對於免費的東西,實在不要要求太多,最少看節目與影片時,沒有出過什麼狀況。對於我們只想看看新聞而言,「免費+新聞」,它是能符合我們家的需求。它現在也推出月付 58 元,看電影只要 1 元的方案,實在很有吸引力,但會不會繼續使用,請接下去看。

為什麼說壹電視網樂通機上盒偷偷摸摸


可能是平常工作內容與網路相關,所以對網路動作比較敏感。

試用的前一週,特地花了時間與寶貝們看電影,「心動時刻」、「搶救旭山動物園」都是不錯的日本片,但發現很奇怪的的一件事,為什麼我們看完片子,按下 Power off 後,我的Hub燈號閃的飛快。因為Cable Net的設備只有一個孔,我必須接一台Hub出來才能分接其他070、PC、NB、Wireless…等。看著1, 3孔的燈號閃的飛快,感覺不對勁!(1 是 Cable Net, 3 是壹電視網樂通機上盒)

幾次測試之後,我終於知道原因,原來網通樂在我們按 Power off 後,會偷偷放「廣告」,而且只有聲音沒有畫面。你按 Power off,然後電視不要關,等個約10來秒(看網路速度),你就能聽到廣告的聲音,而且時間還不短。這點讓我很不爽。這就像我們把電腦關機後,還有人用我們的電腦在做其他事一樣,而且是用我們的頻寬在營利他自己,這跟木馬的行為有何不同?

試用是試用,我還是有簽一張正式的簽收單,印象中我沒有看到有如此條約,我又從頭到尾看到二次,我很確定沒有這種行為的條約。我不知道這種行為是否合法,我有發文去問NCC,看NCC回覆吧!

NCC針對網樂通之行為回覆

敬啟者:
  您好!您於12月3日反映「網樂通於關機後仍播放廣告聲音」電子郵件,說明如下:

   網路內容包羅萬象,其所涉各項問題與實體社會一樣,係由各目的事業主管機關依權責處理;本會對於網路內容之管理,係依據本會組織法第3條第5款規定,推動及宣導我國網站內容分級制度。另依100年11月11日立法院三讀通過之兒童及少年福利與權益保障法,賦予本會召集各目的事業主管機關委託民間團體成立內容防護機構等任務,並以「促進業者自律」等更周延的防護機制,保護兒少上網安全。

  壹電視新聞臺雖取得衛星廣播電視節目供應者經營許可,然其經營之網樂通仍屬網路內容,並非以衛星廣播電視法及電視節目分級處理辦法規範;惟為尊重陳情人權益,本會已將您的意見函轉業者請其注意改善。謝謝您的來函,敬祝

闔家平安。                    

 

              國家通訊傳播委員會 敬啟

滿不滿意?

Servey - Mail Server | (4) 自建Exchange郵件伺服器

Exchange 2010建置討論

我們直接進入結論。建置Exchange 2010所花費的軟硬體成本最高,依架構不同,所需費用不同。如以HA為前提,基本上一定破百萬。

AD1 <----> AD2
Ex1 <----> Ex2

如果採購四台實體機:

  • Windows Server 2008 R2 * 4
  • Exchange 2010 * 2
  • CAL * ?


如果採購二台虛擬機:

  • Windows Server 2008 R2 Enterprise * 2
  • Exchange 2010 * 2
  • CAL * ?


Enterprse版本有送四套虛擬機的作業系統授權,但價格也是四倍。
虛擬機因多台OS在上運作,所以通常備份、系統移轉…通常要考慮更完整。

不過,Exchange架構上可以分段來導入,即:

階段一:
AD1, Ex1

階段二:
AD1 <----> AD2
Ex1 <----> Ex2

也就是分兩階段導入,以完成整個HA架構,當然你還可以加AD3, Ex3 … 無限制。

從以上討論來看,架設Exchange郵件伺服器規模可大可小,但通常軟體都比硬體貴。這方面,與你的SA好好討論。

Tool - Longman Dictionary of Contemporary English 5th Edition - 朗文當代英英辭典第5版使用心得筆記

為何要買英英字典?

之前透過Plurk看到暗大貼的一篇文章「你不可不知的字典知識」,讓我決定購買我的第一本英英字典,我選擇英英字典是因為,英漢字典或漢英字典在現在網路通訊發達的年代,要取得免費英漢字典或漢英字典資源,相當簡單,例如,Yahoo迷你筆…之類的產品很多,不管是Online字典或需安裝軟體的字典,不過,我個人是用在查單字居多。不過如果想進一步了解「英文」,我想一本好的英英字典還是有必要性。

我舉個例子,我要查單字"go"。

Yahoo!奇摩迷你筆-查詢單字go

go

vi.
1. 去; 離去
When did she go? 她什麼時候離開的?
2. 行走; 旅行; 移動[Q]
We went by train. 我們搭火車去。
3. 做(事); 從事(活動)[+v-ing]
They have gone boating. 他們划船去了。
4. 變為, 成為[L]
The milk went sour. 牛奶變質了。
5. 處於...的狀態[L]
He went hungry. 他餓著肚子。
6. 衰退; 受損; 磨損
His eyesight is going. 他的視力正在衰退。
7. 開始; 開動
All the preparations have been completed, so we are ready to go. 一切準備就緒, 我們隨時可以開始行動。
8. (機器等)運轉
This clock does not go. 這鐘不走了。
9. 通到; 延及; 至[W][Q]
The valley goes from west to east. 山谷由西往東延伸。
10. 相配[W]
This paint doesn't go. 這漆的顏色不合適。
11. 【數】(除)得整數商[W]
Three into two won't go. 三除二得不到整數商。
12. 被放置; 容得下[W][Q]
This luggage won't go in the car. 車子放不下這行李。
13. 售出; 歸給[(+for/to)]
The car went for $3, 000. 這車子賣了三千美元。
14. (與must, can, have to 連用)被去掉; 被放棄; 被辭退
This paragraph must go. 這段得刪去。
15. (消息等)被傳遞, 流傳[W][+that]
The story goes that the Prime Minister will resign. 據傳首相將要辭職。
16. 被接受; 被准許; 有效[W]
What I say goes. 我說到做到。
17. 進行; 結果[Q]
Everything is going well. 一切順利。
18. 發出聲響; (鐘)報時
There goes the bell! 鐘響了!
19. 完結; 死
Now both of her parents are gone. 現在她的父母親都已去世了。
vt.
1. 拿...打賭[(+on)]
I'll go five dollars on that. 我願為此賭五美元。
2. 【口】(常用於否定句)忍耐
I really can't go him any more. 我真的再也不能容忍他了。
n.
1. 【口】輪到的機會[C]
Now it's your go. 現在輪到你了。
2. 【口】嘗試[C][(+at)]
Let me have another go at it. 讓我再試它一次。
3. 【口】精力; 精神[U]
The man is full of go; he often stays up late. 那人精力充沛; 他常熬夜。
4. 【口】意外的事態[S]
5. 去; 進行[U]
6. 【口】時髦東西[the S]
vi.去; 離去; 移動; 前進

LDOCE5 (Longman Dictionary of Contemporary English 5th Edition)

go 1   S1   W1  verb  ( past tense  went  / went /,  past participle  gone ,  third person singular  goes)
1 move/travel
  a) [ intransitive always + adverb/preposition ]  ( also   been )   to travel or move to a place that is away from where you are or where you live  →  come :
There’s nothing more we can do here. Let’s  go home .
Have you ever been to  (= have you ever travelled to )  Japan?
I  have been to  (= have travelled to )  Germany several times.
Where are you going?
We’re going to Canada in the summer.
Dinah went into the kitchen.
She went over and put her arm around him.
I’m going round to her house to find out what’s wrong.
I’ll just go up   (= go upstairs )  and ask him what he wants.
  b) [ intransitive and transitive ]   to move or travel in a particular way or for a particular distance :
It took us over an hour to go ten miles.
The car was going much too fast.
We went a different way from usual that day.
go by bus/train/car etc
It’ll be quicker to go by train.
  c) go and do something  ( also   go do something   American English )  [ not in past tenses ]   to move to a particular place in order to do something :
Go wash your hands.
I went and spoke to the manager.
在朗文當代英英辭典第5版(Longman Dictionary of Contemporary English 5 Edition)裡單字Go有49條解析,而且英英辭典的好處是,你能更正確了解此單字原始用意,例如,go = 旅行,如果用英漢字典來看,實在不懂,為什麼travel就travel和go有何關係?但讀一下英英字典解釋,就了解為什麼英漢字典裡go會有旅行的意義。

我考慮許久,而且還跑了書局去查看「實體書」,最後終於決定買下「Longman Dictionary of Contemporary English 5th Edition」這本英英字典。

Servey - Mail Server | (3) 硬體郵件伺服器

前言

硬體郵件伺服器,產品之多,令我有點嚇到。是利潤高嗎?是進入門檻低嗎?我猜,應該有很大一部分都是改Linux,再加上一些自有技術而來。下列的資料,就我比較了解的,我們推薦碩碕、PowerMail、Openfind這三家的產品,如果你時間很多,可以打電話請廠商送個"測試機"來給你玩玩,最終選一個符合你需求的去使用。

硬體郵件伺服器解決方案

硬體郵件伺服器解決方案
廠商 授權 型號 價格 網址
碩碕 人數 BOX 120 不方便打出來 http://www.box-sol.com.tw/
碩碕 人數 BOX 200 不方便打出來
PowerMail 人數 PowerMail 30000 不方便打出來 http://www.infobox.com.tw/
Openfind 人數+模組 M2K6100 DL 200000 (50U估價)(依人數+模組會有不同) http://www.openfind.com.tw/taiwan/products/mail2000/appliance.html
新軟 None MLS-1000 88000 http://www.nusoft.com.tw/tw/product_info/mls/mls.shtml
新軟 None MLS-1500 176400
新軟 None MLS-2000 264600
新軟 None MLS-3000 None
新軟 None MLS-5000 None
友旺 None MS1200 60000 http://www.aboway.com.tw/product_detail.php?id=154
友旺 None MS2200 120000
眾至 人數 MS-1000 50000 http://www.sharetech.com.tw/product-mailserver.htm
眾至 人數 MS-6025 65000
眾至 人數 MS-6125 80000
眾至 人數 MS-6226 140000
眾至 人數 MS-6325 266000
SonicWall None Email Security(ES) None 台灣無經銷
QNAP None WMS-2208R 48000 查無此產品網址
QNAP None WMS-24000 76000 查無此產品網址
Applus None M3-A350 None http://www.applus.com.tw/

以上,如果要和AD帳號整合,需自行建置AD Server。

結論

說明一下,我為什麼推薦碩碕、PowerMail、Openfind這三家的產品。

碩碕,因為我目前的同事之一是碩碕的業務,有他的幫忙,讓我可以非常了解碩碕的產品。另一原因是,他們產品線算是完整,從前端的Spam到後端的歸檔等,你可以依需求彈性擴充。很多都是把一堆功能整合進一台Server裡就拿出來賣了,就這一點,我們也可以買其他家,但未來就擴充性而言,碩碕是比較好的選擇。

PowerMail設備在網路上口碑不錯,他們強項除了Mail之外,還是快速的回復能力,這對於一般小公司是個不錯的功能,不是每個公司都是機房、空調…讓伺服器可以在很"舒服"環境工作。不舒服的環境下,設備的穩定度或許不好,但他們在系統回復的設計,可以讓你在最短時間讓Mail Server回復正常。

Openfind硬體與Mail 2000軟體是一組,Mail 2000內建許多模組,你可以依需求購買授權即可使用。有別區其他Linux-based,Mail 2000在技術上是自有,與碩碕與一樣,Openfind的產品線完整,當你未來有其他需求,他們也能提供比較好的整合服務。

Tool - IntoDNS報告內容全攻略筆記

DNS Server架設需求討論

之前提過一次「選一個安全的DNS伺服器」,不過那是別人架設好的DNS Server,一般而言,如果我們只架Web Server、Mail Server服務,那我們最少在網路上須提供二筆最基本的「記錄,Record」,一個是 A Record、一個是 MX Record

例如,

www.kkbruce.net  A  64.233.183.121
mail.kkbruce.net  A  64.233.183.121
           MX  10 mail.kkbruce.net

DNS 相關知識,不是今天的主題,我不深入討論。

我們在申請Domain時,Domain服務供應商都會有 DNS 代管服務,而且會提供我們一個基礎或進階DNS管理的功能,有些 Domain 服務供應商提的 DNS 功能很全面,有些很入門。如果你 Domain 是在台灣申請,絕大部份所提供的 DNS 管理功能都很入門,有些更只有少少幾筆數的A記錄和MX記錄。

當個人或公司,剛好對外只提供Web或Mail服務時,簡單的幾筆的A記錄與MX記錄,確實是足夠用,代管省成本、省頻寬、省硬體…,且這些 Domain 供應商的DNS伺服器都很穩定。通常不夠用時,我們就必須自己架設DNS Server來提供解析服務。這裡先說明,因為Domain轉換供應商有一定的限制與條件,並不是想轉換就可以立即轉換,如果你符合轉換件條,當然可以轉換到DNS管理功能較全面的供應商,不過,通常是「當務之急」,所以我說「必須自己架設」。

DNS Server是整個網路的基礎,沒有它整個網路就是廢物。架好了,並不代表設定沒問題。DNS本身有一堆的RFC文件,一般人也不太可能為了架一台DNS Server去讀那些RFC文件,我們必須能很快速找出設定問題。早期,或是你年紀大一點,大概都是使用dnsstuff.com所提供的測試服務,不過後來dnsstuff轉換經營方式,我就很少使用dnsstuff了。後來,又在網路上找到了另一個intoDNS提供DNS測試服務。

intoDNS測試的好處是「快」,一般我們修改 DNS 後,還必須等到上層的DNS Server(例如,ISP的DNS Server)快取時間結束,重新抓取我們DNS Server裡Record內容後,"使用者"或"我們"才能知道修改結果正確與否。但使用intoDNS測試我們的DNS設定時,通常你修改完DNS,intoDNS通常就能抓取最新的結果,這可以省下我們許多時間。(不過還是會受上層DNS Server快取的影響)

有一點要注意,intoDNS只能針對「第一層」的Domain進行測試,即「kkbruce.net」是OK,但像「ns1.kkbruce.net」第二層Domain,intoDNS就不進行測試。

intoDNS Report正體中文解釋


以下就我申請的 kkbruce.net 網域名稱進行測試,http://www.intodns.com/kkbruce.net所提供的報告內容,簡單進行說明。(基本上,只要不出現紅色驚嘆號,就是OK)

Servey - Mail Server | (2) 純軟體郵件伺服器

前言

放在線上,好是好,但有些「上層」就是不放心,還是希望把資料放在自己公司,但類似Microsoft Exchange的架構,成本又高。那有沒有便宜的郵件伺服器?答案是有的。你可以使用純軟體郵件伺服器。

純軟體郵件伺服器第一名,我想應該是 Unix-Like ( Linux ) 裡的 SendMail 或 PostMail,不過在下面列表中我先不列入考慮,原因是,一般人或沒有專門資訊人員的公司,想簡易的把 SendMail 或 PostMail 架設起來,而且做到一個好的管理,不是一件容易的事。反之,在有專門資訊人員的幫忙下,Linux + SendMail,能一次解決二個問題,一是作業系統,二是Mail Server軟體,而且Linux本身就強調不用太高的硬體,即可發揮出很好的執行效率。

純軟體郵件伺服器解決方案

純軟體郵件伺服器解決方案
廠商 產品 網址 價格(NTD)
雷電 RaidenMaild http://www.raidenmaild.com/tw/ 4520
EVO MailServer https://www.evo-mailserver.com.tw/ 4520
Openfind Mail2000 http://www.openfind.com/taiwan/products/mail2000/info.html None
i-Freelancer Rainbow http://i-freelancer.net/Rainbow/MailServer.htm 26800

雷電 - RaidenMaild

老牌,好用,方便與Active Directory帳號整合。就以前與客服溝通的經驗,服務很不錯。

EVO - MailServer

這套,我單純看規格,我覺得規格很不錯,只是還不能與Active Directory帳號整合。我有寫信去問,他們正在努力中,相信不久的將來,就能整合AD功能。

Openfind - Mail2000

Openfind的Mail2000軟體與硬體一起賣,在硬體郵件伺服器在來討論。

i-Freelancer - Rainbow

功能規格,也是完整。但軟體價格算是較高的一套。

結論

論口碑、性價比,雷電是第一選擇,一次採購永久升級,客服也不錯。EVO是少數支援了IMAP的軟體,等AD功能在整合進來,就很有競爭力了。Openfind的Mail 2000軟體是最貴的,這個"最貴"是與表軟體比較,它每個模組都切的很清楚,即每個模組都要買授權,東加西加,金額就一直上去了。最後那一套,規格OK,但網路上我找不到什麼評價。

雷電、EVO、i-Freelancer都是架設在Windows之上,架設這些伺服器前,Windows與主機的錢還是要花。

Survey - Mail Server | (1) 線上郵件伺服器

Google Apps for Business | Gmail 企業版

以純線上服務而言,Google應該是打片天下無敵手
資料參考網址:http://www.google.com/apps/intl/zh-TW/business/gmail.html

Gmail解決方案費用
帳號數 Gmail (USD) 費用預估(NTD)
1 5 USD/月 150 NTD/月
50 250 USD/月 7500 NTD/月
50 3000 USD/年 90000 NTD/年

Office 365

它的優缺點,我在前一篇「Survey - Office 356 Survey | Office 356 評估」有討論。

Office 365解決方案費用
帳號數 Office 365(USD) 費用預估(NTD)
1 10 USD/月/E1 300 NTD/月/E1
50 500 USD/月/E1 15000 NTD/月/E1
50 6000 USD/年/E1 180000 NTD/年/E1
50 1200 USD/月/E3 36000 NTD/月/E3
50 14400 USD/年/E3 432000 NTD/年/E3

Openfind MailCloud

Openfind 是我們台灣本土的老品牌,在Email領域經營許久。Mail 2000產品可以買斷,也就是實體機,這在另一份Survey文章硬體郵件伺服器會談到,也可以租賃,早期的Mail 2000,現在升級稱MailCloud。

MailCloud解決方案費用
帳號數 Office 365(USD) 費用預估(NTD)
50 None 38999 NTD/年

其他費用可以參考官網 MailCloud Price

線上郵件伺服器評估心得

Office 365最貴,但如果把Office及其他服務計算進去,也未必最貴,選擇Office 365,需求面很重要,因為它不單單只個一個Mail,Office 365是一個整合解決方案。

Google 企業版,合適習慣全線上使用者。除Gmail之外,Google文件也是強項之一,唯一注意只有公司對外的網路頻寬、穩定度。Google 企業版是個非常標準的雲端產品,在外連線使用非常方便,而且不論是否跨國與否,基本而言,都能快速連線使用。

MailCloud以年費來看,MailCloud是最便宜。但基本空間大小每人 2GB,嗯,看你怎麼用,如果是全線上作業,太小了些,如會使用POP3或IMAP來把信收下來,那是還好。MailCloud很專注在Mail這件事情上,所以MailCloud不像Google企業版或Office 365是整合解決方案,就單單只Mail的功能。

總結而論:
  • Office 365,適合與Office或公司內的Exchange混合使用、配合。
  • Google企業版,適合全部線上使用者,功能完整,只要你能上網就能使用。(當然透過IMAP也能與Outlook之類軟體配合使用。)
  • MailCloud,專業的 Email 平台,可快速解決任何 Email 問題,除 MailCloud 之外,還有歸檔、備份、稽核、備援、監控…等。