摘要:
一、简要介绍 ABP vNext 是 ABP 框架作者所发起的新项目,目前可以用于生产环境。新的 ABP vNext 框架完全是基于 ASP .NET Core 进行开发,其完全模块化的组件库能够让开发人员拥有更多的选择空间。 ABP vNext 框架核心库比 ABP 框架更加精简,因为将原有许多的 阅读全文
摘要:
0.系列文章目录 1. "一、Abp 框架启动流程分析" 2. "二、模块系统" 3. "三、依赖注入" 4. "四、模块配置" 5. "五、系统设置" 6. "六、工作单元的实现" 7. "七、仓储与 Entity Framework Core" 8. "八、缓存管理" 9. "九、事件总线" 1 阅读全文
摘要:
0. 背景 在某些时候我们会使用到显卡对视频转码进行加速,此时可以使用 NVIDA 官方提供的 CUDA 镜像来进行加速,在这个 CUDA 镜像里面提供了完整的 NVIDA 驱动等环境,可以直接被 ffmpeg 调用以进行加速。 1. 配置基础环境 1.1 安装 NVIDIA Container T 阅读全文
摘要:
0. 问题 新版本上线之后,发现内存猛涨,入站流量猛增,不清楚具体原因,部分接口提示 OOM 异常,随后 Pod 直接崩溃无限重启。 1. 准备 Pod 已经接入了 NewRelic 和 Graylog,但是仍然没有办法找到真正的罪魁祸手,此时只能进入 Pod 容器当中抓取内存 Dump 信息。我们 阅读全文
摘要:
## 背景 起因是朋友在使用深信服的 Easy Connect 连接到内网之后,使用 `HttpClient` 访问对应内网的 API 站点均返回 **System.Net.Sockets.SocketException (10060)** 异常。但使用其他语言的原生 HTTP 库,比如 Golan 阅读全文
摘要:
目前项目当中存有 .NET Framework 和 .NET Core 两种类型的项目,但是都需要进行容器化将其分别部署在 Windows 集群和 Linux 集群当中。在 WCF 进行容器化的时候,遇到了以下几个问题:
1. 某些服务使用到了 WSHttpBinding 保护服务安全,要在容器里面加载 SSL 证书。
2. WCF 服务的日志,如何重定向到标准输出流? 阅读全文
摘要:
背景 在 CI/CD 流程当中,测试是 CI 中很重要的部分。跟开发人员关系最大的就是单元测试,单元测试编写完成之后,我们可以使用 IDE 或者 dot cover 等工具获得单元测试对于业务代码的覆盖率。不过我们需要一个独立的 CLI 工具,这样我们才能够在 Jenkins 的 CI 流程集成。 阅读全文
摘要:
问题 在 Bitbucket 使用 Linux 机器上 ssh-keygen 工具生成的公钥作为 API KEY,然后在 Jenkins 里面存储对应的 SSH 私钥,最后执行 Job 的时候,Windows Agent 提示 SSH 密钥不正确。 > git fetch --tags --forc 阅读全文
摘要:
一、环境准备 1.1 镜像仓库 整套 DevOps 流程使用 Harbor 作为内部镜像仓库,所有构建产物(镜像)都会推送到 Harbor,以备后续进行项目部署。Harbor 从 2.x 版本开始支持 OCI 标准镜像,如果是安装的 1.x 版本,在使用 Podman 构建镜像的时候,需要加上 -- 阅读全文
摘要:
一、简介 ABP vNext 使用 Volo.Abp.Sms 包和 Volo.Abp.Emailing 包将短信和电子邮件作为基础设施进行了抽象,开发人员仅需要在使用的时候注入 ISmsSender 或 IEmailSender 即可实现短信发送和邮件发送。 二、源码分析 2.1 启动模块 短信发送 阅读全文
摘要:
简介 ABP vNext 框架使用 xUnit 作为单元测试组件,官方的所有模块都编写了大量的 单元/集成测试 确保功能正常。由于 ABP vNext 模块化系统的原因,开发人员在建立单元测试项目的时候需要集成 Volo.Abp.UnitTest 项目,这样在执行单元测试的时候才不会缺少必要组件。 阅读全文
摘要:
环境准备 本篇文章使用的 ACME 客户端是基于 Docker 容器使用的,所以需要准备 Docker 运行环境。本文使用的是 CentOS 7.x 与 Docker CE - 19.03.13,且已经安装了 Docker Compose 工具。 我已经参考官方的 GitHub 文章编写了 acme 阅读全文