iT邦幫忙

2021 iThome 鐵人賽

DAY 11
0

今天談點輕鬆的,Genero的 License

Genero Package在銷售上並不是如同 JAVA 般編譯完成就無限使用。也不是跟過往 i4GL 一樣購買一份授權就無限使用。它是一個商業軟件,所以採行的管理規則較嚴格,用多少就需要買多少。本篇章不討論售價,僅討論種類與如何計價。

License 種類

Genero 在不同用途上比需安裝,配置不同的 License。所有License都是程式起來時咬住,執行完成就放開。

授權必須註冊咬住在安裝路徑上。舉凡搬移路徑、更換IP、更換CPU及主板等重要硬體設備,都會造成註冊授權失效,必須通知授權中心重新進行授權,並註冊。

一組正式的License,必須要有序號與金鑰存在才能生效,如下方所示
https://ithelp.ithome.com.tw/upload/images/20210911/20051169DCxLw2CQAP.png

Runtime by seat License執行授權

Runtime by Seat(如上圖)是 FourJs 最基本的授權。在此授權下,無法驅動編譯工具(如 fglcomp、gsform等,但 fglform與 fgllink 仍可使用)。

執行時若 開啟畫面、或啟動WEB Service、驅動extension package時 ,系統會依據客戶端與位置(IP+PORT)的不同扣 U 數。扣到購買數量不足時,系統會提報『User Limited』顯示用戶數已滿,需等待有人離線或增加 License。

也就是說,若同一台PC起多個客戶端,且設定使用不同 port,則該電腦就會占用多組License。因此請特別關注用戶的使用情況,以避免 License 在不預期的狀況下浪費。

偶有發現使用時會微微超出購買量不等的狀況,此為 FouJs的一種保護機制。系統對於部分網路較慢的環境時,為保障用戶的足額使用權利,避免因為回收時間過久造成用戶權益受損,會視情況容許超量 1-2U 應用。此部分不應在採購時列入估算,造成誤解。

Runtime by CPU 執行授權

https://ithelp.ithome.com.tw/upload/images/20210912/200511693J09RjOp4o.png
功能與 Runtime by seat相同,只是計算上是用虛擬 CPU (vCore)來記述的。FourJs 的政策是vCore 有多少核就應該買足多少顆 CPU License。買齊了之後就可無上限的使用。

若購買的數量小於核心數,則計算時將以每個 License相等於 **『購買數量 25倍』processes 的 ** 折算方式進行。只是使用這種方式時,不存在緩衝區間。

Compiler/Development License編譯授權

在此授權下,包含編譯、執行、列印報表等所有事項均可執行。功能最齊全,但是售價也最高。由於編譯的時間很短 (編譯哦,不是開發) ,所以此類貴森森的License其實買一個全部人一起用也就可以了。
https://ithelp.ithome.com.tw/upload/images/20210912/20051169kfmCnMj5Hp.png
『可是執行Studio時可能一邊編譯、一邊測試執行?』
那就要做好 License的配置與管理呀,只要在編譯用的工具上附帶 Compiler License就可以了。

FourJs License Managerment FLM套件,共享 License

如前段所說,一般安裝後,都將Licesne直接設定於 FGL安裝路徑下。但這樣對系統管理來說會非常痛苦。因為可能會有FGL升級、移位等需求,就會持續不斷的申請重新註冊。

且若臨時想要切換使用主機,由於License被綁定在原主機上,就會很難處理 (要開放重新註冊)。

因此建議採用 FLM 套件協助License的『管理與發配』。

