178-ABP VNext從單體切換到微服務
注:此處的微服務只考慮服務部分,不考慮內外層閘道器、認證等。
ABP VNext從單體切換到微服務,提供了相當大的便利性,對於各模組內部不要做任何調整,僅需要調整承載體即可。
ABP can help you in that point by offerring a microservice-compatible, strict module architecture where your module is splitted into multiple layers/projects and developed in its own VS solution completely isolated and independent from other modules. Such a developed module is a natural microservice yet it can be easily plugged-in a monolithic application.
分層架構
- ABP VNext自身提供的分層方式如下圖,核心部分是Application、Domain與EntityFrameworkCore層,至於HttpApi.Client與HttpApi都是屬於將應用去承載到其他系統之上的。
- Controller層在ABP VNext中被削弱了,VNext提供了將Application提供動態Controller,所以可能習慣了將部分邏輯寫在控制器中的會有些唐突,但理解就行。
規劃層次結構
- 新建空資料夾,取名隨意(本次取名GravelService),用於存放整體專案。
- 在上一步的空資料夾內新建空白解決方案,可以用VS去生成或是按照dotnet的命令生成。
- 習慣上按照ABP VNext給定的微服務Demo中的格式建立三個資料夾,思路清晰。當然提供的微服務Demo還有更多資料夾,但是這次只關注這三個。
增加三個模組
- 設計三個限界上下文並繪製上下文對映。依照常見的訂單、產品與客戶劃分成三個限界上下文。並規劃好訂單作為下游依賴產品與客戶作為的上游。
- 從官網直接下載三個模組,或是按照命令列去生成(前提是已經安裝了ABP CLI),無論哪種方式,確保準備好就行,依照模組化思想,將其存到modules資料夾下。
- 如本次準備了三個模組Product,Order,Customer,依照實際需要,可以去精簡一下內部檔案,此處各模組內部我只留著src和test資料夾。
- 對於customer模組的src內部,具體生成的資料夾如下,對於其中的HttpApi、HttpApi.Client及MongoDB,我採取了剔除,無需這部分(在稍後的承載體中有同等功能)。
清理之後變得簡簡單單的。
對於test內部,同樣採取剔除無需的HttpApi.CLient、MongoDB資料夾(注:此處的無需只是針對我而言,如果有需要還是留著吧)。
清理之後,層次劃分變得簡簡單單的。
- 改造下各模組內給定的Sample案例,改造成各模組命名開頭,方便加以區分。以Customer模組為例,將自帶的Sample案例更名成Customer,僅作該項改動。
模擬服務呼叫
- 對於Order與Product模組內增加一個下游訪問上游服務的鏈路,方便驗證從單體跨越到微服務,底層服務的無需任何改動。對於下游訪問上游服務的呼叫形式,瞭解到的有兩種方式。
- 當前上下文的應用層直接依賴其他上下文的應用服務;
- 當前上下文設定出防腐層(在限界上下文間增加一層隔離,方便保證依賴限界上下文存在變動時只需更改隔離層),在防腐層的實現中去依賴或遠端呼叫其他上下文的應用服務;
- 我個人傾向於增加防腐層,雖然在VNext中並無相關說法。具體使用時,在領域層或應用層增加防腐層介面,及在EF Core層給與防腐層實現,此時的EF Core層,更應該更名為基礎設施層,而不單單是作為資源庫的形式。
- 在Order中Domain層增加ServiceClients資料夾用於存放防腐層介面,而在EntityFrameworkCore層增加ServiceClients資料夾用於存放防腐層實現。
- 在防腐層介面中增加IProductServiceClient。
public interface IProductServiceClient : ITransientDependency{ Task<int> GetProductId();}
- 在防腐層實現中增加ProductServiceClient。
- 在Order中的EntityFrameworkCore層引用Product模組內的Application.Contracts層。
- 依賴ProductAppService並完成呼叫。
public class ProductServiceClient : IProductServiceClient{ private readonly IProductAppService _productAppService; public ProductServiceClient(IProductAppService productAppService) { _productAppService = productAppService; } public async Task<int> GetProductId() { var productDto = await _productAppService.GetAsync(); return productDto.Value; }}
- 在OrderAppService中依賴防腐層介面,並完成呼叫。
public class OrderAppService : OrderManagementAppService, IOrderAppService{ private readonly IProductServiceClient _productServiceClient; public OrderAppService(IProductServiceClient productServiceClient) { _productServiceClient = productServiceClient; } public async Task<OrderDto> GetAsync() { var productId = await _productServiceClient.GetProductId(); ... }}
- 這樣一來,在防腐層實現中便可以使用到Product上下文的應用服務了,對於這個應用服務的請求是當前程式內的還是程式間的,由具體的承載方式而決定。
大單體承載
將依照如下圖,將三個模組承載到GravelService.Host上。
- 新建一個GravelService.Host的專案,採用WebApi型別即可。存放到microservices資料夾下,這樣方便理解整個層級劃分。
- 其次依賴一些基本的Nuget包,諸如ABP自身的及方便展示Api的Swagger。本次不考慮實體的建立,也就不考慮EF Core包的依賴了。
- Volo.Abp
- Volo.Abp.AspNetCore.MultiTenancy
- Volo.Abp.AspNetCore.Mvc
- Volo.Abp.Autofac
- Swashbuckle.AspNetCore
- 引用各模組內的Application層及EntityFrameworkCore層。模仿著給定的微服務Demo,完成一波CV操作。增加一個類出來承擔著服務與中介軟體的配置。
- 在其中依賴引用的各Application層及EntityFrameworkCore層中的Module,這樣一來模組依賴就搞定了。
[DependsOn( typeof(AbpAutofacModule), typeof(AbpAspNetCoreMvcModule), typeof(AbpAspNetCoreMultiTenancyModule), typeof(CustomerManagementApplicationModule), typeof(CustomerManagementEntityFrameworkCoreModule), typeof(OrderManagementApplicationModule), typeof(OrderManagementEntityFrameworkCoreModule), typeof(ProductManagementApplicationModule), typeof(ProductManagementEntityFrameworkCoreModule) )]public class GravelServiceHostModule : AbpModule{ ...}
- 增加服務配置,將各模組中的應用服務動態轉換成Api控制器。
Configure<AbpAspNetCoreMvcOptions>(options =>{ options.ConventionalControllers .Create(typeof(CustomerManagementApplicationModule).Assembly, opts => { opts.RootPath = "CustomerManagement"; }) .Create(typeof(OrderManagementApplicationModule).Assembly, opts => { opts.RootPath = "OrderManagement"; }) .Create(typeof(ProductManagementApplicationModule).Assembly, opts => { opts.RootPath = "ProductManagement"; });});
- 然後,啟動即可,所有模組中的介面都承載到了該承載體中。
- 通過訪問Order的api/OrderManagement/order介面獲得返回的9527,也就驗證了,防腐層內去訪問Product上下文的應用服務。
此時是在同一程式內,使用到的是ProductAppService的具體實現,斷點檢視也可看出當前程式內的請求,依賴其他上下文服務的應用服務為ApplicationServiceProxy。
多服務承載
依照如下圖開始切換承載模式,只更改承載體,將一個大的承載體切分成各上下文獨自承載體。
- 新建三個和GravelService.Host同等的WebApi專案。在GravelService.Host上裁剪即可,每個獨立的承載體只擁有自身的上下文。
- 依據上下文對映關係,對處於下游的Order承載體增加對上游Product的依賴,在Order承載體中增加對Product模組中Application.Contracts層的依賴。並在服務配置中完成依賴(第7行)。
[DependsOn( typeof(AbpAutofacModule), typeof(AbpAspNetCoreMvcModule), typeof(AbpAspNetCoreMultiTenancyModule), typeof(OrderManagementApplicationModule), typeof(OrderManagementEntityFrameworkCoreModule), typeof(ProductManagementApplicationContractsModule) )]public class OrderServiceHostModule : AbpModule{...}
- 配置遠端服務代理,在服務配置中設定從Order承載體到Product承載體的遠端服務請求。在Order承載體中增加Volo.Abp.Http.Client包並在服務配置中完成依賴。
[DependsOn( ... typeof(AbpHttpClientModule), ... )]public class OrderServiceHostModule : AbpModule{ public override void ConfigureServices(ServiceConfigurationContext context) { var configuration = context.Services.GetConfiguration(); ... context.Services.AddHttpClientProxies( typeof(ProductManagementApplicationContractsModule).Assembly); ... }}
- 在配置源appsettings檔案中加入對Product承載體的遠端呼叫地址
{ "RemoteServices": { "Default": { "BaseUrl": "http://localhost:57687" }}
- 更改專案配置,啟動多個檔案,一併啟動三個獨立承載體,再次呼叫Order中的Get請求,同樣獲得了從Product上下文的應用服務中的資料
- 這次採用的不同程式間的承載方式,通過防腐層,然後經ABP提供的Http代理服務呼叫Product承載體,可以斷點檢視當前在防腐層中的AppService型別,已經不再是直接使用ProductAppService了。
真香
從大單體承載切換多服務承載,Modules部分不需要做任何更改,著實方便。至於內部的遠端呼叫,本身ABP VNext還存在一些問題像類似集合的Get請求在3.1的版本中才做了修復,但是這絲毫不影響這一巨人的前行。
碼雲倉庫
2020-09-26,望技術有成後能回來看見自己的腳步
7-What number should I guess next ?——由《鷹蛋》一題引發的思考-17:16
4289-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-6:54
7124-Spring Boot第五彈,WEB開發初瞭解~-8:59
644-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-0:25
3278-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-9:36
6-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-15:22
58681-VPS教程:搭建個人網盤教程—kodexplorer-2:49
76577-手把手教你AspNetCore WebApi:增刪改查-8:24
995-Shiro入門學習---使用自定義Realm完成認證|練氣中期-19:28
7-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-15:23
614-windows10開機後恢復關機前開啟的chrome網頁-9:35
29-【編輯推薦】2020年高等軟體工程課程期望與篤信-9:51
29-【小白學PyTorch】19 TF2模型的儲存與載入-20:53
47875-Blend學習之Loading載入動畫-23:27
5-spring-boot-route(七)整合jdbcTemplate運算元據庫-22:18
6-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-12:43
4-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-1:49
7465-Unity Shader 00 - 梳理 Unity Shader 的基本結構-3:37
78985-認證授權:IdentityServer4 - 資料持久化-9:44
4452-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-9:42
343-C# Redis分散式鎖(RedLock) - 多節點-23:35
6-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-3:25
66788-簡化ETL工作,編寫一個Canal膠水層-15:21
36467-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-2:58
87656-2020我終於成功搭建了Metasploitable3靶機-16:59
2-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-21:32
1-windows10開機後恢復關機前開啟的chrome網頁-24:21
81834-C# Redis分散式鎖(RedLock) - 多節點-23:37
5238-Unity Shader 00 - 梳理 Unity Shader 的基本結構-19:41
17775-Shiro入門學習---使用自定義Realm完成認證|練氣中期-13:51
6-Spring Boot第五彈,WEB開發初瞭解~-18:48
2843-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-1:39
1-【小白學PyTorch】19 TF2模型的儲存與載入-10:37
8583-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-0:33
7-【編輯推薦】2020年高等軟體工程課程期望與篤信-4:51
29888-認證授權:IdentityServer4 - 資料持久化-20:39
8-spring-boot-route(七)整合jdbcTemplate運算元據庫-1:33
477-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-15:39
97-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-4:43
2489-Linux系統程式設計—訊號集操作函式-15:21
175-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-23:29
4978-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-7:41
6625-手把手教你AspNetCore WebApi:增刪改查-15:38
729-What number should I guess next ?——由《鷹蛋》一題引發的思考-14:34
853-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-6:17
5-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-23:23
85-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-16:12
4-2020我終於成功搭建了Metasploitable3靶機-0:38
949-VPS教程:搭建個人網盤教程—kodexplorer-14:30
79-What number should I guess next ?——由《鷹蛋》一題引發的思考-0:22
248-2020我終於成功搭建了Metasploitable3靶機-4:43
1432-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-16:25
4998-Spring Boot第五彈,WEB開發初瞭解~-0:26
3859-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-13:18
55-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-18:51
11528-VPS教程:搭建個人網盤教程—kodexplorer-23:52
386-【小白學PyTorch】19 TF2模型的儲存與載入-9:46
16926-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-19:46
39-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-17:23
33686-C# Redis分散式鎖(RedLock) - 多節點-17:37
6895-spring-boot-route(七)整合jdbcTemplate運算元據庫-12:21
69-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-13:16
9-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-15:18
86558-Shiro入門學習---使用自定義Realm完成認證|練氣中期-19:15
3-windows10開機後恢復關機前開啟的chrome網頁-10:18
27-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-11:28
1387-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-14:32
1619-【編輯推薦】2020年高等軟體工程課程期望與篤信-21:21
19-認證授權:IdentityServer4 - 資料持久化-6:38
8893-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-9:34
4-手把手教你AspNetCore WebApi:增刪改查-14:46
88621-Unity Shader 00 - 梳理 Unity Shader 的基本結構-4:56
75532-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-12:25
24378-spring-boot-route(七)整合jdbcTemplate運算元據庫-8:11
763-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-24:30
5989-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-20:56
92-手把手教你AspNetCore WebApi:增刪改查-13:19
27432-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-2:36
22-Spring Boot第五彈,WEB開發初瞭解~-10:36
71-windows10開機後恢復關機前開啟的chrome網頁-21:31
238-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-23:57
88223-C# Redis分散式鎖(RedLock) - 多節點-5:32
291-認證授權:IdentityServer4 - 資料持久化-4:55
1363-What number should I guess next ?——由《鷹蛋》一題引發的思考-19:56
571-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-15:54
1353-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-23:45
2-VPS教程:搭建個人網盤教程—kodexplorer-2:22
674-Unity Shader 00 - 梳理 Unity Shader 的基本結構-16:50
8-Shiro入門學習---使用自定義Realm完成認證|練氣中期-23:10
5439-Blend學習之Loading載入動畫-24:44
2836-簡化ETL工作,編寫一個Canal膠水層-19:27
96-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-19:30
1-2020我終於成功搭建了Metasploitable3靶機-3:34
88-【小白學PyTorch】19 TF2模型的儲存與載入-17:10
939-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-15:49
6-【編輯推薦】2020年高等軟體工程課程期望與篤信-9:48
23313-C# Redis分散式鎖 - 單節點-13:42
795-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-10:59
39213-Blend學習之Loading載入動畫-4:54
151-spring-boot-route(七)整合jdbcTemplate運算元據庫-15:59
534-VPS教程:搭建個人網盤教程—kodexplorer-15:39
6-What number should I guess next ?——由《鷹蛋》一題引發的思考-12:51
742-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-7:16
47832-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-21:20
19387-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-20:56
9-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-16:58
738-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-23:52
18-Spring Boot第五彈,WEB開發初瞭解~-18:42
31462-Shiro入門學習---使用自定義Realm完成認證|練氣中期-23:57
71397-Unity Shader 00 - 梳理 Unity Shader 的基本結構-18:18
2933-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-15:53
5881-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-23:23
142-windows10開機後恢復關機前開啟的chrome網頁-22:47
14688-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-20:21
1384-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-7:48
95724-【小白學PyTorch】19 TF2模型的儲存與載入-11:51
8893-2020我終於成功搭建了Metasploitable3靶機-6:57
4777-C# Redis分散式鎖(RedLock) - 多節點-13:32
95591-【編輯推薦】2020年高等軟體工程課程期望與篤信-15:33
87847-手把手教你AspNetCore WebApi:增刪改查-1:40
21378-認證授權:IdentityServer4 - 資料持久化-4:23
25-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-9:12
9-【小白學PyTorch】19 TF2模型的儲存與載入-18:45
28287-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-9:58
5688-2020我終於成功搭建了Metasploitable3靶機-11:21
4243-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-18:46
27198-VPS教程:搭建個人網盤教程—kodexplorer-11:29
5-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-6:22
64-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-18:40
391-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-9:32
66-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-0:37
1145-手把手教你AspNetCore WebApi:增刪改查-3:39
51656-spring-boot-route(七)整合jdbcTemplate運算元據庫-5:27
89-C# Redis分散式鎖(RedLock) - 多節點-4:30
4876-Unity Shader 00 - 梳理 Unity Shader 的基本結構-2:52
32-Shiro入門學習---使用自定義Realm完成認證|練氣中期-13:36
86-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-10:29
9-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-15:17
38546-【編輯推薦】2020年高等軟體工程課程期望與篤信-17:41
2245-認證授權:IdentityServer4 - 資料持久化-8:37
69-What number should I guess next ?——由《鷹蛋》一題引發的思考-16:54
778-windows10開機後恢復關機前開啟的chrome網頁-0:11
518-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-11:55
63164-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-12:34
165-Spring Boot第五彈,WEB開發初瞭解~-18:23
31-【小白學PyTorch】19 TF2模型的儲存與載入-14:29
3135-windows10開機後恢復關機前開啟的chrome網頁-5:33
37736-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-10:53
142-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-16:16
8867-C# Redis分散式鎖(RedLock) - 多節點-23:14
629-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-9:41
33953-Blend學習之Loading載入動畫-13:46
6-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-14:53
995-簡化ETL工作,編寫一個Canal膠水層-14:51
4-Spring Boot第五彈,WEB開發初瞭解~-22:47
818-Unity Shader 00 - 梳理 Unity Shader 的基本結構-7:49
5114-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-14:42
7786-Shiro入門學習---使用自定義Realm完成認證|練氣中期-24:20
6869-2020我終於成功搭建了Metasploitable3靶機-1:14
33676-What number should I guess next ?——由《鷹蛋》一題引發的思考-10:24
93165-C# Redis分散式鎖 - 單節點-12:44
54568-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-24:42
88-認證授權:IdentityServer4 - 資料持久化-19:25
6-手把手教你AspNetCore WebApi:增刪改查-8:57
93-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-10:25
95-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-4:12
55-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-5:29
882-VPS教程:搭建個人網盤教程—kodexplorer-23:51
8-【編輯推薦】2020年高等軟體工程課程期望與篤信-3:21
87962-spring-boot-route(七)整合jdbcTemplate運算元據庫-19:42
79935-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-1:46
8777-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-15:47
323-【小白學PyTorch】19 TF2模型的儲存與載入-11:18
2-2020我終於成功搭建了Metasploitable3靶機-14:23
3122-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-12:29
3341-如何用5000行JS擼一個關係型資料庫-17:16
57138-Linux系統程式設計—訊號集操作函式-13:26
2-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-2:33
77-Spring Boot第五彈,WEB開發初瞭解~-16:32
4-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-22:56
21478-手把手教你AspNetCore WebApi:增刪改查-14:15
1-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-13:45
25-Shiro入門學習---使用自定義Realm完成認證|練氣中期-15:22
1-【編輯推薦】2020年高等軟體工程課程期望與篤信-24:26
9225-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-3:51
1-windows10開機後恢復關機前開啟的chrome網頁-14:11
8543-C# Redis分散式鎖(RedLock) - 多節點-7:46
48-認證授權:IdentityServer4 - 資料持久化-6:28
95-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-22:56
72399-Blend學習之Loading載入動畫-24:45
94-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-4:31
6-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-9:58
86418-VPS教程:搭建個人網盤教程—kodexplorer-7:52
15977-Unity Shader 00 - 梳理 Unity Shader 的基本結構-15:16
3-spring-boot-route(七)整合jdbcTemplate運算元據庫-12:23
1629-What number should I guess next ?——由《鷹蛋》一題引發的思考-8:14
8452-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-7:32
9315-簡化ETL工作,編寫一個Canal膠水層-6:43
6328-Spring Boot第五彈,WEB開發初瞭解~-3:22
1667-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-4:19
771-windows10開機後恢復關機前開啟的chrome網頁-4:59
7-What number should I guess next ?——由《鷹蛋》一題引發的思考-8:41
18-spring-boot-route(七)整合jdbcTemplate運算元據庫-15:44
546-【小白學PyTorch】19 TF2模型的儲存與載入-10:38
6-認證授權:IdentityServer4 - 資料持久化-22:41
72-Shiro入門學習---使用自定義Realm完成認證|練氣中期-8:35
4-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-17:25
249-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-13:46
492-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-13:20
2-Unity Shader 00 - 梳理 Unity Shader 的基本結構-3:58
11634-2020我終於成功搭建了Metasploitable3靶機-17:56
6-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-13:41
31-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-11:39
63855-【編輯推薦】2020年高等軟體工程課程期望與篤信-1:13
7-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-3:18
97822-python單元測試框架pytest-12:12
15-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-6:14
4384-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-2:25
6698-VPS教程:搭建個人網盤教程—kodexplorer-17:41
5855-C# Redis分散式鎖(RedLock) - 多節點-11:34
21-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-16:43
5-手把手教你AspNetCore WebApi:增刪改查-23:51
25795-簡化ETL工作,編寫一個Canal膠水層-19:10
92774-Linux系統程式設計—訊號集操作函式-12:33
6793-2020我終於成功搭建了Metasploitable3靶機-0:37
123-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-23:36
16-spring-boot-route(七)整合jdbcTemplate運算元據庫-3:15
7-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-5:55
52-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-9:12
1871-認證授權:IdentityServer4 - 資料持久化-3:53
3-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-9:24
5-Unity Shader 00 - 梳理 Unity Shader 的基本結構-22:44
6-Spring Boot第五彈,WEB開發初瞭解~-23:48
85317-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-1:18
18-What number should I guess next ?——由《鷹蛋》一題引發的思考-13:20
82-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-1:59
2-C# Redis分散式鎖(RedLock) - 多節點-8:51
59618-4 個問題圖解瀏覽器垃圾回收的過程。-24:33
8142-Blend學習之Loading載入動畫-24:46
8-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-22:23
3-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-6:37
735-【小白學PyTorch】19 TF2模型的儲存與載入-9:47
3946-Shiro入門學習---使用自定義Realm完成認證|練氣中期-16:30
459-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-18:51
553-【編輯推薦】2020年高等軟體工程課程期望與篤信-14:31
646-手把手教你AspNetCore WebApi:增刪改查-6:31
517-VPS教程:搭建個人網盤教程—kodexplorer-7:19
645-簡化ETL工作,編寫一個Canal膠水層-21:16
2318-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-13:21
274-windows10開機後恢復關機前開啟的chrome網頁-20:11
17162-認證授權:IdentityServer4 - 資料持久化-3:53
61-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-24:55
767-C# Redis分散式鎖(RedLock) - 多節點-10:21
6-【編輯推薦】2020年高等軟體工程課程期望與篤信-6:18
6131-2020我終於成功搭建了Metasploitable3靶機-4:17
6-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-3:38
8829-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-0:45
9214-Linux系統程式設計—訊號集操作函式-21:50
95-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-19:53
97458-windows10開機後恢復關機前開啟的chrome網頁-13:22
24-VPS教程:搭建個人網盤教程—kodexplorer-8:42
135-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-14:15
756-手把手教你AspNetCore WebApi:增刪改查-23:43
84858-Spring Boot第五彈,WEB開發初瞭解~-18:50
467-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-10:16
3978-What number should I guess next ?——由《鷹蛋》一題引發的思考-9:54
658-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-24:17
17589-spring-boot-route(七)整合jdbcTemplate運算元據庫-19:54
84-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-3:26
28-Unity Shader 00 - 梳理 Unity Shader 的基本結構-16:55
8999-Shiro入門學習---使用自定義Realm完成認證|練氣中期-3:58
77481-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-21:14
665-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-17:22
4384-【小白學PyTorch】19 TF2模型的儲存與載入-7:30
1676-簡化ETL工作,編寫一個Canal膠水層-19:28
211-Spring Boot第五彈,WEB開發初瞭解~-11:40
26-【小白學PyTorch】19 TF2模型的儲存與載入-3:12
78385-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-5:40
3-Shiro入門學習---使用自定義Realm完成認證|練氣中期-0:29
9-C# Redis分散式鎖(RedLock) - 多節點-16:30
85-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-14:31
2114-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-9:13
423-簡化ETL工作,編寫一個Canal膠水層-22:26
52774-手把手教你AspNetCore WebApi:增刪改查-16:16
15426-2020我終於成功搭建了Metasploitable3靶機-18:11
6-spring-boot-route(七)整合jdbcTemplate運算元據庫-3:29
36-VPS教程:搭建個人網盤教程—kodexplorer-3:26
36-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-4:35
38-【編輯推薦】2020年高等軟體工程課程期望與篤信-9:34
125-Unity Shader 00 - 梳理 Unity Shader 的基本結構-4:43
57175-Linux系統程式設計—訊號集操作函式-18:11
33-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-15:47
113-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-1:56
144-windows10開機後恢復關機前開啟的chrome網頁-18:44
3-認證授權:IdentityServer4 - 資料持久化-6:27
78-What number should I guess next ?——由《鷹蛋》一題引發的思考-2:13
3-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-11:16
7392-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-13:40
9-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-5:24
28-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-14:38
56633-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-6:13
92899-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-0:25
91614-如何用5000行JS擼一個關係型資料庫-11:31
2-C# Redis分散式鎖(RedLock) - 多節點-2:30
6-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-15:43
1395-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-7:34
27-What number should I guess next ?——由《鷹蛋》一題引發的思考-2:22
421-Spring Boot第五彈,WEB開發初瞭解~-20:28
7347-Unity Shader 00 - 梳理 Unity Shader 的基本結構-11:28
7-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-2:26
369-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-15:40
8918-【小白學PyTorch】19 TF2模型的儲存與載入-1:23
3-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-7:44
9-Shiro入門學習---使用自定義Realm完成認證|練氣中期-1:50
925-2020我終於成功搭建了Metasploitable3靶機-1:13
692-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-2:39
669-windows10開機後恢復關機前開啟的chrome網頁-0:19
918-spring-boot-route(七)整合jdbcTemplate運算元據庫-4:22
6-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-10:20
453-手把手教你AspNetCore WebApi:增刪改查-7:39
49335-【編輯推薦】2020年高等軟體工程課程期望與篤信-12:11
887-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-21:23
21-認證授權:IdentityServer4 - 資料持久化-14:17
867-VPS教程:搭建個人網盤教程—kodexplorer-1:53
6-windows10開機後恢復關機前開啟的chrome網頁-8:55
6244-【編輯推薦】2020年高等軟體工程課程期望與篤信-23:55
86375-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-6:28
845-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-10:52
44-Shiro入門學習---使用自定義Realm完成認證|練氣中期-0:52
93-C# Redis分散式鎖(RedLock) - 多節點-3:53
16-【小白學PyTorch】19 TF2模型的儲存與載入-15:54
655-認證授權:IdentityServer4 - 資料持久化-8:33
591-Unity Shader 00 - 梳理 Unity Shader 的基本結構-24:24
6-2020我終於成功搭建了Metasploitable3靶機-1:58
7-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-23:47
89149-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-19:50
4424-手把手教你AspNetCore WebApi:增刪改查-4:10
7565-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-24:32
954-簡化ETL工作,編寫一個Canal膠水層-16:38
121-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-22:41
5-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-24:44
57-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-14:56
23942-VPS教程:搭建個人網盤教程—kodexplorer-2:31
37956-spring-boot-route(七)整合jdbcTemplate運算元據庫-0:33
318-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-7:16
7-Spring Boot第五彈,WEB開發初瞭解~-22:14
841-What number should I guess next ?——由《鷹蛋》一題引發的思考-23:46
1164-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-19:32
39-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-13:36
74-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-8:23
1-spring-boot-route(七)整合jdbcTemplate運算元據庫-20:41
7789-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-9:56
343-2020我終於成功搭建了Metasploitable3靶機-19:50
135-【編輯推薦】2020年高等軟體工程課程期望與篤信-23:22
7-What number should I guess next ?——由《鷹蛋》一題引發的思考-13:20
53838-VPS教程:搭建個人網盤教程—kodexplorer-13:18
31-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-9:32
861-windows10開機後恢復關機前開啟的chrome網頁-17:40
495-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-23:49
19156-Linux系統程式設計—訊號集操作函式-9:26
5965-Spring Boot第五彈,WEB開發初瞭解~-3:53
6345-Blend學習之Loading載入動畫-20:16
92-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-22:28
582-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-11:31
94-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-9:49
76-手把手教你AspNetCore WebApi:增刪改查-18:10
269-C# Redis分散式鎖(RedLock) - 多節點-15:19
8-Shiro入門學習---使用自定義Realm完成認證|練氣中期-2:28
5249-簡化ETL工作,編寫一個Canal膠水層-4:35
7574-【小白學PyTorch】19 TF2模型的儲存與載入-24:18
58969-Unity Shader 00 - 梳理 Unity Shader 的基本結構-17:50
7-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-10:45
2131-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-4:48
3-認證授權:IdentityServer4 - 資料持久化-19:14
4311-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-12:41
46-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-7:40
272-Unity Shader 00 - 梳理 Unity Shader 的基本結構-22:51
575-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-20:23
4-【編輯推薦】2020年高等軟體工程課程期望與篤信-13:34
8825-Shiro入門學習---使用自定義Realm完成認證|練氣中期-16:56
7-C# Redis分散式鎖(RedLock) - 多節點-19:25
713-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-24:48
7445-簡化ETL工作,編寫一個Canal膠水層-9:28
7-windows10開機後恢復關機前開啟的chrome網頁-12:27
41-Spring Boot第五彈,WEB開發初瞭解~-19:10
688-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-18:43
7-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-8:49
62-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-1:38
54921-spring-boot-route(七)整合jdbcTemplate運算元據庫-17:19
4-手把手教你AspNetCore WebApi:增刪改查-21:24
66-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-6:10
36-認證授權:IdentityServer4 - 資料持久化-3:45
33147-VPS教程:搭建個人網盤教程—kodexplorer-23:42
851-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-3:16
37569-What number should I guess next ?——由《鷹蛋》一題引發的思考-1:41
2883-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-15:34
33511-【小白學PyTorch】19 TF2模型的儲存與載入-8:51
4966-如何用5000行JS擼一個關係型資料庫-13:28
91522-2020我終於成功搭建了Metasploitable3靶機-15:37
812-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-19:30
4549-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-12:24
96116-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-24:50
2-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-15:47
623-C# Redis分散式鎖(RedLock) - 多節點-6:48
4561-【小白學PyTorch】19 TF2模型的儲存與載入-10:43
59-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-12:23
8246-【編輯推薦】2020年高等軟體工程課程期望與篤信-22:40
351-Shiro入門學習---使用自定義Realm完成認證|練氣中期-17:51
59-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-8:57
97-Unity Shader 00 - 梳理 Unity Shader 的基本結構-18:26
1654-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-2:22
49-手把手教你AspNetCore WebApi:增刪改查-21:21
985-spring-boot-route(七)整合jdbcTemplate運算元據庫-15:43
9-What number should I guess next ?——由《鷹蛋》一題引發的思考-21:24
88-認證授權:IdentityServer4 - 資料持久化-9:12
76182-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-2:23
12893-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-7:51
64426-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-9:16
421-windows10開機後恢復關機前開啟的chrome網頁-19:29
58352-2020我終於成功搭建了Metasploitable3靶機-4:45
523-Spring Boot第五彈,WEB開發初瞭解~-23:21
9-VPS教程:搭建個人網盤教程—kodexplorer-10:17
39542-python單元測試框架pytest-17:29
4367-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-19:44
8-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-20:21
4-認證授權:IdentityServer4 - 資料持久化-0:28
289-spring-boot-route(七)整合jdbcTemplate運算元據庫-20:49
878-手把手教你AspNetCore WebApi:增刪改查-14:31
18744-C# Redis分散式鎖(RedLock) - 多節點-7:52
5-Shiro入門學習---使用自定義Realm完成認證|練氣中期-11:48
292-【編輯推薦】2020年高等軟體工程課程期望與篤信-9:19
899-2020我終於成功搭建了Metasploitable3靶機-5:25
61-What number should I guess next ?——由《鷹蛋》一題引發的思考-6:21
36-VPS教程:搭建個人網盤教程—kodexplorer-6:38
7581-Unity Shader 00 - 梳理 Unity Shader 的基本結構-8:29
2677-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-7:39
4-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-13:15
94-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-15:27
65-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-6:41
4349-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-24:12
25-windows10開機後恢復關機前開啟的chrome網頁-8:57
6-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-14:23
95-Spring Boot第五彈,WEB開發初瞭解~-15:43
718-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-17:43
2-【小白學PyTorch】19 TF2模型的儲存與載入-6:51
8-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-22:42
3-2020我終於成功搭建了Metasploitable3靶機-18:24
153-Unity Shader 00 - 梳理 Unity Shader 的基本結構-20:27
5-手把手教你AspNetCore WebApi:增刪改查-14:17
2-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-21:13
1824-What number should I guess next ?——由《鷹蛋》一題引發的思考-0:45
286-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-15:46
315-spring-boot-route(七)整合jdbcTemplate運算元據庫-12:36
38277-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-9:22
39743-VPS教程:搭建個人網盤教程—kodexplorer-10:51
2552-認證授權:IdentityServer4 - 資料持久化-9:49
7316-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-15:29
56581-windows10開機後恢復關機前開啟的chrome網頁-6:40
7-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-14:29
2-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-21:49
9119-C# Redis分散式鎖(RedLock) - 多節點-1:20
4243-Shiro入門學習---使用自定義Realm完成認證|練氣中期-7:39
2591-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-2:46
39-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-3:59
25421-【編輯推薦】2020年高等軟體工程課程期望與篤信-11:30
39987-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-5:24
15-Spring Boot第五彈,WEB開發初瞭解~-0:35
816-【小白學PyTorch】19 TF2模型的儲存與載入-7:14
19-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-12:37
6696-認證授權:IdentityServer4 - 資料持久化-8:52
62-spring-boot-route(七)整合jdbcTemplate運算元據庫-21:39
31232-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-14:30
15-【編輯推薦】2020年高等軟體工程課程期望與篤信-5:42
68669-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-1:22
46457-簡化ETL工作,編寫一個Canal膠水層-19:46
7-VPS教程:搭建個人網盤教程—kodexplorer-14:14
231-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-23:11
325-windows10開機後恢復關機前開啟的chrome網頁-5:33
336-Shiro入門學習---使用自定義Realm完成認證|練氣中期-23:43
11985-Linux系統程式設計—訊號集操作函式-9:53
94-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-20:19
7-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-14:48
62975-Blend學習之Loading載入動畫-24:59
2368-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-20:40
9542-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-5:56
36834-python單元測試框架pytest-10:30
24-C# Redis分散式鎖(RedLock) - 多節點-24:17
88-2020我終於成功搭建了Metasploitable3靶機-23:17
46651-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-3:37
262-Spring Boot第五彈,WEB開發初瞭解~-8:45
4643-What number should I guess next ?——由《鷹蛋》一題引發的思考-22:18
677-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-14:36
7-Unity Shader 00 - 梳理 Unity Shader 的基本結構-18:21
8-【小白學PyTorch】19 TF2模型的儲存與載入-10:10
4435-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-15:35
41-手把手教你AspNetCore WebApi:增刪改查-19:19
3921-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-17:45
43563-Blend學習之Loading載入動畫-4:15
72-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-2:37
73269-python使用xpath(超詳細)-12:13
99987-如何用5000行JS擼一個關係型資料庫-11:43
6235-spring-boot-route(七)整合jdbcTemplate運算元據庫-14:42
375-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-15:11
292-windows10開機後恢復關機前開啟的chrome網頁-11:59
58548-Unity Shader 00 - 梳理 Unity Shader 的基本結構-19:38
57-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-10:35
1-【小白學PyTorch】19 TF2模型的儲存與載入-0:22
25744-簡化ETL工作,編寫一個Canal膠水層-7:22
1134-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-17:24
224-C# Redis分散式鎖(RedLock) - 多節點-13:43
5-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-17:55
3347-Shiro入門學習---使用自定義Realm完成認證|練氣中期-12:49
7-Spring Boot第五彈,WEB開發初瞭解~-22:56
2554-What number should I guess next ?——由《鷹蛋》一題引發的思考-22:43
34556-VPS教程:搭建個人網盤教程—kodexplorer-20:22
1247-認證授權:IdentityServer4 - 資料持久化-6:13
659-【編輯推薦】2020年高等軟體工程課程期望與篤信-11:49
499-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-21:29
66-2020我終於成功搭建了Metasploitable3靶機-21:14
337-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-15:14
64639-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-6:15
92-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-16:51
29635-手把手教你AspNetCore WebApi:增刪改查-8:46
47888-python使用xpath(超詳細)-20:13
9-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-14:30
75319-VPS教程:搭建個人網盤教程—kodexplorer-21:44
384-【小白學PyTorch】19 TF2模型的儲存與載入-23:30
224-What number should I guess next ?——由《鷹蛋》一題引發的思考-13:28
454-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-2:59
38-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-16:53
82911-Shiro入門學習---使用自定義Realm完成認證|練氣中期-12:29
64445-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-18:57
3-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-2:32
1-2020我終於成功搭建了Metasploitable3靶機-20:29
29-C# Redis分散式鎖(RedLock) - 多節點-12:59
69343-spring-boot-route(七)整合jdbcTemplate運算元據庫-15:17
4-Unity Shader 00 - 梳理 Unity Shader 的基本結構-22:42
592-【編輯推薦】2020年高等軟體工程課程期望與篤信-11:11
13419-簡化ETL工作,編寫一個Canal膠水層-19:36
3-Spring Boot第五彈,WEB開發初瞭解~-11:47
334-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-9:15
8-windows10開機後恢復關機前開啟的chrome網頁-3:19
94794-手把手教你AspNetCore WebApi:增刪改查-10:55
8-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-20:22
434-認證授權:IdentityServer4 - 資料持久化-18:14
16375-Blend學習之Loading載入動畫-15:12
6972-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-13:21
1563-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-20:46
6-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-24:27
68441-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-7:51
3397-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-7:35
1413-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-20:59
11-Spring Boot第五彈,WEB開發初瞭解~-16:20
29889-認證授權:IdentityServer4 - 資料持久化-3:44
3-What number should I guess next ?——由《鷹蛋》一題引發的思考-6:18
64854-Shiro入門學習---使用自定義Realm完成認證|練氣中期-9:52
73517-簡化ETL工作,編寫一個Canal膠水層-19:16
25482-windows10開機後恢復關機前開啟的chrome網頁-17:55
8-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-15:40
922-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-15:47
612-spring-boot-route(七)整合jdbcTemplate運算元據庫-14:39
45871-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-8:40
4129-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-2:27
8398-VPS教程:搭建個人網盤教程—kodexplorer-15:17
3623-手把手教你AspNetCore WebApi:增刪改查-2:14
99893-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-2:37
45-2020我終於成功搭建了Metasploitable3靶機-8:46
195-【編輯推薦】2020年高等軟體工程課程期望與篤信-18:23
8-C# Redis分散式鎖(RedLock) - 多節點-18:48
8-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-5:44
4692-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-21:38
6424-【小白學PyTorch】19 TF2模型的儲存與載入-22:15
9246-Unity Shader 00 - 梳理 Unity Shader 的基本結構-9:22
8968-Shiro入門學習---使用自定義Realm完成認證|練氣中期-0:42
8-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-2:18
87765-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-24:17
242-windows10開機後恢復關機前開啟的chrome網頁-9:12
9278-spring-boot-route(七)整合jdbcTemplate運算元據庫-2:27
96491-簡化ETL工作,編寫一個Canal膠水層-15:37
7-What number should I guess next ?——由《鷹蛋》一題引發的思考-2:57
971-C# Redis分散式鎖(RedLock) - 多節點-20:41
9-VPS教程:搭建個人網盤教程—kodexplorer-18:19
58511-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-15:49
883-Spring Boot第五彈,WEB開發初瞭解~-22:45
98-【小白學PyTorch】19 TF2模型的儲存與載入-4:38
463-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-2:28
7-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-11:27
5-手把手教你AspNetCore WebApi:增刪改查-16:11
4782-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-19:21
9651-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-24:35
4-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-18:44
93444-Blend學習之Loading載入動畫-9:18
98-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-2:41
372-Unity Shader 00 - 梳理 Unity Shader 的基本結構-4:43
12262-【編輯推薦】2020年高等軟體工程課程期望與篤信-14:26
95544-認證授權:IdentityServer4 - 資料持久化-0:31
5658-Linux系統程式設計—訊號集操作函式-21:46
24-2020我終於成功搭建了Metasploitable3靶機-5:52
643-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-0:26
2928-What number should I guess next ?——由《鷹蛋》一題引發的思考-19:57
5-spring-boot-route(七)整合jdbcTemplate運算元據庫-13:26
43451-Linux系統程式設計—訊號集操作函式-18:38
72664-如何用5000行JS擼一個關係型資料庫-23:46
6-windows10開機後恢復關機前開啟的chrome網頁-2:49
521-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-0:52
12-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-5:27
1385-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-6:15
7-【編輯推薦】2020年高等軟體工程課程期望與篤信-13:35
2778-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-23:29
3-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-17:38
793-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-2:46
38168-Spring Boot第五彈,WEB開發初瞭解~-10:19
1-VPS教程:搭建個人網盤教程—kodexplorer-19:53
49121-2020我終於成功搭建了Metasploitable3靶機-15:23
3476-Shiro入門學習---使用自定義Realm完成認證|練氣中期-18:56
43211-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-22:27
7-認證授權:IdentityServer4 - 資料持久化-5:17
54234-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-22:54
4-【小白學PyTorch】19 TF2模型的儲存與載入-3:42
956-Unity Shader 00 - 梳理 Unity Shader 的基本結構-1:48
39263-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-24:33
4274-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-16:17
855-簡化ETL工作,編寫一個Canal膠水層-18:34
686-手把手教你AspNetCore WebApi:增刪改查-0:29
353-C# Redis分散式鎖(RedLock) - 多節點-14:17
1-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-6:41
3-C# Redis分散式鎖(RedLock) - 多節點-14:15
63212-Linux系統程式設計—訊號集操作函式-10:44
64-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-8:34
8961-VPS教程:搭建個人網盤教程—kodexplorer-20:22
1-【小白學PyTorch】19 TF2模型的儲存與載入-20:58
86832-Spring Boot第五彈,WEB開發初瞭解~-24:56
211-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-14:40
3212-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-14:50
366-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-2:31
25824-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-12:54
8116-2020我終於成功搭建了Metasploitable3靶機-7:33
6662-簡化ETL工作,編寫一個Canal膠水層-9:45
48-手把手教你AspNetCore WebApi:增刪改查-17:52
287-spring-boot-route(七)整合jdbcTemplate運算元據庫-10:54
566-windows10開機後恢復關機前開啟的chrome網頁-2:27
64-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-2:10
8-認證授權:IdentityServer4 - 資料持久化-0:53
96-Unity Shader 00 - 梳理 Unity Shader 的基本結構-0:40
8272-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-0:50
1-Shiro入門學習---使用自定義Realm完成認證|練氣中期-13:46
181-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-18:58
2829-What number should I guess next ?——由《鷹蛋》一題引發的思考-6:24
4-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-2:55
1625-【編輯推薦】2020年高等軟體工程課程期望與篤信-4:34
183-Shiro入門學習---使用自定義Realm完成認證|練氣中期-13:16
432-VPS教程:搭建個人網盤教程—kodexplorer-6:28
62877-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-24:20
564-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-18:27
11964-windows10開機後恢復關機前開啟的chrome網頁-10:48
86225-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-6:24
52823-python單元測試框架pytest-20:53
51662-【編輯推薦】2020年高等軟體工程課程期望與篤信-23:39
8845-2020我終於成功搭建了Metasploitable3靶機-16:12
5-spring-boot-route(七)整合jdbcTemplate運算元據庫-18:49
4-【小白學PyTorch】19 TF2模型的儲存與載入-20:50
5469-Spring Boot第五彈,WEB開發初瞭解~-8:28
5494-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-15:35
87-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-16:12
9-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-9:24
1832-C# Redis分散式鎖(RedLock) - 多節點-3:37
56444-認證授權:IdentityServer4 - 資料持久化-11:19
19-What number should I guess next ?——由《鷹蛋》一題引發的思考-19:49
7-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-10:50
66456-手把手教你AspNetCore WebApi:增刪改查-19:25
427-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-15:20
65-Unity Shader 00 - 梳理 Unity Shader 的基本結構-9:59
83888-python使用xpath(超詳細)-14:10
56-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-3:26
76591-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-6:25
223-C# Redis分散式鎖(RedLock) - 多節點-14:37
63-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/572)-4:22
6547-Unity Shader 00 - 梳理 Unity Shader 的基本結構-11:39
4728-如何用5000行JS擼一個關係型資料庫-13:13
9587-VPS教程:搭建個人網盤教程—kodexplorer-2:35
9155-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/448)-0:18
4528-簡化ETL工作,編寫一個Canal膠水層-10:24
752-Shiro入門學習---使用自定義Realm完成認證|練氣中期-6:58
6-windows10開機後恢復關機前開啟的chrome網頁-18:31
6-2020我終於成功搭建了Metasploitable3靶機-16:13
2632-認證授權:IdentityServer4 - 資料持久化-3:20
2288-手把手教你AspNetCore WebApi:增刪改查-20:35
3-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-7:25
8521-【最多推薦】如何用5000行JS擼一個關係型資料庫(18/441)-3:37
4557-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-9:35
61192-4 個問題圖解瀏覽器垃圾回收的過程。-11:38
846-spring-boot-route(七)整合jdbcTemplate運算元據庫-14:26
74-pytest之將多個測試用例放在一個類中,生成唯一臨時資料夾-14:20
8-【新聞頭條】美報告稱蘋果的App Store應用商店構成壟斷(3/86)-18:59
62-Spring Boot第五彈,WEB開發初瞭解~-10:24
4-What number should I guess next ?——由《鷹蛋》一題引發的思考-15:49
37-【編輯推薦】2020年高等軟體工程課程期望與篤信-20:23
12-工作流引擎Activiti與SpringBoot2整合--開源軟體誕生17-22:28
48621-【新聞頭條】看完這部紀錄片,我只想趕緊扔下手機逃跑(5/557)-1:24
62-最全總結 | 聊聊 Python 資料處理全家桶(配置篇)-23:47
68377-Linux系統程式設計—訊號集操作函式-16:37
89621-【小白學PyTorch】19 TF2模型的儲存與載入-10:32
2-pytorch和tensorflow的愛恨情仇之定義可訓練的引數-11:47
52416-VPS教程:搭建個人網盤教程—kodexplorer-22:10
68811-Spring Boot第五彈,WEB開發初瞭解~-4:29
9348-我竟在arm彙編除法演算法裡找到了leetcode某道題的解法-5:39
相關文章
- ABP VNext從單體切換到微服務微服務
- 從單體到微服務,軟體架構演化總覽微服務架構
- 微服務 | Spring Cloud(一):從單體SSM 到 Spring Cloud微服務SpringCloudSSM
- 奈飛架構Netflix從單體到微服務演變圖架構微服務
- 從單體架構到分散式微服務架構的思考架構分散式微服務
- 使用Apache Kafka實現從單體到事件驅動微服務 - swlhApacheKafka事件微服務
- 如何從 Docker Desktop 切換到 ColimaDocker
- 從NodeJS切換到Ruby on Rails - nikodunkNodeJSAI
- 從單體應用到微服務開發旅程微服務
- 從微服務到雲原生微服務
- 亞馬遜如何從單體中臺轉變到微服務? - All Things Distributed亞馬遜微服務
- 單體到微服務架構的涅槃重生之路?微服務架構
- 從單體遷移到微服務的十二種方法微服務
- SoundCloud從SOA轉換到微服務後加速了交付進度Cloud微服務
- 一起玩轉微服務(11)——一切從簡單開始微服務
- 我將從VS Code切換到VS Codium
- 為什麼Discord從Go切換到Rust?GoRust
- 如何從複雜單體應用快速遷移到微服務?微服務
- 為什麼我們從Yarn切換到pnpmYarnNPM
- 從單體到混亂的微服務,阿里雲託管式服務網格是如何誕生的?微服務阿里
- 不要從微服務開始!單體應用是你的朋友 - arnoldgalovics微服務
- 服務架構學習與思考(12):從單體架構到微服務架構的演進歷程架構微服務
- Redis主從切換Redis
- 實戰:如何優雅的從 Skywalking 切換到 OpenTelemetry
- 為什麼我們從Webpack切換到Vite - ReplitWebVite
- 為什麼我們從RabbitMQ切換到apache kafka?MQApacheKafka
- 從程式碼到部署微服務實戰(一)微服務
- docker Redis單機主從哨兵模式切換失敗DockerRedis模式
- RVM切換到rbenv[MacOS]Mac
- github從一個倉庫切換到另一倉庫Github
- 為什麼我從Java切換到Rust? Opensource.comJavaRust
- Redis sentinel主從切換Redis
- 手工切換MySQL主從MySql
- 從單體架構升級到微服務,在程式碼層面應注意的一些問題架構微服務
- linux 切換軟體源到國內代理加速地址Linux
- 使用API閘道器幫助單體到微服務的平滑過渡API微服務
- 使用SpringCloud將單體遷移到微服務SpringGCCloud微服務
- 單體和微服務幽默新解圖片微服務