欧美亚洲综合图区在线|天天射天天干国产成卜|99久久免费国产精精品|国产的欧美一区二区三区|日韩中文字幕无码不卡专区|亚麻成人aV极品一区二区|国产成人AV区一区二区三|成人免费一区二区三区视频网站

當前位置:首頁 > 軟件開放 > 正文內容

iis日志代碼(iis日志怎么看)

軟件開放11個月前 (02-12)437

↓推薦關注↓

?前言

從實習到現(xiàn)在回想自己已經入行四年了,很慶幸自己一直還是從事著開發(fā)的工作。

這幾年不管是工作還是生活都有很多不甘與失落還有收獲,從學校出來之后有時候覺得自己的心態(tài)受不了小小的打擊,可能就像平凡的世界中的孫少平一樣,有著一顆敏感而脆弱的自尊心。

春種一粒粟,秋收萬顆子。從2021年1月份到現(xiàn)在一直沒有更新過博客,在這個播種的季節(jié)我想我應該要總結一下過去的技術經驗,對自己是提升,對別人可能或多或少都有幫助。

阿里巴巴大神畢玄曾說過,"一個優(yōu)秀的工程師和一個普通工程師的區(qū)別,不是滿天飛的架構圖,他的功底體現(xiàn)在所寫的每一行代碼上"。這句話我與諸君共思共勉!

分層目標

大道至簡:能提高開發(fā)效率,讓剛進公司的實習生也能快速上手CRUD

結構清晰:不僅要遵循DIP原則(降低耦合),而且也要保證每一層或每一個類庫職責單一,減少后期維護成本

擴展/復用:分層之后有很高的復用性和更方便的橫向擴展性

大道至簡:能提高開發(fā)效率,讓剛進公司的實習生也能快速上手CRUD

結構清晰:不僅要遵循DIP原則(降低耦合),而且也要保證每一層或每一個類庫職責單一,減少后期維護成本

擴展/復用:分層之后有很高的復用性和更方便的橫向擴展性

傳統(tǒng)三層架構

傳統(tǒng)的三層架構:表現(xiàn)層、業(yè)務邏輯層和數(shù)據(jù)訪問層,如下圖所示:

展開全文

DDD四層架構

基于DDD的四層架構:用戶接口層、應用層、領域層和基礎設施層,如下圖所示:

與傳統(tǒng)的三層架構相比DDD的分層架構將業(yè)務邏輯層拆為了應用層與領域層

下方左圖為傳統(tǒng)四層架構,右圖為依賴倒置后的四層架構。應用層與領域層提供接口,基礎設施層提供實現(xiàn)。

領域層不依賴任何一層,只專注與業(yè)務。個人認為基礎設施層迭代頻率要低于接口層,抽象程度高于表現(xiàn)層。所以讓表現(xiàn)層依賴基礎設施層更合適。

我的本系列博客對應的項目也是基于DDD的架構思想,當然也會加入自己的一些想法在其中。

想學習領域驅動設計的同學可移步《DDD 實戰(zhàn)課》

我的本系列博客對應的項目也是基于DDD的架構思想,當然也會加入自己的一些想法在其中。

想學習領域驅動設計的同學可移步《DDD 實戰(zhàn)課》

整體項目結構如下方三張圖所示:

層級介紹

1、ICore.WebApi這一層主要構建 RESTful 應用程序,提供HTTP服務。管道中間件、過濾器、跨域、路由、模型驗證等都在此配置。

3、ICore.Task這一層主要用于處理系統(tǒng)內小型定時任務。繁多、復雜的定時任務建議用第三方調度平臺,例如:XXL-JOB。

4、ICore.Domain.Core這一層主要用于實現(xiàn)核心的業(yè)務邏輯!內部主要包含Entity(實體)、Domain Event(領域事件)、Domain Service(領域服務)等。

5、ICore.Domain.Abstractions這一層主要用于定義一些基類的接口和領域事件的接口。例如:IAggregateRoot聚合根接口、IEntity、IEntity TKey 實體接口等。

6、ICore.Infrastructure.Core這一層主要對整個應用程序提供基礎實現(xiàn),例如倉儲的實現(xiàn)、工作單元模式的實現(xiàn)、Redis緩存、隊列服務等。

7、ICore.Test這一層主要用于對整個程序的單元測試,減少不必要的BUG以及提高測試效率。

其它規(guī)范

編碼、格式規(guī)范

我強烈建議大家看阿里巴巴Java開發(fā)手冊,以上面的規(guī)范來約束自己的編碼。

配置文件規(guī)范

全部采用json格式文件

建立映射類,使用IOptions T方式讀取配置信息

數(shù)據(jù)庫連接字符串、數(shù)據(jù)傳輸?shù)募用苊荑€等不建議寫在配置文件中,應放到分布式配置中心中

全部采用json格式文件

建立映射類,使用IOptions T方式讀取配置信息

數(shù)據(jù)庫連接字符串、數(shù)據(jù)傳輸?shù)募用苊荑€等不建議寫在配置文件中,應放到分布式配置中心中

加入惡意請求IP黑名單

防SQL注入攻擊

日志應記錄請求時間、操作人ID、IP地址、是否成功等重要信息

CORS策略應加上白名單限制

生產環(huán)境的接口文檔不對外暴露

加入惡意請求IP黑名單

防SQL注入攻擊

日志應記錄請求時間、操作人ID、IP地址、是否成功等重要信息

CORS策略應加上白名單限制

生產環(huán)境的接口文檔不對外暴露

首先.Net Core同Spring Boot一樣都是自宿主程序,其不是必需在IIS內部托管。實現(xiàn)跨平臺離不開.Net Core內置的kestrel高性能服務器,如下圖所示(圖片來自官網(wǎng)):

修改端口

