谷粒學院技術點總結(6篇)_第1頁
谷粒學院技術點總結(6篇)_第2頁
谷粒學院技術點總結(6篇)_第3頁
谷粒學院技術點總結(6篇)_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

谷粒學院技術點總結(6篇)CAP定理:指的是在一個分布式系統(tǒng)中,Consistency(一致性)、Availability(可用性)、Partitiontolerance(分區(qū)容錯性),三者不可同時獲得。

CA滿足的情況下,P不能滿足的原因:數據同步(C)需要時間,也要正常的時間內響應(A),那么機器數量就要少,所以P就不滿足

CP滿足的情況下,A不能滿足的原因:數據同步(C)需要時間,機器數量也多(P),但是同步數據需要時間,所以不能再正常時間內響應,所以A就不滿足

AP滿足的情況下,C不能滿足的原因:機器數量也多(P),正常的時間內響應(A),那么數據就不能及時同步到其他節(jié)點,所以C不滿足

注冊中心選擇的原則:Zookeeper:CP設計,保證了一致性,集群搭建的時候,某個節(jié)點失效,則會進行選舉行的leader,或者半數以上節(jié)點不可用,則無法提供服務,因此可用性沒法滿足Eureka:AP原則,無主從節(jié)點,一個節(jié)點掛了,自動切換其他節(jié)點可以使用,去中心化

結論:分布式系統(tǒng)中P,肯定要滿足,所以我們只能在一致性和可用性之間進行權衡如果要求一致性,則選擇zookeeper,如金融行業(yè)如果要求可用性,則Eureka,如教育、電商系統(tǒng)沒有最好的選擇,最好的選擇是根據業(yè)務場景來進行架構設計

谷粒學院技術點總結第2篇

(1)在線教育系統(tǒng),分為前臺網站系統(tǒng)和后臺運營平臺,B2C模式。

前臺用戶系統(tǒng)包括課程、講師、問答、文章幾大大部分,使用了微服務技術架構,前后端分離開發(fā).

后端的主要技術架構是:SpringBoot+SpringCloud+MyBatis-Plus+HttpClient+MySQL+Maven+EasyExcel+nginx

前端的架構是:++element-ui+NUXT+ECharts

其他涉及到的中間件包括Redis、阿里云OSS、阿里云視頻點播

業(yè)務中使用了ECharts做圖表展示,使用EasyExcel完成分類批量添加、注冊分布式單點登錄使用了JWT

(2)項目前后端分離開發(fā),后端采用SpringCloud微服務架構,持久層用的是MyBatis-Plus,微服務分庫設計,使用Swagger生成接口文檔

接入了阿里云視頻點播、阿里云OSS。

系統(tǒng)分為前臺用戶系統(tǒng)和后臺管理系統(tǒng)兩部分。

前臺用戶系統(tǒng)包括:首頁、課程、名師、問答、文章。

后臺管理系統(tǒng)包括:講師管理、課程分類管理、課程管理、統(tǒng)計分析、Banner管理、訂單管理、權限管理等功能。

在線教育計費案例:小A是一名杭州的創(chuàng)業(yè)者,帶領團隊研發(fā)了一個在線教育平臺。他希望把視頻托管在阿里云上,存量視頻大約1000個,占用存儲空間近1T,每月預計新增視頻100個,并新增存儲約100G,課程視頻的時長集中在20-40分鐘,并且按照不同課程進行分類管理。為了保障各端的觀看效果,計劃為用戶提供“標清480P”和“高清720P”兩種清晰度。目前已有用戶400人左右,每日平均視頻觀看次數1000次,在移動端和PC端觀看次數比例大致為3:1。

谷粒學院技術點總結第3篇

一個中大型項目的開發(fā)流程:(1)需求調研(產品經理)(2)需求評審(產品/設計/前端/后端/測試/運營)(3)立項(項目經理、品管)(4)UI設計(5)開發(fā)、架構、數據庫設計、API文檔、MOCK數據、開發(fā)、單元測試、前端、后端(6)前端后端聯調(7)項目提測:黑盒白盒、壓力測試(qps)loadrunner(8)bug修改(9)回歸測試(10)運維和部署上線(11)灰度發(fā)布(12)全量發(fā)布(13)維護和運營

谷粒學院技術點總結第4篇

菜單管理

角色管理

用戶管理

權限管理表和關系

添加課程分類

