Time of Update: 2018-12-03
Groovy探索之MOP 六 運行期內添加構造器和靜態方法 構造器是我們喜歡重載的一個方法,因為我們在執行個體化一個類的時候,會遇到各種各樣的情況,比如在某些情況下,一系列類的執行個體可能有一些相同值的屬性,這時候,我們在執行個體化對象時,就不希望把這些相同的值分別注入到每一對象中,這樣的工作很繁瑣。這時候,我們就會重載構造器,但一些時候,比如一些Bean對象,它們的屬性很多,我們就不好在類中重載很多構造器。比如,我們有如下的一個GroovyBean類: class Reader {
Time of Update: 2018-12-03
Groovy Tip 29 Regex
Time of Update: 2018-12-03
Groovy探索之MOP 九 Interceptor 一 近幾年以來,AOP(面向方面的編程)得到了廣泛的應用,我們把它應用到例如列印日誌、許可權控制等各個方面。而在實現AOP的時候,我們一般都藉助於工具,如Spring
Time of Update: 2018-12-03
Groovy探索之反射 我們知道,在Java語言中,我們能夠擷取到Java語言的動態性,主要是通過它的反射機制來實現的。而在Groovy語言中,我們將會有很多方式來擷取它的動態性,比如MOP等等。因此,在Groovy語言中,我們需要在運行期內調用某個方法,將不會使用反射機制,雖然我們仍然能夠在Groovy語言中使用反射機制來達到目的;而是使用MOP機制,或者使用"duck
Time of Update: 2018-12-03
Groovy探索之MOP 十 Interceptor 二 在本系列的《Groovy探索之MOP 九 Interceptor 一》中,我們已經詳細的介紹了一個簡單的攔截器類的方方面面,使得我們初步有了攔截器的基礎。本篇需要在前面的攔截器類的基礎上,進一步用攔截器類來實現我們的AOP編程。首先,我們在本系列的第一篇中,所攔截的方法都是固定的方法。現在,我們需要把它擴充成由攔截器類的使用者來指定被攔截的方法。先還是給出需要被攔截的類來: class Foo {
Time of Update: 2018-12-03
1.靜態IP選路1.1.一個簡單的路由表選路是IP層最重要的一個功能之一。前面的部分已經簡單的講過路由器是通過何種規則來根據IP資料包的IP地址來選擇路由。這裡就不重複了。首先來看看一個簡單的系統路由表。 Destination Gateway Genmask Flags Metric Ref Use Iface192.168.11.0 * 255.255.255.0 U 0 0
Time of Update: 2018-12-03
Groovy Tip 34
Time of Update: 2018-12-03
原貼:http://www.5dlinux.com/article/show.asp?id=5998本文簡要介紹了幾個最佳化 Apache 的技巧,在實戰中十分有用。# 升級 Apache 到最新版本,新版本往往包含效能提升和安全更新。# 在 httpd.conf 中設定 "HostNameLookups off" 能避免針對每個訪問者的 DNS 網域名稱的反向查詢。# 對於繁忙的網站,在 httpd.conf 中設定 "MaxClients 230" 或者更高。 這項設定讓更多的 httpd
Time of Update: 2018-12-03
轉載請註明出處,謝謝~http://blog.csdn.net/shootyou/archive/2011/05/12/6415248.aspx 在一次伺服器異常的排查過程當中(伺服器異常排查的過程我會另起文章),我們決定使用HttpClient4.X替代HttpClient3.X或者HttpConnection。為什麼使用HttpClient4?主要是HttpConnection沒有串連池的概念,多少次請求就會建立多少個IO,在訪問量巨大的情況下伺服器的IO可能會耗盡。HttpClient3也
Time of Update: 2018-12-03
1.UDP簡要介紹UDP是傳輸層協議,和TCP協議處於一個分層中,但是與TCP協議不同,UDP協議並不提供逾時重傳,出錯重傳等功能,也就是說其是不可靠的協議。
Time of Update: 2018-12-03
1.單播,多播,廣播的介紹1.1.單播(unicast)單播是說,對特定的主機進行資料傳送。例如給某一個主機發送IP資料包。這時候,資料連結層給出的資料頭裡面是非常具體的目的地址,對於乙太網路來 說,就是網卡的MAC地址(不是FF-FF-FF-FF-FF-FF這樣的地址)。現在的具有路由功能的主機應該可以將單播資料定向轉寄,而目的主機的網 絡介面則可以過濾掉和自己MAC地址不一致的資料。1.2.廣播(unicast)廣播是主機針對某一個網路上的所有主機發送資料包。這個網路可能是網路,可能是子網,
Time of Update: 2018-12-03
個人整理資料,轉帖註明出處,謝謝~ Nginx介紹和安裝一個簡單的設定檔模組介紹常用情境配置進階內容參考資料 == Nginx介紹和安裝 == Nginx是一個自由、開源、高效能及輕量級的HTTP伺服器及反轉Proxy 伺服器,其效能與IMAP/POP3Proxy 伺服器相當。Nginx以其高效能、穩定、功能豐富、配置簡單及佔用系統資源少而著稱。Nginx 超越 Apache 的高效能和穩定性,使得國內使用 Nginx 作為 Web
Time of Update: 2018-12-03
終於看到了TCP協議,這是TCP/IP詳解裡面最重要也是最精彩的部分,要花大力氣來讀。前面的TFTP和BOOTP都是一些簡單的協議,就不寫筆記了,寫起來也沒啥東西。TCP和UDP處在同一層---運輸層,但是TCP和UDP最不同的地方是,TCP提供了一種可靠的Data Transmission
Time of Update: 2018-12-03
為什麼會有TCP/IP協議在世界上各地,各種各樣的電腦運行著各自不同的作業系統為大家服務,這些電腦在表達同一種資訊的時候所使用的方法是千差萬別。就好像聖經中上帝打亂了各地人的口音,讓他們無法合作一樣。電腦使用者意識到,電腦只是單兵作戰並不會發揮太大的作用。只有把它們聯合起來,電腦才會發揮出它最大的潛力。於是人們就想方設法的用電線把電腦串連到了一起。
Time of Update: 2018-12-03
把這三個協議放到一起學習是因為這三個協議處於同一層,ARP協議用來找到目標主機的Ethernet網卡Mac地址,IP則承載要發送的訊息。資料連結層可以從ARP得到資料的傳送資訊,而從IP得到要傳輸的資料資訊。1.IP協議IP協議是TCP/IP協議的核心,所有的TCP,UDP,IMCP,IGCP的資料都以IP資料格式傳輸。要注意的是,IP不是可靠的協議,這是說,IP協議沒有提供一種資料未傳達以後的處理機制--這被認為是上層協議--TCP或UDP要做的事情。所以這也就出現了TCP是一個可靠的協議,而
Time of Update: 2018-12-03
前面已經提到了訪問一台機器要靠IP地址和MAC地址,其中,MAC地址可以通過ARP協議得到,所以這對使用者是透明的,但是IP地址就不行,無論如何使用者都需要用一個指定的IP來訪問一台電腦,而IP地址又非常不好記,於是就出現了DNS系統1.DNS系統介紹DNS的全稱是Domain Name System。它負責把FQDN(就是以"."分隔結尾的名字)翻譯成一個IP。最初的DNS系統使用的是一個巨大的hosts.txt檔案(很吃驚,用
Time of Update: 2018-12-03
Groovy探索之MOP 十一 運行期內覆蓋invokeMethod 我們很早就會使用Groovy語言的hook,即"invokeMethod"方法和其他的幾個方法。我們會在一個類中實現"invokeMethod"方法,用來指派所有的或部分的在運行期內調用的該類執行個體的方法。這些我們在《Groovy探索之MOP 一
Time of Update: 2018-12-03
1.IMCP協議介紹前面講到了,IP協議並不是一個可靠的協議,它不保證資料被送達,那麼,自然的,保證資料送達的工作應該由其他的模組來完成。其中一個重要的模組就是ICMP(網路控制報文)協議。當傳送IP資料包發生錯誤--比如主機不可達,路由不可達等等,ICMP協議將會把錯誤資訊封包,然後傳送回給主機。給主機一個處理錯誤的機會,這 也就是為什麼說建立在IP層以上的協議是可能做到安全的原因。ICMP資料包由8bit的錯誤類型和8bit的代碼和16bit的校正和組成。而前
Time of Update: 2018-12-03
Groovy Tip 35 Regex 四 我們知道,在Regex中,有一些字串被用來的表達一些特殊的用途。比如,"."代表的是所有的字元;"^"代表的是非;等等。看到這些用法的時候,我們就可以反過來問了,如果"."代表的是所有的字元的話,那麼用什麼來匹配字串中的"."呢?為瞭解決這樣的問題,在Regex中需要用"/"加上原字串來匹配這樣的字元。下面來舉一個例子: println 'a.c' ==~ /a/.c/
Time of Update: 2018-12-03
Groovy探索之MOP 十二