Time of Update: 2018-12-08
近期將公司的MySQL架構升級了,由原先的一主多從換成了DRBD+Heartbeat雙主多從,正好手上有一個電子商務網站新項目也要上線了,用的是DRBD+Heartbeat雙主一從,由於此過程還是有別於以前的MyISAM引擎的,所以這裡也將其心得歸納總結了一下: 1)MySQL的replication過程是一個非同步同步的過程,並非完全的主從同步,所以同步的過程中是有延遲的,如果做了讀寫分離的業務的話,建議也要監控此延遲時間;
Time of Update: 2018-12-08
在select語句中可以使用groupby子句將行劃分成較小的組,然後,使用聚組函數返回每一個組的匯總資訊,另外,可以使用having子句限制返回的結果集。groupby子句可以將查詢結果分組,並返回行的匯總資訊Oracle按照groupby子句中指定的運算式的值分組查詢結果。 在帶有groupby子句的查詢語句中,在select列表中指定的列要麼是groupby子句中指定的列,要麼包含聚組函數 複製代碼 代碼如下:selectmax(sal),jobempgroupbyjob; (注意max(
Time of Update: 2018-12-08
1. 建立自己的404.html頁面 2.更改nginx.conf在http定義地區加入: fastcgi_intercept_errors on; 3.更改nginx.conf(或單獨網站設定檔,例如在nginx -> sites-enabled下的網站設定檔 ) 中在server 地區加入: error_page 404 = /404.html 或者 error_page 404 = http://www.xxx.com/404.html
Time of Update: 2018-12-08
在javascript中,不需要明確指出參數名,就能訪問它們。如: 複製代碼 代碼如下:function hi(){ if(arguments[0]=="andy"){ return; } alert(arguments[0]); } 用arguments[0]可以訪問第一個參數,如此類推。 利用arguments對象可以實現重載,利用arguments.length可以擷取函數的參數個數,如下: 複製代碼 代碼如下:function hi(){ if(arguments.length==1){
Time of Update: 2018-12-08
$args 此變數與請求行中的參數相等 $content_length 等於請求行的“Content_Length”的值。 $content_type 等同與要求標頭部的”Content_Type”的值 $document_root 等同於當前請求的root指令指定的值 $document_uri 與$uri一樣 $host 與要求標頭部中“Host”行指定的值或是request到達的server的名字(沒有Host行)一樣 $limit_rate 允許限制的串連速率
Time of Update: 2018-12-08
EXTJS GRID 中 單擊行和儲存格獲得行或者儲存格的內容(資料) Js代碼 複製代碼 代碼如下:grid.addListener('cellclick',cellclick); function cellclick(grid, rowIndex, columnIndex, e) { var record = grid.getStore().getAt(rowIndex); //Get the Record var fieldName =
Time of Update: 2018-12-08
在用戶端儲存資料時,我們一般都用cookie(不敏感性資料),但是在用戶端越來越富的今天,cookie可儲存的量(每個域最大4k)實在是小。 在HTML5中有localStorage可使用,但是這就拋棄了IE8-。為了相容,我們可以翻出IE很久以前就搞的一個儲存方法: 給一個元素添加一個特殊的樣式url(#default#userData),之後就可以通過setAttribute和getAttribute來存取索引值對形式的資料了。
Time of Update: 2018-12-08
從文字檔中讀取資料(import) 常用的文字檔:CSV(Comma Separated Values)檔案,即:以逗號分隔的數值 形式如下: [plain] M0001,李剛,1976-01-05,1 M0002,王二,1955-01-15,1 M0003,李四,1967-03-05,1 [sql] LOAD DATA INFILE 'D:/myCodes/test.cvs' INTO TABLE member FIELDS TERMINATED BY ','; -- 注意 test.cvs
Time of Update: 2018-12-08
如果有一個字串 eg: "sun,star,moon,clouds",想要在MS SQL中根據給定的分隔字元','把這個字串分解成各個元素[sun] [star] [moon] [clouds],如何?呢?為此,建立一個Function,代碼如下: 複製代碼 代碼如下:CREATE FUNCTION [dbo].[Split_StrByDelimiter](@String VARCHAR(8000), @Delimiter CHAR(1)) RETURNS @temptable TABLE
Time of Update: 2018-12-08
ADF是oracle提供的一套企業開發的解決方案。 最近做效能測試, 需要擷取當前頁面有多少SQL 查詢,花費多少時間。首先想到的就是常用的log4jdbc 結果 ADF 不支援封裝的驅動。後嘗試在Orace DB 層面上攔截,比較複雜還要設定資料庫連接的sesson屬性,也要修改以後代碼。 ADF 的ViewObjectImp 提供複寫SQL調用的方法,但需要修改已有代碼,最後還是修改ADF源碼來達到不修改已有代碼而擷取到SQL執行時間。 先用改好的adfm.jar 覆蓋已有的,
Time of Update: 2018-12-08
nginx nginx限制ip並發數,也是說限制同一個ip同時串連伺服器的數量 1.添加limit_zone 這個變數只能在http使用 vi /usr/local/nginx/conf/nginx.conf limit_zone one $binary_remote_addr 10m; 2.添加limit_conn 這個變數可以在http, server, location使用 我只限制一個網站,所以添加到server裡面 vi
Time of Update: 2018-12-08
人人用戶端有一個很好的導覽列,如所示,當點擊左側ListView後,選中的一行就會一直呈高亮狀態顯示,圖中選中行字的顏色顯示為藍色(注意:是選中行後一直高亮,而不是只是點擊時高亮),如果再次點擊另外的一行, 則新的那一行就高亮,下面就來實現這個高亮效果的顯示; 剛開始實現的時候,我打算使用ListView的 getChildAt(int pos)方法來實現,結果發現非常的cao蛋,因為ListView本身的原因,當你View
Time of Update: 2018-12-08
最近要在項目中使用Knockoutjs,因此今天就首先研究了一下Knockoutjs的環境搭建,並進行了一個簡單的測試。 首先要到http://knockoutjs.com/index.html下載最新版本的Knockoutjs,筆者這裡下載的是knockout-2.2.0.js。然後建立一個.html檔案,在html文檔中加入以下的語句匯入此js: <script type="text/javascript" src="knockout-2.2.0.js"></script&
Time of Update: 2018-12-08
Nginx代理與負載平衡配置與最佳化 Nginx代理 Nginx從0.7.48版本開始,支援了類似Squid的緩衝功能。Nginx的Web快取服務主要由proxy_cache相關指令集和fastcgi_cache相關指令集構成,前者用於反向 Proxy時,對後端內容來源伺服器進行緩衝,後者主要用於對FastCGI的動態程式進行緩衝。兩者的功能基本上一樣。 Nginx 0.8.32版本,proxy_cache和fastcgi_cache已經比較完善,加上第三方的ngx_cache_purge模組(
Time of Update: 2018-12-08
一個設定檔: 複製代碼 代碼如下:<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6"> <Manager className="org.apache.catalina.ha.session.BackupManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true"
Time of Update: 2018-12-08
因剛接觸VC++的開發,需要對C++一些原理性的東西進行掌握。特別是對源檔案和標頭檔的概念,需要深入對它瞭解: 關於標頭檔和源檔案的分別 首先,我們可以將所有東西都放在一個.cpp檔案內. 然後編譯器就將這個.cpp編譯成.obj,obj是什麼東西? 就是編譯單元了.一個程式,可以由一個編譯單元組成,也可以有多個編譯單元組成. 如果你不想讓你的原始碼變得很難閱讀的話, 就請使用多個編譯單元吧.(一個函數不能放到兩個編譯單元裡面,但兩個以上 就可以分別放在一個單元,也就是cpp裡面)
Time of Update: 2018-12-08
今天想把一個用使用了HttpClient的自動簽到小程式移植到Android上,還好Android的SDK內建了HttpClient的包。翻Android的文檔時發現官方還提供了一個實現了HttpClient介面的AndroidHttpClient,上網搜了下沒發現關於AndroidHttpClient的文章。當然也可以繼續使用DefaultHttpClient,但用為Android定製的AndroidHttpClient自然更好。 下面是2個測試用的HttpServlet: 複製代碼
Time of Update: 2018-12-08
--刪除外鍵 文法:alter table 表名 drop constraint 外鍵約束名 如: alter table Stu_PkFk_Sc drop constraint FK_s alter table Stu_PkFk_SC drop constraint FK_c --添加外鍵 文法:alter table 表名 add constraint 外鍵約束名 foreign key(列名) references 引用外鍵表(列名) 如: alter table Stu_PkFk_Sc
Time of Update: 2018-12-08
單機安裝主要用於程式邏輯調試。安裝步驟基本通分布式安裝,包括環境變數,主要Hadoop設定檔,SSH配置等。主要的區別在於設定檔:slaves配置需要修改,另外如果分布式安裝中dfs.replication大於1,需要修改為1,因為只有1個datanode. 分布式安裝請參考: http://acooly.iteye.com/blog/1179828
Time of Update: 2018-12-08
有關OutputCache的相關資料大家可以查看 OutputCacheProvider OutputCache的一點點認識 ,我們還是複習一下OutputCache內容,OutputCache 的處理是在OutputCacheModule類中註冊ResolveRequestCache、UpdateRequestCache這2個方法,一個 用於擷取一個用於設定緩衝。緩衝內容分為兩部分,一部分為緩衝策略CachedVary,一部分為快取資料CachedRawResponse,一個頁面