原创 .NET Core原生DI擴展之基於名稱的注入實現

接觸 .NET Core 有一段時間了,最大的感受無外乎無所不在的依賴注入,以及抽象化程度更高的全新框架設計。想起三年前 Peter 同學手寫 IoC 容器時的驚豔,此時此刻,也許會有不一樣的體會。的確,那個基於字典實現的 IoC

原创 原生JavaScript實現Hexo博客推薦功能

有時候,我不禁在想,我們到底處在一個什麼樣的時代呢?而之所以會有這樣的疑問,則是因爲我們的習慣在不斷地被這個時代向前推進,就像我用了兩年多的魅藍Note6屏幕出現了問題,掃視了一圈新手機,居然再找不出一款帶實體鍵的手機,劉海屏、水

原创 使用 jsDelivr 爲 Hexo 博客提供高效免費的CDN加速

最近給博客做了升級,從3.x升級到了4.x,主要是在官網看到了關於靜態頁面生成效率提升的內容。衆所周知,Hexo在文章數目增加以後會越來越慢。博主大概是從14年年底開始使用Hexo這個靜態博客的,截止到目前一共有176篇博客,其中

原创 《Web API 的設計與開發》讀書筆記

設計優美的Web API: 易於使用、便於更改、健壯性好、不怕公開 REST的兩層含義: 指符合Fielding的REST架構風格的Web服務系統 指使用符合RPC風格的XML或JSON + HTTP接口的系統(不使用SOAP)

原创 百度地圖加載海量標註性能優化策略

在上一篇博客中關於Vue表單驗證的話題裏,我提到了這段時間在做的城市配載功能,這個功能主要着眼於,如何爲客戶提供一條路線最優、時效最短、裝載率最高的路線。事實上,這是目前物流運輸行業智能化、專業化的一個趨勢,即面向特定行業的局部最

原创 從 .NET Core 2.2 升級到 3.1 的踩坑之旅

有時候,版本更新太快並不是一件好事。雖然,兩週一個迭代的“敏捷”開發依然被客戶嫌棄交付緩慢,可一邊是前端領域“求不要再更新了,學不動了”的聲音,一邊則是.NET Core從1.x到2.x再到3.x的高歌猛進。版本更新太快,帶來的是

原创 .NET Core + ELK搭建可視化日誌分析平臺(上)

Hi,各位朋友,大家好!歡迎大家關注我的博客,我的博客地址是: https://blog.yuanpei.me。今天是遠程辦公以來的第一個週末,雖然公司計劃在遠程兩週後恢復正常辦公,可面對着每天都有人離開的疫情,深知這一切都不會那

原创 又見AOP之基於RealProxy實現WCF動態代理

最近一直在研究Mongodb和ElasticSearch之間同步數據的問題,苦於到目前爲止,並沒有取得任何實質性的進展。偶爾“趁得浮生半日閒暇”,看一看Web API設計方面的書籍,和前輩交流下項目中的歷史遺留問題,最爲直觀的感受

原创 通過動態Controller實現從WCF到Web API的遷移.

在《又見AOP之基於RealProxy實現WCF動態代理》這篇文章中,我和大家分享了關於使用動態代理來簡化WCF調用過程的相關內容,當時我試圖解決的問題是,項目中大量通過T4生成甚至手動編寫的“代理方法”。今天,我想和大家分享的是

原创 使用ASP.NET Core和Hangfire實現HTTP異步化方案

Hi,大家好,我是Payne,歡迎大家一如既往地關注我的博客。今天這篇博客裏的故事背景,來自我工作中的一次業務對接,因爲客戶方提供的是長達上百行的XML,所以一度讓更喜歡使用JSON的博主感到沮喪,我這裏不是想討論XML和JSON

原创 Vue快速實現通用表單驗證

本文開篇第一句話,想引用魯迅先生《祝福》裏的一句話,那便是:“我真傻,真的,我單單知道後端整天都是CRUD,我沒想到前端整天都是Form表單”。這句話要從哪裏說起呢?大概要從最近半個月的“全棧工程師”說起。項目上需要做一個城市配載

原创 通過EF/Dapper擴展實現數據庫審計功能

相信大家都有過週末被電話“吵醒”的經歷,這個時候,客服同事會火急火燎地告訴你,客戶反饋生產環境上某某數據“異常”,然後你花費大量時間去排查這些錯誤數據,發現這是客戶使用某一種“騷”操作搞出來的“人禍”。可更多的時候,你不會這麼順利

原创 使用Liquid實現簡單的數據交換

在平時的開發工作中,接口對接是一件無可避免的事情。雖然在“前後端分離”的大趨勢下,後端的角色逐漸轉換爲數據接口的提供者,然而在實際的應用場景中,我們面對的往往是各種不同的“數據”,譬如企業應用中普遍使用的企業服務總線(ESB),這

原创 Referrer還是Referer? 一個迷人的錯誤

詩人鄭愁予曾經在一首詩中寫道:我達達的馬蹄是個美麗的錯誤,我不是歸人,是個過客。而對我來說,十九歲之前的我,一樣是個沉浸在詩歌中的文藝少年。十九歲之後的我,作爲一名程序員,更多的是邂逅各種錯誤。可偏偏人類世界對待錯誤從來都不寬容,

原创 使用Python開發插件化應用程序

插件化應用是個老話題啦,在我們的日常生活中更是屢見不鮮。無論是多年來臃腫不堪的Eclipse,亦或者是擴展豐富著稱的Chrome,乃至近年來最優秀的編輯器VSCode,插件都是這其中重要的組成部分。插件的意義在於擴展應用程序的功能