1、在launchSettings.json文件中修改站點信息,把IIS Express節(jié)點刪掉

2、在appsettings.json中設置啟動端口

"Kestrel": {

"Endpoints": {

"Https": {

"Url": "https://*:8000"

},

"Http": {

"Url": "http://*:8001"

}

}

}

3、在Program中設置啟動端口

app.Run( "http://*:8001");

加入Startup.cs

iis日志代碼(iis日志怎么看)

從.NET 6.0開始已去除了Startup.cs 文件,依賴注入服務和Middleware全在Program.cs中配置。

我從寫.NET Core 2.0開始一直到現(xiàn)在,Startup.cs文件我覺得還是有必要存在,個人使用習慣而已

改造Program.cs

using ICore.WebApi;

var builder = WebApplication.CreateBuilder(args);

var startup = new Startup(builder.Configuration);

startup.ConfigureServices(builder.Services);

startup.Configure(builder.Build);

重寫Startup.csnamespaceICore.WebApi

{

publicclassStartup

{

publicIConfiguration Configuration { get; }

publicStartup( IConfiguration configuration) = Configuration = configuration;

// This method gets called by the runtime. Use this method to add services to the container.

publicvoidConfigureServices( IServiceCollection services)

{

services.AddControllers;

// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle

services.AddEndpointsApiExplorer;

services.AddSwaggerGen;

}

// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.

publicvoidConfigure( WebApplication app)

{

if(app.Environment.IsDevelopment)

{

app.UseSwagger;

app.UseSwaggerUI;

}

app.UseAuthorization;

app.MapControllers;

app.Run( "http://*:8001");

}

}

}

Run起來!

使用命令行啟動dotnet ICore.WebApi.dll --urls="http://*:8001" --ip="127.0.0.1" --port=8001

這一節(jié)就到這里,后面會繼續(xù)上新!

轉自:江北

轉自:江北

- EOF -

點擊標題可跳轉

微軟公布 .NET最新的編程語言支持策略

.NET 提升開發(fā)效率的強大多功能工具箱

.NET 6.0 開發(fā)的配置中心開源項目

看完本文有收獲?請轉發(fā)分享給更多人

推薦關注「DotNet」,提升.Net技能

點贊和在看就是最大的支持??

掃描二維碼推送至手機訪問。

版權聲明:本文由飛速云SEO網(wǎng)絡優(yōu)化推廣發(fā)布,如需轉載請注明出處。

本文鏈接:http://www.landcheck.net/post/87709.html

標簽: iis日志代碼
分享給朋友:

“iis日志代碼(iis日志怎么看)” 的相關文章

高樓陽臺怎么裝修安全又好看(高層樓房的陽臺怎么裝修比較好)

高樓陽臺怎么裝修安全又好看(高層樓房的陽臺怎么裝修比較好)

今天給各位分享高樓陽臺怎么裝修安全又好看的知識,其中也會對高層樓房的陽臺怎么裝修比較好進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!本文目錄一覽: 1、高層住宅陽臺怎么裝修 2、高層頂樓露臺應該如何裝修 3、6米挑高陽臺怎么裝修好 4、買了高樓住宅,陽臺怎么裝?...

個人介紹ppt模板免費下載素材(個人介紹PPT內容)

個人介紹ppt模板免費下載素材(個人介紹PPT內容)

本篇文章給大家談談個人介紹ppt模板免費下載素材,以及個人介紹PPT內容對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、求精美簡歷 ppt模板 2、哪個網(wǎng)站能不花錢下載PPT模板呢 3、哪個網(wǎng)站可以免費下載到精美的PPT模板 4、ppt模板免費下載 5、下...

pycharm圣誕樹源碼教程(圣誕樹代碼Python)

pycharm圣誕樹源碼教程(圣誕樹代碼Python)

今天給各位分享pycharm圣誕樹源碼教程的知識,其中也會對圣誕樹代碼Python進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!本文目錄一覽: 1、pycharm中的圣誕樹怎么加動態(tài)新圖片 2、圣誕樹python用的是什么曲線 3、如何將pycharm編寫的源代碼文件...

發(fā)行數(shù)字藏品需要什么手續(xù)(數(shù)字藏品能升值嗎)

發(fā)行數(shù)字藏品需要什么手續(xù)(數(shù)字藏品能升值嗎)

本篇文章給大家談談發(fā)行數(shù)字藏品需要什么手續(xù),以及數(shù)字藏品能升值嗎對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、數(shù)字藏品怎么制作 2、朋友支招怎么做數(shù)字藏品? 3、數(shù)字藏品銀行申請流程 4、用稀臺元宇宙saas經營數(shù)字藏品需要具備什么資質? 5、國家支持數(shù)...

微信商家小程序怎么申請視頻(怎么樣申請微信小程序商家)

微信商家小程序怎么申請視頻(怎么樣申請微信小程序商家)

今天給各位分享微信商家小程序怎么申請視頻的知識,其中也會對怎么樣申請微信小程序商家進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!本文目錄一覽: 1、微信小程序怎么申請注冊? 2、小程序直播怎么申請開通? 3、微信小程序如何申請 微信小程序申請方法 4、怎樣注冊微信...

傳奇超級變態(tài)手游橫屏版本(傳奇超級變態(tài)手游橫屏版本大全)

傳奇超級變態(tài)手游橫屏版本(傳奇超級變態(tài)手游橫屏版本大全)

今天給各位分享傳奇超級變態(tài)手游橫屏版本的知識,其中也會對傳奇超級變態(tài)手游橫屏版本大全進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!本文目錄一覽: 1、傳奇手游:傳奇版本五花八門,究竟哪個才是最好? 2、西游變態(tài)版?zhèn)髌媸钟误刺覄澦銌?3、傳奇手游有哪些經典版本 4、...