發表文章

用docker安裝zookeeper

圖片
第一步:首先下载Zookeeper的image檔案 從docker pull 這個zookeeper镜像: docker pull jplock/zookeeper docek images   -->查看image是不是有下載下來 第2步:啟動image docker -d -p 2181:2181 imageID(剛剛上面LIST出來的image ID) docker ps -a   -->查詢docker執行的IMAGE 記得CONTAINER ID 第3步:進入容器環境中 docker -exec -it CONTAINER ID(剛剛查詢的) /bin/bash (進入容器的目錄) 第4步:修改zooKeeper的config文件  ;/opt/zookeeper/conf/zoo.cfg         vi conf/zoo.cfg 如上圖所示,在clientPort=2181下面增加一行:server.1=127.0.0.1:2888:3888 每個機器使用三個PORT,分别是 clientPort:2181; port:2888; port:3888。其中2888 port是進行leader選擇的port,而3888port則是组成ZooKeeper服务機器之間的通信port。 建立data目錄(在dataDir=/tmp/zookeeper目錄下) 以及一个myid文件。 vi myid 然後在myid裡面输入一個1,然後存檔。1就是id的值。 最後重新啟動 zkServer.sh 就安裝好了。 bin/zkServer.sh restart 出現上面的Starting就已經啟動完畢 另外一定要注意的是:zookeeper使用的PORT有2181,2888,3888 所以要在centos7中開啟这些PORT 首先exit命令退出容器; 開啟port,下面三行命令必需是手動輸入 firewall-cmd -–zone=public –-add-port=2181/tcp –-permanent  firewall-cmd -–z...

新增的網頁要讓SEACH ENGER立即找到

圖片
可至www.google.com/webmasters/tools   去做新增的動作

java pdf merger合併使用PDFBox

元件download位置:https://pdfbox.apache.org/ import org.apache.pdfbox.multipdf.PDFMergerUtility; if (fileEntry.getName().indexOf(ymd) > -1) {                                                 combinePdf(sourcePath + "//" + fileEntry.getName(), destPath + "//" + fileEntry.getName() + "//");                     }  public static void combinePdf(String sourcePath, String destPath) {         try {             PDFMergerUtility mergePdf = new PDFMergerUtility();             String folder = sourcePath;             File _folder = new File(folder);             File[] filesInFolder;             filesInFolder = _folder.listFiles();   ...

SQL server 重建INDEX

出處來源: http://blog.miniasp.com/post/2009/01/18/Let-SQL-Server-Tell-You-Which-Indexes-to-Rebuild-or-Reorganize.aspx 執行以下命令會把需要重建的INDEX列出來,再根據列出來的命令去執行重建即可 SELECT 'ALTER INDEX [' + ix.name + '] ON [' + s.name + '].[' + t.name + '] ' + CASE WHEN ps.avg_fragmentation_in_percent > 15 THEN 'REBUILD' ELSE 'REORGANIZE' END + CASE WHEN pc.partition_count > 1 THEN ' PARTITION = ' + CAST (ps.partition_number AS nvarchar( MAX )) ELSE '' END , avg_fragmentation_in_percent FROM sys.indexes AS ix INNER JOIN sys.tables t ON t.object_id = ix.object_id INNER JOIN sys.schemas s ON t.schema_id = s.schema_id INNER JOIN ( SELECT object_id , index_id , ...

查詢SQL SERVER 缺少INDEX的命令

-- 查詢缺少INDEX的命令 SELECT DatabaseName = DB_NAME(database_id) ,[Number Indexes Missing] = count(*) FROM sys.dm_db_missing_index_details GROUP BY DB_NAME(database_id) ORDER BY 2 DESC; -- 查詢缺少INDEX的項目 SELECT TOP 10 [Total Cost] = ROUND(avg_total_user_cost * avg_user_impact * (user_seeks + user_scans),0) , avg_user_impact , TableName = statement , [EqualityUsage] = equality_columns , [InequalityUsage] = inequality_columns , [Include Cloumns] = included_columns FROM sys.dm_db_missing_index_groups g INNER JOIN sys.dm_db_missing_index_group_stats s ON s.group_handle = g.index_group_handle INNER JOIN sys.dm_db_missing_index_details d ON d.index_handle = g.index_handle ORDER BY [Total Cost] DESC; 查出缺少的INDEX建議後,用下面的命令建立INCLUDE( 涵蓋索引 ) create index  idx3  on  Person.Person(MiddleName,EmailPromotion) include (FirstName,LastName,Title,PersonType) equality_columns用法 CREATE NONCLUSTERED INDEX IX_dbo_My_Table__Float_Filtered ON dbo . My_Table ( my_...

gitlab ce安裝 CENTOS7

1.安裝和配置必要的依賴關係     sudo yum install curl policycoreutils openssh-server openssh-clients sudo systemctl enable sshd sudo systemctl start sshd sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix sudo firewall-cmd --permanent --add-service=http sudo systemctl reload firewalld 2.download gitlab package 和安裝 curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash sudo yum install gitlab-ce 3. Configure and start GitLab sudo gitlab-ctl reconfigure 安裝完後,本機可用瀏覽器127.0.0.1測試是否連上,第一次會要求設定root的登入密碼 參考來源: https://about.gitlab.com/downloads/#centos7

linux定時執行程式crontab 指令範例

crontab -e  編輯排程 (edit cron) crontab -r  移除排程 (remove cron) crontab -l  顯示目前排程 (list cron) crontab -u  改變排程的執行身分: crontab -u user filename Crontab 語法介紹 分鐘 小時 日 月 星期 執行身份 指令 0~59 0~23 1~31 (29,30) 1~12 0~6 0是星期日,6是星期六 帳號 /usr/bin/xxxx Crontab 範例 每5分鐘執行一次 */5 * * * * root /usr/libexec/atrun 每5小時執行一次 * */5 * * * root /usr/libexec/atrun 1至20號每天執行一次 0 1 1-20 * * root /usr/libexec/atrun 當分針移到第5分時,執行此 cron 5 * * * * root /usr/libexec/atrun 當時針移到1點 1 分時,執行此 cron 1 1 * * * root /usr/libexec/atrun 每週一的1點1分,執行 1 1 * * 1 root /usr/libexec/atrun 2月29日時針到1點1分,執行  1 1 29 2 * root /usr/libexec/atrun 8點到16點每5分鐘執行一次 cron */5 8-16 * * * root /usr/libexec/atrun 設定檔放在  /var/spool/cron   按照USER命名檔案,如有需要備份,把這裡的檔案COPY出去即可。 特殊排程規則 crontab  除了以標準的格式撰寫排程工作之外,他也有提供幾個常用的特殊排程規則,這種特殊排程規則都以  @  開頭,以下是每個特殊排程規則的說明: 排程規則 說明 @reboot 每次重新開機之後,執行一次。 @yearly 每年執行一次,亦即  0 0 1 1 * 。 @annua...