日韩精品亚洲精品中文字幕乱伦AV|曰韩区二区三区日韩中文字幕五码|ady99久久人人看人人摸人人|动漫一区二区黄99精品视频在线|AV片在线观看亚洲中文国产精品|伦乱在线VA欧美性爱一二区|亚洲无码mv91热色视频|激情六月综合欧美精品中文

當前位置:首頁 > 軟件開放 > 正文內(nèi)容

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

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

↓推薦關注↓

?前言

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

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

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

阿里巴巴大神畢玄曾說過,"一個優(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)內(nèi)小型定時任務。繁多、復雜的定時任務建議用第三方調(diào)度平臺,例如:XXL-JOB。

4、ICore.Domain.Core這一層主要用于實現(xiàn)核心的業(yè)務邏輯!內(nèi)部主要包含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策略應加上白名單限制

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

加入惡意請求IP黑名單

防SQL注入攻擊

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

CORS策略應加上白名單限制

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

首先.Net Core同Spring Boot一樣都是自宿主程序,其不是必需在IIS內(nèi)部托管。實現(xiàn)跨平臺離不開.Net Core內(nèi)置的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.atlasseeker.com/post/87709.html

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

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

軟件開發(fā)項目流程(軟件項目開發(fā)管理流程)

軟件開發(fā)項目流程(軟件項目開發(fā)管理流程)

本篇文章給大家談談軟件開發(fā)項目流程,以及軟件項目開發(fā)管理流程對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、軟件開發(fā)過程一般有幾個階段 2、軟件開發(fā)的基本流程包括哪些 3、軟件開發(fā)流程 軟件開發(fā)過程一般有幾個階段 軟件開發(fā)的生命周期一般分為6個階段:計劃、需求分...

廈門思維軟件開發(fā)(廈門思維課程機構有哪些)

廈門思維軟件開發(fā)(廈門思維課程機構有哪些)

本篇文章給大家談談廈門思維軟件開發(fā),以及廈門思維課程機構有哪些對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、廈門軟件開發(fā)公司哪家好? 2、廈門艾孚思軟件開發(fā)有限公司怎么樣? 3、廈門好思維教育科技有限公司怎么樣? 4、廈門軟件開發(fā),廈門軟件開發(fā)多少錢 5...

怎么創(chuàng)建網(wǎng)站(怎么建網(wǎng)站)

怎么創(chuàng)建網(wǎng)站(怎么建網(wǎng)站)

本篇文章給大家談談怎么創(chuàng)建網(wǎng)站,以及怎么建網(wǎng)站對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、如何創(chuàng)建自己的網(wǎng)站平臺 2、怎樣自己創(chuàng)建一個網(wǎng)站? 3、怎么創(chuàng)建網(wǎng)站 4、怎么建網(wǎng)站呀! 5、怎么創(chuàng)建一個自己的網(wǎng)站 如何創(chuàng)建自己的網(wǎng)站平臺 創(chuàng)建自己的網(wǎng)站平臺...

蘋果碼怎么查真假(怎么查詢蘋果手機真?zhèn)未a)

蘋果碼怎么查真假(怎么查詢蘋果手機真?zhèn)未a)

今天給各位分享蘋果碼怎么查真假的知識,其中也會對怎么查詢蘋果手機真?zhèn)未a進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!本文目錄一覽: 1、蘋果手機怎么查真?zhèn)危?2、蘋果官網(wǎng)查序列號怎么看真假 3、蘋果手機怎樣查詢真?zhèn)? 4、蘋果序列號怎么查真?zhèn)螁?5、蘋果查...

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

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

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

帝國cms模板免費下載(帝國cms模板免費下載安裝)

帝國cms模板免費下載(帝國cms模板免費下載安裝)

本篇文章給大家談談帝國cms模板免費下載,以及帝國cms模板免費下載安裝對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、帝國CMS首頁怎么使用網(wǎng)絡上下載的帝國CMS模板,盡量詳細點,要是對應6.0版的,謝謝… 2、帝國CMS學校用模板,能直接修改后使用的,滿意后追加1...