關於網路那些事...

Marketing, SEO, Web trends, Programming tutorial, Web design, and Life event...

Docker - 執行 Nginx Webserver

執行 Nginx Container -d 表示在背景( Detached )執行,Docker 預設前景( foreground )執行 -p 表示將本機 8080 port 的來源轉發到 container 的 80 port –name 表示為 container 的名稱 –rm 表示當 exit container 時,會移除 container( incompatible with -d )

Continue Reading

Docker - MAC安裝與執行 Hello World

Docker 在 Mac 環境可以直接透過 Install Docker for Mac 來安裝

前往 Docker for Mac 下載 Docker.dmg 執行安裝

檢查版本

透過下列方式來檢查 docker 版本,確定安裝完畢

docker --version

docker-compose --version

docker-machine --version

Continue Reading

Docker - Remove all images and container

Delete all docker containers docker rm $(docker ps -a -q) Delete one containers by name docker rm mycontainername Delete all docker images docker rmi $(docker images -q) Delete images by name

Continue Reading

Docker - 常用指令介紹

##【 Docker 】

關閉 Docker

docker-compose down

【 Container 】

建立container

docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]

OPTION:

-d 表示在背景( Detached )執行,Docker 預設前景( foreground )執行

-p 表示將本機 8080 port 的來源轉發到 container 的 80 port

–name 表示為 container 的名稱

–rm 表示當 exit container 時,會移除 container( incompatible with -d )

Continue Reading

Redis - PUBSUB、PUBLISH 介紹

Redis - PUBSUB、PUBLISH 介紹 PUBSUB 查詢訂閱狀態與發佈系統的狀態 > PUBSUB xxxchanne PUBLISH 將訊息發送到指定的 channel > PUBLISH xxxchanne "Message Say Hi"

Continue Reading

Redis - SUBSCRIBE、PSUBSCRIBE、UNSUBSCRIBE、PUNSUBSCRIBE 訂閱功能介紹

Redis - SUBSCRIBE、PSUBSCRIBE、UNSUBSCRIBE、PUNSUBSCRIBE 訂閱功能介紹 SUBSCRIBE 訂閱 Subscribe 允許 client 端訂閱一個或多個 channels > SUBSCRIBE channel [channel ...] 當 client 端 subscribe 某個 channels 之後, 除了subscribe相關指令(subscribe, psubscribe, unsubscribe, punsubscribe ), 一律不允許使用其他 commands

Continue Reading

Redis - pipeline 簡介

Redis - pipeline 簡介 Redis client 每次發送一筆 command 都會經過 發送命令> 命令列隊(排隊)> 執行 > 返回結果 ,這期間所需要的時間,就稱為RTT(Round Trip Time, 往返時間) Redis 通常可以執行在微秒等級,但是在不同網路環境,就會因網路本身的傳輸限制而有所差異,因此才有Redis 性能瓶頸就是網路 一說 pipeline 可以將多筆資料同時發送出去, 如果不使用 pipelining,每一個command 從訪問資料結構、取得回覆,看起來耗費的流量都非常小, 但對於 socket I/O 而言,每個訪問都執行一次comman,占用的效能成本就相當大

Continue Reading

NEW FIX 4.4 電文說明

NEW FIX 4.4 電文說明 台灣證券交易所規範了FIX通訊協定作業平台,簡稱FIX 證交所TCP/IP資訊網路透過MPLS架構,讓證交所與每個券商主機之間都設定了點對點固定IP VC(Virtual Circuit)連線 通常發起端為證券商,建立連線之後傳送登入訊息讓證交所驗證, FIX協定為非同步傳輸方式,可連續傳送委託單 基本介紹如下: FIX 組成 FIX tag 組成包括: Header 表頭 Body 訊息內容 Trailer 表尾 Header 固定開頭為: 8=FIX.4.4<SOH> Body 是要傳送的內容,基本格式為: Key=Value<SOH>.... Trailer 結束使用的格式為: 其中 nnn 是透過 CheckSum 計算出的數值

Continue Reading

16 進位簡介

16 進位簡介 電腦世界處理的基礎是 0 跟 1,我們稱之為二進位(binary) 二進位可以在組成十進位 0~9 不同的系統或程式對於十六進位都有不同的描述方式,但是基本概念如下: 十六進位則是由 0~9 A~F 組成 十六進位剛好是 4^2 ,轉二進位相當容易 例如: 二進位 01011110101101010010 可直接轉十六進位 5EB52 另外是 Byte 共 8 Bit 其中將 4 個 Bit 剛好可儲存一個16進位

Continue Reading

ASCII 編碼說明

ASCII 編碼說明 ASCII(American Standard Code for Information Interchange,美國標準資訊交換碼)是由美國國家標準局(ANSI)訂定的字元標準 並且已經被國際標準組織(ISO)公認為國際標準,現今多數語系編碼都會都會參考 ASCII 的格式 接下來介紹如何從2進位轉10進位來取得參照值 1 Byte = 8 Bit 每一個 Bit 都可以存取一個二進位 (即 0, 1) 可以試想,1Byte提供了8個空間 [][][][][][][][] ,每一個空間都可以塞一個2進位值,例如: [0][0][0][0][0][0][0][0] 接下來,計算從2進位轉10進位方式: 例如 n 表示為 0或1

