原创 LNMP 安裝配置

主要實現功能是: 1、動態頁面與靜態頁面分離; 2、nginx既可以做靜態網站的負載均衡,同時還可做動態網站的負載均衡 3、在後續工作中可以爲後端服務器跟據需要進行拓展 這是咱們這次的實驗拓撲圖: 準備: sy

原创 lvs命令記錄

watch -d ipvsadm -Ln 命令可以查看lvs現在的鏈接數。 ipvsadm -L --timeout 查看lvs設置的保持連接時間。 var/log/message  保存了lvs的日誌,包括錯誤日誌。

原创 Java設計模式(八)觀察者模式 迭代器模式

(十五)觀察者模式 觀察者模式,定義對象間一對多關係,一個對象狀態發生改變,所有依賴於它的對象都收到通知並且自動更新,觀察者與被觀察者分開。例如郵件訂閱、RSS訂閱,如果有更新就會郵件通知你。 interface Observers{

原创 Apache優化提高併發數量

問題: 我們用lvs做了負載均衡,使用了兩臺服務器做login的服務,以及二次資源下載服務。但是在推廣過程中,陸續有人反映服務器登錄困難。 解決過程: 1、首先我們查看流量日誌以及服務器cpu與內存使用情況,發現每隔一段時間流量以及cpu

原创 Java設計模式(九)責任鏈模式 命令模式

(十七)責任鏈模式 責任鏈模式的目的是通過給予多個對象處理請求的機會,已解除請求發送者與接受者之間的耦合關係。面對對象的開發力求對象之前保持鬆散耦合,確保對象各自的責任最小化,這樣的設計可以使得系統更加容易修改,同時降低產生缺陷的風險。

原创 Java設計模式(十) 備忘錄模式 狀態模式

(十九)備忘錄模式 備忘錄模式目的是保存一個對象的某個狀態,在適當的時候恢復這個對象。 class Memento{ private String value; public Memento(String value){ this

原创 Java設計模式(一)普通工場模式 抽象工場模式

設計模式 設計模式是前人總結的,爲了解決一類問題而總結的代碼設計經驗。最初可能爲了使用而使用,後面就會發現,很多沒想到的問題因爲使用了正確的設計模式已經爲你考慮到了。《design patterns設計模式》這本書是程序員進階必學。 (一

原创 java設計模式(二)單例模式 建造者模式

(三)單例模式 單例模式應該是最常見的設計模式,作用是保證在JVM中,該對象只有一個實例存在。 優點:1、減少某些創建比較頻繁的或者比較大型的對象的系統開銷。     2、省去了new操作符,降低系統內存使用頻率,減輕GC壓力。    

原创 MySQL主從複製、主從複製(異步)、半同步複製、SSL複製

概述     複製通常用來創建主節點的副本,通過添加冗餘節點來保證高可用性,當然複製也可以用於其他 用途,例如在從節點上進行數據讀、分析等等。在橫向擴展的業務中,複製很容易實施,主要表現在在利用主節點進行寫操作,多個從節點進行讀操

原创 Java設計模式(五)外觀模式 橋樑模式

(九)外觀模式 外觀模式爲子系統提供一個接口,便於使用。解決了類與類之間關係的,外觀模式將類之間的關係放在一個 Facade 類中,降低了類類之間的耦合度,該模式不涉及接口。 class CPU { public void startu

原创 Java設計模式(六)合成模式 享元模式

(十一)合成模式 Composite 合成模式是一組對象的組合,這些對象可以是容器對象,也可以是單對象。組對象允許包含單對象,也可以包含其他組對象,要爲組合對象和單對象定義共同的行爲。合成模式的意義是 保證客戶端調用單對象與組合對象的一致

原创 如何方式rm誤操作

--preserve-root 選項 像freebsd, GNU/Linux 這樣的系統都有文件系統根目錄保護機制,如果沒有指定--no-preserve-root參數,GNU rm 將拒絕執行 rm -rf / 這樣致命的指令(嗯

原创 Java設計模式(三)原型模式 適配器模式

(五)原型模式 Prototype 原型模式目的是複製一個現有對象來生成新的對象,而不是通過實例化的方式。原型模式需要實現 Cloneable 接口,覆寫clone方法,複製分爲淺複製、深複製。 淺複製:將一個對象複製後,基本數據類型的變

原创 Java設計模式(四) 裝飾器模式 代理器模式

(七)裝飾器模式 Decorator 裝飾器模式是爲了動態的給一個對象增加一些新功能。裝飾對象與被裝飾的對象需要實現同一個接口,裝飾對象持有被裝飾對象的實例。 interface DecoratorSourceable{ public

原创 Java設計模式(七)策略模式 模板模式

(十三)策略模式 策略模式定義了多個封裝起來的算法,封裝的算法可以相互替換,並且算法的變化不會影響到使用算法的客戶。借用另一位大神的例子。 interface ICalculator{ public int calculate(Str