安裝後,即可在 FLM 上進行 License註冊,然後再將FLM安裝主機的 IP 與 FLM執行 port(預設為6399)提供到 AP主機上註冊使用。多台主機或安裝路徑可以分享 FLM 上的License,使用完畢時License即退還 FLM 保管到分出。(如上方範例,都有帶上 FLM Server IP 與 FLM通訊 PORT( default:6399)

License套件三兄弟:flmprg / fglWrt / greWrt

https://ithelp.ithome.com.tw/upload/images/20210912/20051169t3jWcwpL4u.png

若有使用 FLM套件,則要特別注意另外散在 FGL套件內的fglWrt ,與在 GRE套件中的 greWrt 兩隻工具。這三兄弟其實是一體的,當決定了之後,必須查看一下這三兄弟版本號是否一致。若不一致時要記得更正成為一致。

當不一致時,License服務會出現溝通異常失敗的情況,造成系統無法使用。

三者要操作時,參數都是一致的,以 fglWrt 為例,簡單說明一下操作參數

fglWrt -h
Usage  : fglWrt [options]
 -l          : 安裝 License
 -v|-V       : 顯示版本號
 -u          : 刷新線上操作人 (由FLM逐一發出確認指令,刷新使用列表)
 -a opt      : 帶入下面參數列出系統現在訊息
               cpu          : 查看 CPU數量
               info license : 查看 License註冊狀況
               info stat    : 查看本機統計值
               info users   : 查看線上用戶細節資料 (IP/PORT/MAC與執行程式等)
 -x, --kill-session pid : 刪除指定 PID 占用license的狀況

最多運用的就是 info license 與 info users,可簡易查到現況用量。
https://ithelp.ithome.com.tw/upload/images/20210912/200511699K1PFrOFXB.png

License 使用宣告(設定檔)

License若配置在 FLM 上做共享,則從 Genero 1.X 到 3.X 都需要在 FGLPROFILE中做對應的設定,

# Name of the machine where the licence service runs. This entry is
# mandatory if you want to use the license server.
#
flm.server = "<hostname>"
flm.service = 6399                    #使用通訊port (預設值)
flm.check = 10                        #每個用戶最多被檢查幾次 (optional)
flm.ping = 5000                       #預設 3000ms (optional)
flm.license.number = "XXX#XXXXXXXX"   #License號碼
flm.license.key = "XXXXXXXXXXXX"      #License金鑰

配置可參考上方設定,將欲採用的 License 設定在單一的 fglprofile檔案內,例如 fglprofile.cpu / fglprofile.dev 等等。提供用戶操作或系統開發時使用。

透過仔細觀察 License,進而就能掌握到用戶的操作習慣,據以判斷不好的地方予以改進。若有不足盡快採購補滿,這樣就容易維持系統可平順被使用。

註:可指定環境變數 FGLPROFILE 指向所內含有需要使用的 fglprofile.X 檔案


上一篇
[FGL] OPEN WINDOW WITH 畫面檔
下一篇
[FGL] 吸星大法 - IMPORT之 1: 使用extension擴展功能
系列文
Genero Packages - 可接替4GL的LowCode商業語言32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
hjwang65
iT邦新手 4 級 ‧ 2021-10-07 14:04:23

上方標註 『若購買的數量小於核心數,則計算時將以每個 License相等於 Runtime Seat 100U的折算方式進行。只是使用這種方式時,不存在緩衝區間。』並未說明清楚是 4CPU license 的模式。

依據原廠 https://4js.com/ask-reuben/ig-61/
應該修正為 則計算時將以 CUP總授權執行數量 相等於 25倍 CPU購買個數。
範例使用 4CPU x 25倍 約當於 100個 processes.

0
bill0105
iT邦新手 5 級 ‧ 2021-12-11 23:36:35

請教您,要下什麼指令指才會出現 License Key那行?
以下指令只有出現:License
fglWrt -a info license
License : xxxxxxx

hjwang65 iT邦新手 4 級 ‧ 2021-12-14 11:49:17 檢舉

應該 fglWrt -a info license 都會有的,若沒有的話是否再確認一下版本 (fglWrt -V)
https://ithelp.ithome.com.tw/upload/images/20211214/20051169hnPjgmPmSI.png

我要留言

立即登入留言