image

好久沒在這裡寫技術文件了,因為前陣子比較少有機會帶新人,於是就沒什麼想寫的了。

最新又在公司遇到需要帶的小雞,所以又遇到覺得可以補充的部份,就播個時間來寫一寫。

這次要講的是IDE的Debug模式

基本上IDE裡的Debug模式會有幾個區塊:

  1.  中斷點 (Breakpoints)

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


最近公司的AWS越用越兇,之前用AWS是為了做網站,慢慢地,用AWS是為了大數據,

這次也是AWS的Lambda與大數據的Kinesis結合,因此也踩了不少陷阱,下方來談談這次遇到的事。

情境:

有一堆資料會送從公司送到AWS的Kinesis,然後會觸發Lambda去處理這些資料,將資料解析後,儲存到Database;

這部份全程沒有使用Kinesis的Firehouse,而是由Kinesis直接到Lambda;另外,為了出問題能通知,所以配合CloudWatch的監控與寄信的功能。

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()

因為公司的專案需求,加上公司有培育員工的意義,所以我們有了一個使用Lambda的專案,只不過,這也是我們踏進陷阱的開始。

Lambda的優點我在前一篇文章也有說過了,

  1. Load Balancer(分流)

  2. Auto Scaling(自動成長)

  3. 被駭客攻擊的處理

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


這陣子因為公司的專案,一腳踏入了串流的領域,然後慢慢得就沈下去,很快就開始叫救命了。

因為是公司專案要求,所以第一個「時間有限」,第二個「沒有人教」,講到這,真想發發牢騷了,不過算了,回到正題。

專案的部份使用的串流伺服器是KMS,使用的串流是WebRTC,這些東西對筆者來說,可說是一個全新的領域,所以踏進了很多的陷阱,下方慢慢說來:

  1. Google的recaptcha(判斷是不是機器人)

  2. 品質控制

JAVA Programmer 發表在 痞客邦 留言(2) 人氣()

最近的專案使用了Spring boot,其中有一個需求,是利用指令的方式,得到目前的版本,

因此特別寫了一支Main class,並回傳版本,利用Maven打包後,生成了二個JAR檔,

--
 ├ xxx-1.0-exec.jar
 └ xxx-1.0.jar

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


最近在網路上看到的一個,由 Mircosoft 官方發佈的Window VM檔案,

連結網址:https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/

看了一下,Mircosoft 官方發佈這個東西的原因是為了讓開發人員可以進行 Internet Explorer的測試,

所以可以看到它支援了很多版本的IE,如下圖:

而且它也支援很多版本的VM,如下圖:

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


AWS Security group

廢言

AWS其實本身就算是系統管理的一部份,如果把程式設計師(Programmer)和管理資訊系統(MIS)二邊跟AWS作比較,AWS是偏向MIS那一邊的,

不過在台灣,老闆們才不會管那麼多,只會認為,那個不是你們(Programmer)的專業嗎?所以我們(Programmer)只好鼻子摸摸,自己想辦法處理了。

前面廢話那麼多,其實理由很簡單,因為這個AWS的Security group功能,會牽扯到網路概論,以一個WEB工程師的工作範疇來說,完完全全是MIS要負責的了,

JAVA Programmer 發表在 痞客邦 留言(1) 人氣()


因為最近工作的關係,接觸到Kurento這個服務,這個Kurento的服務是用來當直播使用的其中一種Server,它是一個非常有用的服務,

尤其是當我們想要自己架可以直播用的Server,Kurento是一個很好的選擇,它使用的是GStreamer的串流技術,更詳細的內容大家可以參考它的網站說明。

我們通常的需求不會只有直播就結束,很常的情況是我們必需在直播的同時,加上一些東西在畫面上,例如:文字、時間...等等的畫面處理,

因為我們開發時都是站在巨人的肩膀上,所以不可能從底層將串流轉成一張一張的圖片後,再一張一張的去做圖片處理,最後再轉成串流,

基本上如果你可以達成這樣的功能的話,你應該也不需要看這篇文章了;

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


API Gateway custom authorizer

  這一篇不放在這之前的API Gateway節章,而是額外提出在這裡討論,主要的原因是卡一個Cognito的服務,所以才會在談完Cognito這個服務後才來談。

API Gateway custom authorizer 是什麼

  因為API Gateway本身是對外公開的網址,所以會有一種情況是權限控管的需求,而custom authorizer則是讓使用者可以透過這層控制,讓API Gateway具有權限控管的功能。

建立API Gateway custom authorizer

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


Cognito(使用者管理)

  這一篇要說明的是一個AWS Cognito的系統,這個系統的功能主要是:

跟系統使用者有關的部份(這裡的系統指的是我們要實作的系統,而不是AWS的系統)

這個Cognito幫我們把所有跟使用者有關的後台部份都完成好了,包含使用者註冊、登入、忘記密碼、email認證、簡訊認證...,反正只要跟使用者有關係的,基本上他都幫我們想好了,我們只需要透過API的方式與Cognito串接即可;所以,如果今天我們懶得去實作我們的使用者管理系統的話,我們可以直接借助Cognito的協助,請他幫我們管理使用者。

Cognito的影響與迷思

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


VPC與NAT Gateway

VPC的全名是Virtual Private Cloud,主要的功能是將我們需要的Server設定為一個封閉的區域網路,而這樣做的原因,當然是為了安全性的問題,想像一下,假設有某一台資料庫,它開放給全球的人,只要帳號與密碼正確,誰都可以連進來,和即使帳號密碼正確,但只有某幾台機器可以連進來,那種比較安全?不言而喻,當然是後者,這也是VPC的主要功能。

當建立好一個VPC後,我們可以將多台機器放在這個VPC底下,不過有非常大的情況,VPC內的機器還是需要對外溝通;而在AWS的環境中,VPC內部的機器想要對外溝通時,需要一個對外的IP(EIP)才行,如果我們使用的EC2的服務,當然沒有問題,因為它可以同時擁有VPC下的虛擬IP,並同時擁有對外的EIP,不過如果是使用Lambda的服務的話,那就需要一NAT Gateway了。

NAT的全名是Network Address Translation,主要的功能是連結內部與外部的網路,這樣子的話,區域網路內的服務器,均可以透過同一個對外IP來進行對外部的溝通,這是IPv4當時因為IP數量不足,發展出的一種技術。

VPC與NAT Gateway的免費額度與收費

JAVA Programmer 發表在 痞客邦 留言(0) 人氣()


上一篇談到Lambda無法透過Http的方式直接讓外部呼叫,可是如果我們有這個需求時,那怎麼處理呢?這個時候,我們可以透過API Gateway的方式來處理。

API Gateway簡單得說,就是把一個網址放出來讓使用者可以呼叫,而呼叫後要做什麼,就是另外設定;雖說如此,目前API Gateway只支援下列四種設定:

而本篇主要介紹的,就是Lambda Function。

API Gateway的費用與免費額度

  API Gateway主要是放出網址讓其他人呼叫,所以計費的部份就只有二個部份,一個是呼叫次數,一個是流量大小,除此之外,API Gateway也提供快取功能,不過當然是要額外收費的,所以這邊也不討論;而整個收費方式可參考官網,截圖如下:

JAVA Programmer 發表在 痞客邦 留言(1) 人氣()

Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。