[發(fā)明專利]灰度發(fā)布方法和系統(tǒng)有效
| 申請?zhí)枺?/td> | 201611123903.4 | 申請日: | 2016-12-08 |
| 公開(公告)號: | CN106775859B | 公開(公告)日: | 2018-02-02 |
| 發(fā)明(設計)人: | 俞曉鳴;顧鈺芬;李金龍 | 申請(專利權)人: | 上海壹賬通金融科技有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F9/44 |
| 代理公司: | 廣州華進聯(lián)合專利商標代理有限公司44224 | 代理人: | 謝曲曲 |
| 地址: | 200030 上海市*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 灰度 發(fā)布 方法 系統(tǒng) | ||
技術領域
本發(fā)明涉及計算機處理領域,特別是涉及一種灰度發(fā)布方法和系統(tǒng)。
背景技術
灰度發(fā)布是指在黑與白之間,能夠平滑過渡的一種發(fā)布方式。AB test就是一種灰度發(fā)布方式,讓一部分用戶繼續(xù)用A,一部分用戶開始用B,如果用戶對B沒有什么反對意見,那么逐步擴大范圍,把所有用戶都遷移到B上面來。灰度發(fā)布可以保證整體系統(tǒng)的穩(wěn)定,在初始灰度的時候就可以發(fā)現(xiàn)、調整問題,以保證其影響度。ABtest是依據(jù)系統(tǒng)中配置的分流策略進行分流工作的,在測試階段,如果發(fā)現(xiàn)問題,往往需要在Redis服務器中新增分流策略,而每個分流策略都會對應一個策略解析文件和用戶信息解析文件,由于傳統(tǒng)的分流策略對應的策略解析文件和用戶信息解析文件是存儲在Nginx服務器的內存中的,所以若新增分流策略,則需要將新增分流策略對應的策略解析文件和用戶信息解析文件上傳到Nginx服務器,這個過程中需要重新加載(reload)或重啟Nginx服務器,而重啟Nginx服務器不僅耗時而且十分麻煩。
發(fā)明內容
基于此,有必要針對上述問題,提出一種無需重啟Nginx服務器就可以動態(tài)新增分流策略的灰度發(fā)布方法和裝置。
一種灰度發(fā)布系統(tǒng),所述系統(tǒng)包括:Redis服務器,用于接收上傳的分流策略以及與所述分流策略對應的策略解析文件和用戶信息解析文件并進行存儲,其中,所述策略解析文件和用戶信息解析文件是以字符串的形式進行存儲的;Nginx服務器,用于查找Cache里面是否存在分流策略標識,若不存在,則從所述Redis服務器中預設的位置讀取當前分流策略標識;所述Nginx服務器還用于根據(jù)所述當前分流策略標識查找內存中是否存在與所述當前分流策略標識對應的策略解析文件和用戶信息解析文件,若不存在,則根據(jù)所述當前分流策略標識采用加載字符串的方式將所述Redis服務器中的以字符串形式存在的策略解析文件和用戶信息解析文件通過lua加載到內存中;所述Nginx服務器還用于根據(jù)所述策略解析文件解析出的分流策略進行發(fā)布。
在其中一個實施例中,所述Nginx服務器還用于根據(jù)所述當前分流策略標識查找與該當前分流策略標識對應的策略解析文件ID和用戶信息解析文件ID,根據(jù)所述策略解析文件ID和用戶信息解析文件ID通過加載字符串的方式將Redis服務器中的以字符串形式存在的策略解析文件和用戶信息解析文件通過lua加載到內存中并轉換為Table的形式進行存儲。
在其中一個實施例中,所述Nginx服務器還用于采用所述策略解析文件對相應的分流策略進行解析,解析出分流策略中至少一種參數(shù)信息與轉發(fā)路徑之間的對應關系,并將所述至少一種參數(shù)信息與轉發(fā)路徑之間的對應關系保存到Cache。
在其中一個實施例中,所述Nginx服務器還用于接收客戶端發(fā)送的請求,提取所述請求中的用戶信息,根據(jù)所述用戶信息解析文件中預設的提取方式從所述用戶信息中提取出至少一個參數(shù)信息,將提取出的至少一種參數(shù)信息作為用戶特征,根據(jù)Cache中存儲的至少一種參數(shù)信息與轉發(fā)路徑之間的對應關系確定出與所述用戶特征對應的轉發(fā)路徑,根據(jù)所述轉發(fā)路徑進行對應的轉發(fā)。
在其中一個實施例中,所述Nginx服務器還用于采用所述策略解析文件對相應的分流策略進行解析,解析出對應的百分比策略,根據(jù)所述百分比策略進行對應的發(fā)布。
一種灰度發(fā)布方法,所述方法包括:Nginx服務器根據(jù)預設的規(guī)則定時查找Cache里面是否存在分流策略標識,若不存在,則從所述Redis服務器中預設的位置讀取當前分流策略標識;根據(jù)所述當前分流策略標識查找內存中是否存在與所述當前分流策略標識對應的策略解析文件和用戶信息解析文件,若內存中不存在所述當前分流策略標識對應的策略解析文件和用戶信息解析文件,則根據(jù)所述當前分流策略標識采用加載字符串的方式將所述Redis服務器中的以字符串形式存在的策略解析文件和用戶信息解析文件通過lua加載到內存中;根據(jù)所述策略解析文件解析出的分流策略進行發(fā)布。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海壹賬通金融科技有限公司,未經(jīng)上海壹賬通金融科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611123903.4/2.html,轉載請聲明來源鉆瓜專利網(wǎng)。
- 將發(fā)布數(shù)據(jù)發(fā)布至不同發(fā)布主機的系統(tǒng)及其方法
- 一種技術出版物內容發(fā)布系統(tǒng)及方法
- 音/視頻流發(fā)布方法、流媒體服務器、發(fā)布端及流媒體系統(tǒng)
- 一種分布式代碼版本發(fā)布系統(tǒng)及方法
- 內容發(fā)布方法、裝置、計算機設備以及可讀存儲介質
- 文件發(fā)布方法和系統(tǒng)、發(fā)布服務器和文件生成裝置
- 軟件的發(fā)布質量管理系統(tǒng)、方法以及裝置
- 信息發(fā)布方法、裝置、電子設備及計算機可讀存儲介質
- 信息發(fā)布方法及裝置、存儲介質、終端
- 服務發(fā)布方法及裝置、服務器、存儲介質





