.net core 這個東西感覺還是很不錯的,學習了一下,並且做了一個微服務(IP地址查詢服務) http://vju.cc/ip/ipquery
看上他的跨平台功能,所以就研究一下,中間有不少坑,有很多第三方類庫還不支持.net core,就連微軟自己也是三天兩頭的變,vs2015和vs2017開發就不一樣,有的能生成發布,有的不能生成發布。
我的最終目標是把項目部署到docker上,再實現容災,負載和集群功能,先來第一步吧。
下面就講一下具體的代碼吧!
項目的分層

項目用到了redis緩存最近的IP查詢數據。
部署在 linux 14上
用到的第三方類庫有:
- Autofac
- AutoMapper
- Dapper
- NLog
- StackExchange.Redis
- MySql.Data
IP查詢有兩個方式:
一是直接打開瀏覽器瀏覽頁面直接獲取客戶端IP,並查詢出IP及客戶端操作系統和瀏覽器信息輸出在界面上
輸出如下:

二是通過提供API的方法,主要針對第三方應用調用(后面的IP地址由調用方提供)
http://vju.cc/ip/api/iplookup/iplookup_paid/116.224.233.48
輸入如下:

默認提供json格式輸出,如果調用方需要xml格式輸出時,只需要在http請求的head里添加:Accept 為 application/xml 即可
源代碼帖起來麻煩,有興趣的可以拿下來瀏覽一下(沒找到哪里可以上傳附件,只能百度網盤了)
http://pan.baidu.com/s/1gfl0n1x
.net core研究
115476247