課程分類列表、、

添加課程

谷粒學院技術點總結第5篇

綁定事件:v-on-click@click

(1)SpringBoot本質是就是Spring,只是快速構建Spring工程腳手架(2)細節(jié):

(3)SpringBoot配置文件

(1)是很多框架總稱,使用這些框架實現微服務架構,基于SpringBoot實現(2)組成框架有哪些?

(3)項目中,使用阿里巴巴Nacos,替代SpringCloud一些組件

(4)Nacos

(5)Feign

(6)熔斷器

(7)Gateway網關

(8)版本

(1)MyBatisPlus就是對MyBatis做增強

(2)自動填充

(3)樂觀鎖

(4)邏輯刪除

(5)代碼生成器

(1)阿里巴巴提供操作excel工具,代碼簡潔,效率很高

(2)EasyExcel對poi進行封裝,采用SAX方式解析

(3)項目應用在添加課程分類,讀取excel數據

谷粒學院技術點總結第6篇

添加課程分類(讀取Excel里的課程數據,添加到數據庫中,通過EasyExcel)

課程分類列表(使用樹形結構顯示課程分類列表)

課程列表功能(查詢所有課程并分頁顯示)

多條件分頁查詢(將條件值封裝進對象,將對象傳遞到接口中)

課程列表的CRUD

添加課程(課程發(fā)布的流程:填寫課程基本信息、添加課程大綱(章節(jié)和小節(jié))、課程信息確認、最終發(fā)布)

添加小節(jié)時,可以上傳課程視頻(阿里云視頻點播功能)

課程如何判斷是否已經發(fā)布?

?通過給數據庫設置字段status來判斷他現在的狀態(tài)(前端返回的課程id來修改課程的status并在前端顯示)

生成統(tǒng)計數據(選擇指定日期生成當天的數據)

統(tǒng)計數據的圖標顯示(Echart)

整合定時任務

Canal是阿里巴巴旗下的一款開源項目,純java開發(fā),支持MySql數據庫

使用MySql的binlog寫入功能以及Canal實現數據同步

前期使用Nginx作為網關,后期使用GateWay作為網關(需要在Nacos注冊中心進行注冊)

網關圖解

添加和刪除

訂單表的CRUD

顯示首頁Banner功能(放入Redis進行緩存)顯示熱門課程(放入Redis進行緩存)顯示名師(放入Redis進行緩存)

獲取手機驗證碼(阿里云云市場)

、普通登錄

?我使用的是token的方式,用戶登錄成功后,根據相關的信息生成token,然后返回給cookie,他每次訪問的時候都會從請求頭中獲取token的值,并解析獲取用信息,判斷是否已經登錄

單點登錄三種方式介紹

你使用什么方式生成Token的?

使用Jwt生成token字符串

Jwt有幾部分組成,分別為什么?

三部分組成,分別為:

jwt頭:JWT頭部分是一個描述JWT元數據的JSON對象

有效載荷(用戶信息):是JWT的主體內容部分,也是一個JSON對象,包含需要傳遞的數據。JWT指定七個默認字段供選擇

簽名哈希(防偽標志):是對上面兩部分數據簽名,通過指定的算法生成哈希,以確保數據不會被篡改。

你登錄功能的實現流程是什么(重要)?

1、前端調用登錄的接口,后端將用戶信息封裝成登錄對象,登錄成功會返回一個token字符串;

2、前端獲取后把token字符串放到cookie中;

3、前端創(chuàng)建請求攔截器進行判斷,如果cookie里包含token字符串,把token放到header中;

4、前端再次調用接口獲取用戶信息(由于請求攔截器的存在,會將token放在請求中返回給后端),

?后端從header中取到token的值并查詢用戶信息返回給前端,然后前端在頁面中進行顯示

登錄邏輯

、微信掃碼登錄

OAuth2是什么?

只是一種解決方法,按照一種規(guī)則,但是具體是什么規(guī)則,沒有規(guī)定。他是一種方案,但不是一種協(xié)議

主要解決兩個問題:

1、開放系統(tǒng)間授權

2、分布式訪問問題

你是如何獲取掃碼人微信信息的?

掃碼后,微信會返回兩個值code和state;

拿著這個code去請求微信的固定地址,獲得兩個值access_token訪問憑證和openid(每個微信的唯一表示);

然后拿著這兩個再去請求微信的一

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論