網址的編解碼 取得連結 Facebook X Pinterest 以電子郵件傳送 其他應用程式 11月 18, 2015 對於網址列的編解碼,常常困擾我,總是得找工具程式來編解碼,例如 若是有個須要下載的檔案 "下載檔案.pdf" 就要想辦法轉成 "%E4%B8%8B%E8%BC%89%E6%AA%94%E6%A1%88.pdf",以保證所有的瀏器都能夠下載。 有時候我也會從別人的網頁中抓取一些檔案來下載,碰到上述編碼過的網址,就得想辦法還原出原來的檔名,所幸網路上已經有人提供了好用的工具,讓我們可以直接線上手動轉換各種編碼。 因為經常要用的緣故,所以還是得改寫成Java 代碼 注意: + (加號) 在古老的瀏覽器或處理程式代表%20(空白),若是您會處理到這類網址(例如這個網頁內用+代替空白),請不要忘了要先把 + 轉換成 %20 取得連結 Facebook X Pinterest 以電子郵件傳送 其他應用程式 留言
企業人員的統一管理-FreeIPA學習筆記 10月 02, 2016 從FreeIPA的 首頁 來看,她想要解決識別、方針(Policy)管理與微軟的AD相互信任的目標。 識別其實是為了能夠做到單一簽入(SSO,Single Sing On),從另一個角度來看就是人員的統一管理,實際上很難,在Web不盛行的時代,還可透過Kerberos( 解說 )來做到Desktop Single Sing On 或LDAP(UNIX BASE)做到統一帳號管理 ,從而達成所有主機人員權限的統一管理,但Web就不容易了,因為瀏覽器沒有規定一定要支援Kerberos(Firefox除外,Firefox可 支援Kerberos 以 存取FreeIPA的WebUI ),所以要在瀏覽器做到SSO,大概的方式不是透過SAML就是透過OpenID, 好在FreeIPA 支援SAML (透過 IPSILON )與 OpenID (因為我用的開發工具是JAVA,所以開發過OPENID的 範例 ,不要與OAuth搞混了,SSO是從上而下的管理管理眾人,而OAuth是由客戶決定其它站台是否可以存取我的個人資料,是由下而上的管理)。 方針(Policy)管理則是限制用戶什麼可以做,什麼不可以做。主要控制的是Linux系統,像SUDO、Autofs等;至於對Window與AD的整合,老實說因為我不懂AD,所以不知道FreeIPA在這方面可以做什麼? 所以對我來說,FreeIPA至少是一個提供企業一個統合管理人員識別的好地方(企業內的人員因為多系統而儲存於不同的資料庫,在管理上其實是不太方便)。 FreeIPA同微軟的AD一樣,都是目錄服務提供者,說穿了,目錄服務就是扮演了資料庫的角色,只不過這個資料庫可以在不同機器間複製罷了。FreeIPA跟AD一樣,可以設定管理DNS,我的建議是一定要裝,做為企業內部的DNS,便於內部系統程式使用名稱取代IP。不過需要注意的是:FreeIPA經安裝後會mask掉原本的named service,改用她所提供的named-pkcs11 service,不過她也說了 bla,bla... ,不要用ACL與VIEW。 IPA的術語有三個: Server:FreeIPA的管控主機,第一個建立的也稱master(可建立別台主機為replica) Replica:也是FreeIPA的管控主機,從另一臺master Ser... 閱讀完整內容
證交所最佳五檔的程式解析 7月 17, 2015 註: 2018/11/29,發現已經無法一次查詢多個代號,只能迴圈一個一個查。 今天是2017/1/16,一早發現網址又改,原來第3第4點的 getSTKInfo.jsp 改成 getS tock Info.jsp? ,而且也把json亂數表頭的方式移除,已緊急改程式了,請重新 下載程式 ( 程式碼在此 ) 2018/8/23,一早發現必須透過getStockInfo.jsp才是取得Session的地方,所以修改下面第一點 首先我要說明一下現在的日期是 2017年1月,因為 證交所最佳五檔的程式 的規則有時會變動,不見得適用未來的日子。 證交所提供了股票即時 最佳五檔 的網頁,供一般民眾查詢(但我相信,會觀注的多半是碼農,從 最佳五檔 的網址,它主要的Host是 mis.twse.com.tw ,這是我們要注意的第一個點,透過 dig command ,我們可以發現twse.com.tw網域用了4台DNS主機來應付輸詢,這也是我要提的第一個建議: 若不是用瀏覽器執行JavaScript程式 URL直接採用網址IP連結,不要使用mis.twse.com.tw網域,輸詢太多次會卡住,且若每次輸詢結果不一致時,會導致Session遺失 再來針對它的程式設計加以說明: 先說一下,用網頁查詢的網址格式是 http://mis.twse.com.tw/stock/fibest.jsp?lang=zh_tw&stock={代號} ,在瀏覽器下通常 lang=zh_tw 參數會被省略,但是程式設計時,請不要忘了要加上去。這是最重要的一個關鍵,因為我們必須在這頁取得Session(並且要保留),否則後面的資料存取將無以為繼,所以若是以程式要取得Session的第一件事就是連到 http://mis.twse.com.tw/stock/fibest.jsp?lang=zh_tw 我們取得這個網頁只是為了取得Cookie ,但現在除了這個功能外,還必須取得網頁並分析其中的3個Function:rA1()、rA2()與rA3(),因為後續取得的JSON屬性表頭不再是固定的字串,而是隨機定義在這三個函數內,我們必須透過分析JavaScript以瞭解JSON內容每個項目所代表的意義,取得範例的部分內容說明如下: 在以往,我們取得這個網頁只能... 閱讀完整內容
Postgresql HA 6月 22, 2018 關於Postgresql HA,建議閱讀 這篇文章 ,摘要如下: Standby databases 主要資料庫的備分,有著與主要資料庫相同的資料,以備意外發生。 以複製方式分類 Physical standbys :硬碟區塊複製 Logical standbys :變動資料串流複製 以transaction同步分類: 異步 :可能會掉資料 同步 :不可能掉資料,master會等待standby複製完成通知 以用途分類 Warm standbys :standby機不提供連線 Hot standbys :standby機提供唯讀查詢連線 叢集 多個主機視為一體,叢集規模可調整,任一節點掛點不影響作業,依資料共用可分類如下: Shared-storage :所有節點共享資料 Shared-nothing :每個節點有自已的儲存,所以不一定會資料相同 然後是我比較關注的免費產品介紹: Ruberep 異步、多master與多平台解決方案,適用於Postgresql與MySQL,奠基於trigger,不支援DDL、User與Grants Pgpool II 是個中介軟體。主要功能如下: Connection pool Replication Load balancing Automatic failover Parallel queries Limiting Exceeding Connections Bucardo 描述功能看起來很強大,但缺點也不少,暫不考慮 PostgresXL 只能用一個awesome形容,PostgressXL屬於企業集架構的大型叢集,前身是 Postgres-XC ,功能強大, 效能卓越 ,但因為採用shared nothing、分散式表格儲存(也就是多筆資料會分別儲存到不同節點,所以她的查詢是採平行處理,速度快,但也就是節點要比較多),成本相對也不便宜。 這裡有人做了個 Lab 可以參考。 另外Postgres官方也列出了各種HA,Load Balance與複製方式的 比較表 : 看起來pgpool-II是個不錯的選擇,以下是個合適的架構 pgpoo-II有多種 ... 閱讀完整內容
留言
張貼留言