Continue Reading

資料傳輸方式

資料傳輸方式紀錄 資料傳輸常見Json, XML 的方式傳送,但這裡我們要說明的是在細節一點的格式傳輸方式 Byte 格式傳輸 一般各種格式的資料,傳輸前都必須轉為 byte 格式 例如,數字、字串… 轉為 byte ,再用 byte 格式傳送 FIX/Fast 資料格式傳輸 證券即時行情、各類統計資訊傳輸,都相當要求速度及品質 因此國內證交所即採用 FIX(Financial Information eXchange) 傳輸協定搭配FAST資料流壓縮技術,來達到一定的效率 例如,證交所資料伺服器(MDS, Market Data Server) 主要負責Fix/Fast資料處理 處理後會透過內網分送到不同 VM DAP-RT (Data Access Point Real-Time)

Continue Reading

C# 進位制及轉換說明

C# 進位制及轉換說明 二進位 二進位 (binary, bin) 主要由 0, 1 構成 十進位 十進位 (Octal, oct) 即 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 十六進位 十六進位 (Hexadecimal, hex) 即 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Continue Reading

C# - AutoResetEvent 與 ManualResetEvent 控制執行緒暫停及恢復運作

C# - AutoResetEvent 與 ManualResetEvent 控制執行緒暫停及恢復運作 C# 有兩個類別可以用來調控執行緒 AutoResetEvent ManualResetEvent WaitOne 暫停執行緒 AutoResetEvent.WaitOne 方法可以讓執行緒進入 Join (WaitSleepJoin) 暫停狀態 Set 繼續執行緒動作 AutoResetEvent.Set 方法可以讓暫停狀態的執行緒恢復運作 ManualResetEvent 則需要呼叫 .Set 與 .Reset 這裡舉例,在 A B 兩個任務類別中

Continue Reading

C# 網路連線檢查

C# 網路連線檢查 C# 可以實作 ping 網路連線檢查 實作方式如下: class Program { static void Main(string[] args) { //INIT PING OBJECT System.Net.NetworkInformation.Ping objPing = new System.Net.NetworkInformation.Ping(); //設定測試連線及逾時時間 System.Net.NetworkInformation.PingReply PingResult = objPing.Send("www.google.com.tw", 5000); //取得結果 string pingMsg = (PingResult.

Continue Reading

C# Thread 執行緒

C# Thread 執行緒

程式都會有一個主處理序

例如,在同一個主處理序,可能同時會需要送出多筆訂單、讀取大型檔案等項目要排隊

在這主要的處理序,可以額外建立新的執行緒,可以將指定的任務交給新的執行緒獨立處理

通常,需要長時運算、 等待回應的流程,就會透過建立新的執行緒來獨立運算,避免影響到其他流程

Continue Reading

MAC 與 Linux 安裝 composer 方式

這裡記錄幾種安裝composer的方式

  • 官方安裝方式說明
  • brew安裝方式

Composer 官方

透過下方幾個指令,安裝 composer.phar 到本機

Continue Reading

MAC 如何升級PHP版本

通常,MACOS Sierra都會預設安裝PHP5.6版本 這裡針對升級到更高階PHP版本流程進行說明: 可以透過brew 或者 curl 兩種方式來安裝 Brew brew update && brew upgrade brew tap homebrew/dupes brew tap homebrew/versions brew tap homebrew/homebrew-php brew unlink php56 brew install php72 (如果要從7.1升級到7.2,作法如下:) brew tap homebrew/homebrew-php brew unlink php71 brew install php72 brew install php72-xdebug 在這過程中,如果php5.

Continue Reading

Facebook 宣布將重構 React Native 專案

React Native 官方在6/14發布一則訊息 為了使React Native更輕量化並更好地適應現有的應用程式,官方正式宣布,正式啟動重構專案

React Native 每天都在更新,在去年有超過500個開發者貢獻了超過2500次提交。

在過去的5年中,發現最初的原則,造成了後續維護上的難處,並且無法靈活的與其他本地API溝通。因此,他們已經開始研究React Native的大規模重構方式,希望能讓架構更加靈活,並更好地支援JavaScript與本地API集成。

Continue Reading

ASP.NET C# - 產生 GUID

C# 產生 GUID C# 如何產生 GUID? 可以直接透過內建方法,產生 GUID: Guid guid = Guid.NewGuid(); MessageBox.Show("GUID1:"+guid); guid = Guid.NewGuid(); MessageBox.Show("GUID2:"+guid); guid = Guid.NewGuid(); MessageBox.Show("GUID3:"+guid);

Continue Reading

Winforms C# - 透過 panel 清除表單內容

Winforms C# - 透過 panel 清除表單內容

Panel 通常會使用 Control 來控制內部元件,例如:

MainPanel.Controls.Find("TGNAME", true)[0].Text

這裡說明如何透過 panel 來清除表單群組,

製作一個清除欄位內容(TextBox, CheckBox, RichTextBox, ComboBox, MaskedTextBox) 的方法

Continue Reading