konga新增service和rouce詳解

2021-10-10 14:45:22 字數 2521 閱讀 6648

注意:先有service後,才能建立rouce(可以有多個),包括刪除順序先刪除route,再刪除service。次序問題

1.新增service

是抽象層面的服務,他可以直接對映到乙個物理服務 (host 指向 ip + port),也可以指向乙個 upstream 來做到負載均衡。通俗說,這個service就是後台訪問介面配置。

屬性描述

name(必填)

服務名稱.

tags(可選)

可選地向服務新增標記

url(可選)

將協議、主機、埠和路徑立即設定成簡短的屬性。這個屬性是只寫的(管理api從來不「返回」url)

protocol(必填)

該協議用於與upstream通訊。它可以是http(預設)或https。

host(必填)

upstream伺服器的主機。

port(必填)

upstream伺服器端口。預設為80

path(可選)

在向upstream伺服器請求中使用的路徑。預設為空。

retries(可選)

在**失敗的情況下執行的重試次數。預設值是5。

connect_timeout(可選)

建立到upstream伺服器的連線的超時時間。預設為60000。

write_timeout(可選)

將請求傳送到upstream伺服器的兩個連續寫操作之間的超時時間。預設為60000。

read_timeout(可選)

將請求傳送到upstream伺服器的兩個連續讀取操作之間的超時時間。預設為60000。

如下圖:

新增route

是路由的抽象,他負責將實際的 request 對映到 service

屬性描述

name(可選)

定義名稱

tags(可選)

向路由新增標記

protocols(可選)

這條路線應該允許的協議列表。預設情況下,它是「http」、「https」,這意味著路由接受這兩種方式。當設定為「https」時,http請求會被請求公升級到https。通過表單編碼,符號是協議=http&協議=https。使用json,使用陣列。

methods(半可選)

與此路由相匹配的http方法列表。例如: ["get", "post"].至少有乙個主機、路徑或方法必須被設定。用表單編碼引數是methods=get&methods=options。使用json,使用陣列。

hosts(半可選)

與此路徑匹配的網域名稱列表。例如:example.com. 至少有乙個主機、路徑或方法必須被設定。用表單編碼引數是 hosts=foo.com&hosts=bar.com。使用json,使用陣列。

paths(半可選)

與此路徑相匹配的路徑列表。例如: /my-path.至少有乙個主機、路徑或方法必須被設定。用表單編碼引數是 paths=/foo&paths=/bar. 使用json,使用陣列。

https redirect status code (可選)

當路由的所有屬性都匹配(協議除外)時,即如果請求的協議是http而不是https,則狀態**kong將響應。如果字段設定為301、302、307或308,則位置頭由kong注入。預設為426。

regex priority(可選)

當多個路由同時使用正規表示式匹配某個給定請求時,用來選擇哪個路由解析該請求的數字。當兩個路由匹配路徑並且具有相同的regex_優先順序時,將使用較舊的路由(最低建立位置)。注意,非regex路由的優先順序不同(較長的非regex路由在較短的路由之前匹配)。預設為0。

strip_path(可選)

當通過一條路徑匹配一條路徑時,從upstream請求url中剝離匹配的字首。預設值為true。

preserve_host(可選)

當通過乙個主機網域名稱匹配一條路由時,在upstream請求頭中使用請求主機頭。預設設定為false,upstream主機頭將是服務主機的主機頭。

成功建立後,如下圖:

注意:填寫內容,需要回車鋪助的,一定不能少。否則不會儲存 

測試示例如下:

php fpm新增service服務

nginx通過fastcgi執行php比apache包含php環境有明顯的優勢,最近有訊息稱,php5.4將很有可能把php fpm補丁包含在核心裡,nginx伺服器平台上執行php將更加輕鬆,下面我們就來看一篇php fpm平滑啟動並配置服務例子。我的php是原始碼安裝的。php fpm在php ...

php fpm新增service服務的例子

php fpm新增service服務的例子 nginx通過fastcgi執行php比apache包含php環境有明顯的優勢,最近有訊息稱,php5.4將很有可能把php fpm補丁包含在核心裡,nginx伺服器平台上執行php將更加輕鬆,下面我們就來看一篇php fpm平滑啟動並配置服務例子。我的p...

Service和intentservice的區別

intentservice是繼承service的,那麼它包含了service的全部特性,當然也包含service的生命週期,那麼與service不同的是,intentservice在執行oncreate操作的時候,內部開了乙個執行緒,去你執行你的耗時操作。service中提供了乙個方法 public...