摘要: ## 打包工具选型 在 ASP.NET MVC 时代,我们常使用 `BundleCollection` 设置需要打包压缩的 js 和 css 文件,运行时框架会自动处理打包压缩过程并将最终结果传入响应。 ASP.NET Core 开始,不再提供内置的打包压缩组件,官方推荐 [WebOptimizer 阅读全文
posted @ 2023-06-15 10:17 莱布尼茨 阅读(847) 评论(2) 推荐(4) 编辑
摘要: 在项目开发和部署过程中,我们常常需要一套私有仓库,比如 `Code Repository`、`Package Repository`,`Docker Registry` 等。 + Code Repository:在 github 或 gitlab 或 gitee 等平台上创建私有项目;或搭建本地代码 阅读全文
posted @ 2023-06-02 10:41 莱布尼茨 阅读(309) 评论(0) 推荐(1) 编辑
摘要: 笔者个人理解:gitlab-runner 安装后就是一个监听状态的 runner,而通过 `gitlab-runner register` 注册的“实例”其实只是预定义的配置节,当消息抵达后,gitlab-runner 根据消息内容选择相应的配置节启动执行线程。为了方便阐述和理解,本文也将每个`配置 阅读全文
posted @ 2023-05-17 14:20 莱布尼茨 阅读(1719) 评论(0) 推荐(3) 编辑
摘要: 本文所述操作适用于兼容 S3 协议的所有存储框架,包括 AWS S3、Aliyun OSS、MinIO、Ceph 等。 不知为何,截止目前,S3 协议并不包含对象重命名的接口。如果有重命名对象的需求,一般能想到的就是重新上传改名之后的对象,然后从存储桶中将原名对象删除。很明显,这种方式好比大炮打蚊子 阅读全文
posted @ 2023-04-24 13:20 莱布尼茨 阅读(491) 评论(2) 推荐(1) 编辑
摘要: Vue现在已经迭代到 3+ 版本,阅读官方文档的过程中发现作者的一些理念和思路很合我口味,很多概念与方案都是基于解决实际问题提出并实现的,且在权衡利弊后勇于打破常规,比如如何看待关注点分离?。可见,Vue 之所以流行,不单单因为作者是国人,更应该是由于 Vue 作为新一代的解决方案提升了前端编程的体 阅读全文
posted @ 2023-02-27 10:36 莱布尼茨 阅读(535) 评论(0) 推荐(1) 编辑
摘要: 我们经常遇到需要定时执行某些任务的情况,比如清理缓存、异步结果轮询等,如果不打算造轮子,那么选择一款合适的定时任务组件就很关键了。所幸,.Net 世界中的选项并不多:) 选型 主要有以下四款: Quartz.Net:移植自 Java 生态的 Quartz,久经考验、成熟稳重,只是个人感觉有点过度设计 阅读全文
posted @ 2023-02-24 10:24 莱布尼茨 阅读(1719) 评论(14) 推荐(8) 编辑
摘要: 为什么选择 gRPC 历史 长久以来,我们在前后端交互时使用WebApi + JSON方式,后端服务之间调用同样如此(或者更久远之前的WCF + XML方式)。WebApi + JSON 是优选的,很重要的一点是它们两者都是平台无关的三方标准,且足够语义化,便于程序员使用,在异构(前后端、多语言后端 阅读全文
posted @ 2023-01-10 10:54 莱布尼茨 阅读(4943) 评论(8) 推荐(42) 编辑
摘要: 什么是结构化日志 我们记录日志惯常使用 log4j2、NLog 等日志组件,这些组件提供了输出到多种终端的能力,但是大部分时候我们选择将日志输出到操作系统的文件系统中,为什么呢?至少有一部分原因是记录的每条日志为字符串格式,且按时间由远往进顺序记录,打开文件可以直接人肉检索;如果这些日志记录到其它终 阅读全文
posted @ 2023-01-05 10:46 莱布尼茨 阅读(1353) 评论(2) 推荐(10) 编辑
摘要: 看到网上讨论 DDD 的文章越来越多,咱也不能甘于人后啊,以下是我对 DDD 的个人理解,短小精悍,不喜忽喷。 解决什么问题 传统模式,产品评审结束,开发人员就凭经验拆分模块,设计数据结构,然后写业务逻辑实现功能。问题在于,不同人的经验、理念不一样,同样的产品需求,最终的技术实现也会不一样;就算是同 阅读全文
posted @ 2022-02-21 14:28 莱布尼茨 阅读(1236) 评论(2) 推荐(4) 编辑
摘要: 本文从概念到实战,以一个假想产品——”电子货架标签“(Electronic Shelf Label,以下简称ESL)为例,介绍基于阿里云IoT的物联网应用开发。 数据交互流程 以云端下发命令到最终收到应答为例(虚线表示异步): LoRaWAN:ESL所采用的通讯协议; LoRaWAN NS:LoRa 阅读全文
posted @ 2021-08-02 10:12 莱布尼茨 阅读(767) 评论(0) 推荐(0) 编辑