Skip to main content

Posts

Showing posts from 2013

JBoss DataGrid - Client 連接到 Hot Rod Server 存取 Data Grid Cache(快取)

明明說要花點時間寫寫最新的BPM 還有 Switchyard的,可是天不從人願,
老實說,對於Data Grid 小姐本來是是興趣缺缺... 因為我還是喜歡玩系統邏輯跟整合,不過花了時間進去看了一下後,程式魂燃燒,發現其實還滿好玩的. (囧TZ.. 怎麼這麼容易滿足啊...)

(對了,這個demo是需要安裝Maven,請先自己裝好囉~)

好吧,切入正題,為了不讓事情複雜化,JBoss Data Grid 是啥,等我有空再寫一篇,這篇主要做的事情,是要單獨啓動一個Data Grid Server,

1. 啓動JBoss Data Grid Server 兩台,裡面建立一個叫做Book 的 Cache, 把兩台的設定成Cluster。
2. 寫一個Client 去這兩台Server, 透過Hot Rod 存取物件。

如下圖:




要啓動Data Grid 的Server 有兩種方式,

A. 下載Data Grid Server
B. 另外一種就是自己Data Grid需要的JAR檔放到project裡面透過infinispan.xml 的設定啓動。


這次介紹就是Data Grid Server 的設定方式。
==================================================

1, 到Red Hat 網站下載JBoss Data Grid Server (沒有帳號的請自己註冊一個,可以免費試用下載90天喔~)



2. 解壓縮 jboss-datagrid-xx-server.zip 到電腦中的某個目錄下,取名叫datagrid1, 這時你會看到以下的目錄結構。



3. 回到前一層目錄中,進入Standalone 下的configuration 目錄,/xx/datagrid1/standalone/configuration,打開cluster.xml
到裡面,找到 infinispan:server 的subsystem. (這裡就是設定這台Server node 要哪些Cache 的地方。)

<subsystem xmlns="urn:infinispan:server:core:5.3" default-cache-container="clustered">
  .....
</su…

JBoss BRMS - 在 Guvnor 界面拖拉一個人工任務(快速版),(偽)長假申請流程。

這是應觀眾要求寫的,如果漏寫的啥請原諒我,因為我晚上一點才開始寫,已經很累,有點要爆肝的感覺,就先收下吧。

在開始之前,請先確定你的BRMS Server 是安裝OK的。然後使用者資訊也在Server 上都設定成功登入正常。 在Task Server 上也把你的使用者資訊都放置上去了。
(不熟的請去看Admin guide, 不然就等我哪天閒到不行再寫吧。)

登入 http://IP:PORT/jboss-brms之下,我們先建立一個新的Package來放這個Process.

 輸入package name:


這時左手邊就會出現你剛剛建立的package,


 可以開始建立第一個流程拉,到Create New下 ,選擇New BPMN Process


給他一個流程的名字,記得Package 要選剛剛建的那個喔~


稍微等一下,因為瀏覽器要畫出editor,然後在左邊選單選擇Start Events下的Start Event, 然後直接拖拉到右手邊空白的畫布上。.


你就會看到下圖的圓圓開始,選擇它,這時右邊應該會出現一堆可以按的快速建立鈕,請直接按選方形的那個。
 以此類推,在新建的Task 上點選,出現快速建立鈕時再選一次方形的那個。
 接下來我們的流程就要結束了,所以請選擇實心的圓形。
 建立好之後,請按選第一個正方形的Task, 然後把右邊的Proprties 設定頁拉大一點。
 在TaskType 選擇 Script,給他一個Name : Logging

既然是個Logging 的 Script Task, 那就來寫個log 吧,點選下方Extra 的 Script,之後會跳出一個畫面,請在裡面寫上,

System.out.println("Starting A Process");
好,上一個Logging 的Task 已經完成了,請把滑鼠游標點在空白畫上,這時右手邊Properties 會變得比較不一樣,因為已經變成Process Level 的屬性了,請點選Variable Definitions, 我們要來設定這個流程收什麼資料。

因為本小姐很想放個長假,所以,我就定義這個流程叫做長假申請好了,使用者輸入名字想請的假期長度...


以上流程的屬性也設定好了,接下來,就是設定人工流程,請選擇第二的Task, 然後選擇User。


每個人工流…