版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
企業(yè)調(diào)研報告調(diào)研題目:關于API網(wǎng)關監(jiān)控開發(fā)技術的調(diào)研目錄TOC\o"1-5"\h\z\o"CurrentDocument"一、 調(diào)研的目的 2\o"CurrentDocument"二、 調(diào)研的意義 2\o"CurrentDocument"三、 調(diào)研報告主體內(nèi)容 3\o"CurrentDocument"1、企業(yè)方面 31.1公司概況 3\o"CurrentDocument"2、軟件開發(fā)方面 3\o"CurrentDocument"2.1如今軟件開發(fā)的發(fā)展及現(xiàn)狀 3\o"CurrentDocument"2.2公司開發(fā)管理 4\o"CurrentDocument"2.3開發(fā)準備工作 4\o"CurrentDocument"2.4開發(fā)任務處理流程 5\o"CurrentDocument"2.5常用的工具 8\o"CurrentDocument"2.6API網(wǎng)關監(jiān)控開發(fā)功能及技術點 9四、 調(diào)研結論 13\o"CurrentDocument"五、 調(diào)研對畢業(yè)設計的幫助 13\o"CurrentDocument"六、 意見與建議 14、調(diào)研的目的本次關于API網(wǎng)關監(jiān)控開發(fā)技術調(diào)研的目的:1、 了解、學習API網(wǎng)關監(jiān)控中功能開發(fā)的相關方法知識,體會API網(wǎng)關監(jiān)控的知識在實踐中的應用。2、 了解公司軟件系統(tǒng)開發(fā)的流程,學習公司軟件的管理制度。3、 學習并了解開發(fā)工作的工作范圍、開發(fā)功能的規(guī)范準則。二、調(diào)研的意義深入探究公司開發(fā)任務發(fā)展狀況,結合公司和自身客觀的分析了解軟件開發(fā)的流程,軟件開發(fā)涉及到的技術。幫助自身掌握及增強開發(fā)技術,提前學習并制定計劃,主動調(diào)整開發(fā)任務。通過本次調(diào)研讓自己更加了解軟件開發(fā)中功能開發(fā)相關框架和知識,了解軟件開發(fā)的工作范圍,開發(fā)任務的流程,代碼規(guī)范等,領略軟件開發(fā)的樂趣,讓我更加熱愛軟件開發(fā)這份工作,也讓我學會自主學習,作為一名java開發(fā)人員,形成良好的溝通與合作的互動能力,豐富自己社會經(jīng)驗,讓自己在企業(yè)中發(fā)展的更好。三、調(diào)研報告主體內(nèi)容1、 企業(yè)方面1.1公司概況略略略略略略略略略略略略略略略2、 軟件開發(fā)方面2.1如今軟件開發(fā)的發(fā)展及現(xiàn)狀隨著我國軟件產(chǎn)業(yè)的蓬勃發(fā)展以及對軟件質(zhì)量的重視,軟件開發(fā)也越來越被軟件企業(yè)所重視。軟件開發(fā)現(xiàn)狀主要體現(xiàn)以下方面:(1) 相比于先進的國家還存在非常大的差距,但是軟件工程的進展還是非常的迅速,形成屬于我們自己知識產(chǎn)權的軟件技術,還制定了符合我國實際情況的研發(fā)技術方案。(2) 常用的主流軟件的開發(fā)內(nèi)容以及開發(fā)工具都是國外設計和研究的。(3)軟件工程的研發(fā)實現(xiàn)了異地的團隊形式,例如:外包,任務驅(qū)動等來實現(xiàn)研發(fā)工作。(4)軟件工程模塊化,將復雜、龐大的系統(tǒng)實行分解,劃分為若干個子系統(tǒng),各個子系統(tǒng)有獨立運行的功能,并具有接口,增強子系統(tǒng)間的通用性。2.2公司開發(fā)管理按照工作內(nèi)容不同,開發(fā)的人員可分為4種角色:技術總監(jiān)、產(chǎn)品經(jīng)理、開發(fā)組長、開發(fā)人員、文檔編寫人員。1、 技術總監(jiān):主要負責審批工作、項目質(zhì)量分析、搭建產(chǎn)品的主要開發(fā)技術的框架結構,解決技術難題、考慮性能優(yōu)化工作。2、 產(chǎn)品經(jīng)理:主要負責明確需求、對整個產(chǎn)品生產(chǎn)過程,從功能開發(fā)到用戶反饋負責、需求評審、工作進度匯報。3、 開發(fā)組長和開發(fā)人員:主要負責按照需求文檔進行編碼開發(fā),以及開發(fā)完成后的產(chǎn)品維護,給測試人員提供技術支持。4、 文檔編寫人員:主要負責編寫開發(fā)的概要設計、數(shù)據(jù)庫設計、詳細設計、開發(fā)模塊周期方案、編寫總體開發(fā)進度計劃。2.3開發(fā)準備工作SVN服務器的使用和管理:(1) 所有開發(fā)源代碼,直接在SVN上新建和維護(2) 項目文檔,都必須上傳SVN,如需求分析書、項目開發(fā)周期、開發(fā)報告等。(3) 每個開發(fā)任務,以開發(fā)任務模塊為文件名,在該項目下建立顧名思義的開發(fā)文件包,按照模塊的劃分進行開發(fā)。(4) 每個模塊任務下,需求文檔和開發(fā)產(chǎn)品的源代碼保留目前進度下最新的即可,也需要保留歷史版本。(5) 新的開發(fā)任務點完成,即可更新進SVN中。(6) java開發(fā)環(huán)境的虛擬機環(huán)境,提前布置java環(huán)境,以及開通相關防火墻。2.4開發(fā)任務處理流程(1)需求收集明確本階段主要是與產(chǎn)品經(jīng)理相關的活動內(nèi)容:產(chǎn)品經(jīng)理在每次版本開始之前定期收集各方需求,包括客戶反饋、領導意見(對很多中小企業(yè)來說,老板就是最大的“用戶”)、市場調(diào)研及技術團隊需求等來源,輸出需求列表在版本開始之前召開版本計劃會議,參與者包括項目經(jīng)理、產(chǎn)品經(jīng)理,及項目核心成員,按優(yōu)先級梳理需求列表,輸出下次版本的初步任務列表(之所以說初步,是因為該列表后面可能根據(jù)評審情況進行調(diào)整)產(chǎn)品經(jīng)理基于初步任務列表完成詳細需求文檔,組織團隊成員一一包括相關UI、開發(fā)、測試,召開需求評審會議,輸出評審意見及修正完成時間產(chǎn)品經(jīng)理針對需求評審會議中團隊提出的意見建議,在修正完成時間內(nèi)及時修正需求文檔,并及時通知團隊相關成員,輸出確定的需求文檔(2)設計開發(fā)項目經(jīng)理根據(jù)需求文檔完成任務拆解,并在任務管理系統(tǒng)中創(chuàng)建對應任務單,指定經(jīng)辦人各經(jīng)辦人認領任務后,根據(jù)自身任務的期限,及時與依賴方溝通,確定依賴任務的完成時間,以免影響自身任務進度,存在問題及時向項目經(jīng)理反饋。UI設計完成后,相關開發(fā)人員與產(chǎn)品經(jīng)理需對UI設計進行確認,如果涉及內(nèi)容較多,可組織UI評審會議(由產(chǎn)品經(jīng)理或項目經(jīng)理權衡組織)涉及流程的開發(fā)任務需要有必要的設計,技術相關負責人負責對設計review,沒有review的設計不能開發(fā);任務開發(fā)完成需要進行代碼review項目經(jīng)理定期組織項目例會(緊急版本建議每天一次,較長期版本建議一周一次或兩次),持續(xù)跟進任務進度與問題,并及時協(xié)調(diào)處理,以保障進度預期在預定轉測時間節(jié)點前一天,開發(fā)人員編寫轉測文檔,描述本次版本調(diào)整內(nèi)容(附上任務列表)及注意事項,并通知項目相關人員(釘釘群或郵件)(3) 測試需求評審會議后,測試人員需對各功能模塊編寫測試用例文檔,并在轉測前組織測試評審會議,對各功能各環(huán)節(jié)進行復核與查漏補缺一次版本任務可根據(jù)情況分批測試,并確定每輪轉測的內(nèi)容與時間節(jié)點;分批測試完成后,需在上線前進行集成測試,注意預留一定的時間用于問題修復測試完成,需要將測試結論通報項目相關人員(釘釘群或郵件),包括遺留問題與是否達到上線要求結論注:產(chǎn)品經(jīng)理可在轉測后對開發(fā)實現(xiàn)進行驗收,以確定開發(fā)是否符合需求實際,以便及時進行調(diào)整(4) 上線上線人員需在上線前編寫上線方案文檔,記錄此次上線內(nèi)容,并對此次上線操作進行推演,對所涉及的所有操作按步驟進行記錄,如數(shù)據(jù)庫操作,代碼merge,jenkins構建等;對可能存在的問題進行備注及對應的處理方案,并提交技術相關負責人review項目經(jīng)理結合測試結論及其它各方面情況,決策是否上線,并將意見通知到項目相關人員(釘釘群或郵件)上線人員按照上線方案文檔記錄的步驟,依次完成上線操作(上線操作最好至少由兩人完成,一人操作,一人檢視,避免出錯)上線完成后,測試人員與產(chǎn)品經(jīng)理對此次上線進行線上驗證,確保線上功能流程無問題驗證無誤后,由項目經(jīng)理或其他指定負責人將上線通知發(fā)布至利益相關者,包括項目團隊所有成員及相關合作方,說明上線時間、上線內(nèi)容、影響因素、注意事項等(即時通訊群或郵件)⑸復盤版本結束后,項目經(jīng)理根據(jù)情況對上個周期組織復盤總結會,總結存在的問題與原因,及后續(xù)規(guī)避的辦法,總結積累的經(jīng)驗等2.5常用的工具jira用于項目任務管理,其中Agile插件可方便查看整體任務面板,對任務狀態(tài)一目了然,需要求團隊成員養(yǎng)成及時更新狀態(tài)的習慣confluence文檔管理,用于各類文檔的集中化維護,以上所述的如需求文檔、開發(fā)設計文檔、轉測文檔、上線文檔等均可使用confluence以項目空間的形式集中化管理。3.gitlab代碼管理jenkins項目部署構建工具nexus搭建maven私有庫2.6API網(wǎng)關監(jiān)控開發(fā)功能及技術點(1)API網(wǎng)關總體介紹API網(wǎng)關作為微服務架構或者前后端分離的業(yè)務系統(tǒng)架構中的重要組件承擔著非常重要的數(shù)據(jù)輸入輸出工作,同時網(wǎng)關的靈活性也決定了整個分布式架構的靈活性,API網(wǎng)關按照插件化的思路進行開發(fā)設計,API網(wǎng)關最核心的作用是對服務進行路由并進行數(shù)據(jù)轉發(fā),API網(wǎng)關將成為前后端交互以及內(nèi)外網(wǎng)交互的唯一數(shù)據(jù)進出口,所以API網(wǎng)關適合于進行服務鑒權、數(shù)據(jù)緩存、流量控制、日記記錄、熔斷控制、協(xié)議轉換等,同時API網(wǎng)關是整個分布式架構可對所有API服務進行統(tǒng)一管控的最佳制控點,所以必須通過可視化的配置插件來對所有API服務進行不同策略的控制,插件可以針對整個微應用也可以針對某一個細粒度的API進行控制,不能因為某一個API出現(xiàn)延時或異常熔斷整個微應用。(2)適用場景1、 作為企業(yè)移動化API調(diào)用的統(tǒng)一出口和權限認證中心、2、 承擔企業(yè)原有業(yè)務系統(tǒng)的服務轉發(fā)和路由功能3、 實現(xiàn)所有API接口的標準化、可視化、統(tǒng)一化4、 作為微服務架構的核心API網(wǎng)關,集成到企業(yè)微服務架構中5、 作為企業(yè)與供應鏈及合作伙伴的數(shù)據(jù)交換及接口統(tǒng)一OpenAPI平臺6、 作為企業(yè)調(diào)用第三方API(京東、淘寶)等的統(tǒng)一API接入平臺7、 打通企業(yè)內(nèi)部業(yè)務系統(tǒng)與外部業(yè)務系統(tǒng)之間的通道8、 實現(xiàn)企業(yè)已有RestAPI、WebService、Dubbo接口的注冊和協(xié)議轉換(3)API網(wǎng)關核心能力對后端API進行注冊并進行參數(shù)映射對多個后端API進行聚合并發(fā)布為一個新的API對API進行認證、鑒權、限流、熔斷等功能支持API級別的熔斷、限流、降級功能對API的所有請求數(shù)據(jù)進行記錄并進行安全審計對后端API進行負載均衡的流量分配對后端返回的數(shù)據(jù)進行轉換和再組裝對后端API進行HTTP的正反向代理⑷API和路由拓撲圖生成API網(wǎng)關能自動根據(jù)注冊的API和路由對API的鏈路和相互調(diào)用情況進行自動分析然后形成拓樸圖,通過拓樸圖用戶可以很快速的查看API之間的相互關系以及每個后端微服務的API數(shù)量和調(diào)用情況,并能在拓樸圖上查看每個API的調(diào)用次數(shù)、平均耗時、請求日志數(shù)據(jù)等。(5) Hystrix^件集成API網(wǎng)關集成了Hystrix服務保護組件來實現(xiàn)微服務和API級別的線程隔離、服務熔斷、服務降級等功能,同時可以直接在Web界面下進行配置,無需在配置文件或代碼中進行任何注解,Web界面中配置后立即生效。所有后端服務均可受Hystrix服務保護組件保護,第三方開發(fā)的API后端服務(PHP,C#等)無需任何修改只需要接入到API網(wǎng)關中即可享受API網(wǎng)關的熔斷、限流、監(jiān)控等功能。(6) 支持多種協(xié)議轉換API網(wǎng)關支持注冊RestfulAPI、WebService、Dubb。三種類型的API注冊并能對JSON和XML進行數(shù)據(jù)格式的轉換、無需編碼可實現(xiàn)json轉xml和xml轉json功能,通過轉換后更有利于前端UI框架進行API的調(diào)用。更多的協(xié)議轉換類型支持自定義擴展插件進行數(shù)據(jù)轉換,可以對API的請求數(shù)據(jù)和后端API的返回數(shù)據(jù)進行二次加工處理。⑺API網(wǎng)關性能單臺API網(wǎng)關性能與不經(jīng)過API網(wǎng)關轉發(fā)時的性能損耗在10%-15%的范圍,壓力測試和實際使用場景中API網(wǎng)關轉發(fā)時以每秒吞吐量為指標進行對比,經(jīng)過API網(wǎng)關轉發(fā)時吞吐量接近直接訪問API時的90%以上的效率,當然如果在API網(wǎng)關中增加較多的過濾器或插件如:IP黑白名單過濾,敏感字符控制等業(yè)邏輯時吞吐量會有所下降,這取決于過濾器本身的算法及性能,我們認為只要是公共的API業(yè)務邏輯都應該抽到API網(wǎng)關層的過濾器中進行統(tǒng)一管理和維護,而API網(wǎng)關的性能則通過水平擴展來解決。(8)API網(wǎng)關部署架構API網(wǎng)關通過動態(tài)的水平擴展部署架構來保證不間斷服務和應對大并發(fā)的請求情況,API網(wǎng)關在架構上已經(jīng)做到同類API網(wǎng)關的最優(yōu)架構,具有依賴少,部署和運維簡單等特點,其中API網(wǎng)關中重要的日志庫采用MongoDb進行分片存儲,同時日志庫可以與API網(wǎng)關的配置庫數(shù)據(jù)源進行隔離,即使MongoDB出現(xiàn)不可用的情況下也不影響API網(wǎng)關的正常運行。API網(wǎng)關提供了多種日志庫的解決方案,同時支持自動進行日志庫的分庫可以按年、月、周、天進行自動分庫,而開源的API網(wǎng)關和其他的網(wǎng)關基本采用日志文件進行存儲再通過log采集器進行收集后再發(fā)送到第三方數(shù)據(jù)庫中,這種架構具有架構復雜、依賴組件多、運維復雜等缺點,一旦引入這種類型的API網(wǎng)關就需要運維至少3-5個開源組件(Logstash、Kibana、Elasticsearch、Redis、kafka...),每一個組件出現(xiàn)問題都影響API網(wǎng)關的運行,對于一般的企業(yè)IT人員來說存在開源組件的運維風險。調(diào)研結論在整個企業(yè)實習調(diào)研過程中,因為我在公司主要負責的是功能開發(fā),因此我對軟件開發(fā)的功能相關知識有了初步的了解,以上是我對公司軟件發(fā)開管理、以及開發(fā)任務調(diào)查了解的流程,開發(fā)使用的資源共享服務器,功能測試方案的編寫,功能測試用例評審、功能測試中斷和通過的一些參考標準的相關總結,功能開發(fā)包括的其實還有很多方面,例如:虛擬機的布置管理、防火墻的相關狀況、業(yè)務邏輯編程、兼容性編程、安全性編程、高并發(fā)處理、token認證等等,對于功能開發(fā)的這些方面,在今后的實踐中才
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人貨物運輸保險附加服務合同4篇
- 2025年度大型公共設施設備安裝維修服務合同范本4篇
- 2025年新型智能商鋪租賃合同參考4篇
- 二零二五年度綠色建筑標準鋼管采購與技術創(chuàng)新合同3篇
- 二零二五年度電商綠色包裝與環(huán)保物流服務合同3篇
- 2025年度房產(chǎn)代持及資產(chǎn)配置顧問合同4篇
- 2025年摩托車內(nèi)燃機零配件進口合同樣本4篇
- 個人車位轉租合同(2024版)2篇
- 二零二五年度林業(yè)碳匯交易承包服務合同范本3篇
- 2025年度美容院美容美發(fā)項目組合套餐銷售合同3篇
- DB32-T 4444-2023 單位消防安全管理規(guī)范
- 臨床三基考試題庫(附答案)
- 合同簽訂執(zhí)行風險管控培訓
- DB43-T 3022-2024黃柏栽培技術規(guī)程
- 九宮數(shù)獨200題(附答案全)
- 人員密集場所消防安全管理培訓
- 《聚焦客戶創(chuàng)造價值》課件
- PTW-UNIDOS-E-放射劑量儀中文說明書
- JCT587-2012 玻璃纖維纏繞增強熱固性樹脂耐腐蝕立式貯罐
- 典范英語2b課文電子書
- 員工信息登記表(標準版)
評論
0/150
提交評論