2021年12月8日

如何在 ASP.NET Core 中构建轻量级服务

摘要: 在 ASP.NET Core 中处理 Web 应用程序时,我们可能经常希望构建轻量级服务,也就是没有模板或控制器类的服务。 轻量级服务可以降低资源消耗,而且能够提高性能。我们可以在 Startup 或 Program 类中创建这些轻量级服务或 API。 1. 使用 VS2022 创建 ASP.NET 阅读全文

posted @ 2021-12-08 08:09 编程宝库 阅读(2607) 评论(5) 推荐(9) 编辑

2021年12月2日

如何使用Docker构建开发环境

摘要: 我们在开发中都会遇到这样的问题:在本地开发好功能后,部署到服务器,或者其他人拉到本地接着开发时,会出现功能无法使用的情况。 这些异常情况,大多数时候是因为系统不同而导致的依赖差异。因此,为了解决这个问题,就产生基于 Docker 构建统一开发环境的需求。 有关 docker 的基本知识,可以参照 d 阅读全文

posted @ 2021-12-02 11:39 编程宝库 阅读(1368) 评论(0) 推荐(1) 编辑

2021年11月24日

ASP.NET 使用 Dispose 释放资源的四种方法

摘要: Dispose 和 Finalize 是运行的 .NET 和 .NET Core 应用程序释放占用的资源的两种方法。通常,如果应用程序中有非托管资源,应该显式地释放这些资源占用的资源。 由于 Finalize 的非确定性,以及在性能方面的成本很高,因此 Dispose 方法的使用频率远高于 Fina 阅读全文

posted @ 2021-11-24 12:11 编程宝库 阅读(1204) 评论(3) 推荐(3) 编辑

2021年11月23日

如何解决 ASP.NET Core 中的依赖问题

摘要: 依赖性注入是一种技术,它允许我们注入一个特定类的依赖对象,而不是直接创建这些实例。 使用依赖注入的好处显而易见,它通过放松模块间的耦合,来增强系统的可维护性和可测试性。 依赖注入允许我们修改具体实现,而不必改变依赖于它们的依赖类型。 ASP.NET Core 很重视依赖注入技术。ASP.NET Co 阅读全文

posted @ 2021-11-23 10:02 编程宝库 阅读(963) 评论(0) 推荐(1) 编辑

2021年11月22日

C# 从 UTF-8 流中读取字符串的正确方法

摘要: 我们下面的代码是从一个流 stream 中读取 UTF-8 编码的字符串。我们可以先考虑一下其中存在的潜在问题。 string ReadString(Stream stream) { var sb = new StringBuilder(); var buffer = new byte[4096]; 阅读全文

posted @ 2021-11-22 07:56 编程宝库 阅读(1519) 评论(3) 推荐(4) 编辑

2021年11月19日

Java将增加虚拟线程,挑战Go协程

摘要: 我们知道 Go 语言最大亮点之一就是原生支持并发,这得益于 Go 语言的协程机制。一个 go 语句就可以发起一个协程 (goroutin)。协程本质上是一种用户态线程,它不需要操作系统来进行调度,而是由用户程序自行管理和调度。它寄存于线程中,系统开销极小,可以显著的提高性能和并发能力。使用协程的优点 阅读全文

posted @ 2021-11-19 09:17 编程宝库 阅读(831) 评论(0) 推荐(0) 编辑

2021年11月18日

如何提高C# StringBuilder的性能

摘要: 本文探讨使用C# StringBuilder 的最佳实践,用于减少内存分配,提高字符串操作的性能。 在 .NET 中,字符串是不可变的类型。每当你在 .NET 中修改一个字符串对象时,就会在内存中创建一个新的字符串对象来保存新的数据。相比之下,StringBuilder 对象代表了一个可变的字符串, 阅读全文

posted @ 2021-11-18 10:42 编程宝库 阅读(1186) 评论(4) 推荐(11) 编辑

2021年11月17日

Go iota 原理和源码剖析

摘要: iota 是 Go 语言的一个保留字,用作常量计数器。由于 iota 具有自增特性,所以可以简化数字增长的常量定义。 iota 是一个具有魔法的关键字,往往令初学者难以理解其原理和使用方法。 本文会从书写方法、使用场景、实现原理以及优缺点等各方面剖析 iota 关键字。 1. 书写方法 正确写法: 阅读全文

posted @ 2021-11-17 12:07 编程宝库 阅读(538) 评论(0) 推荐(0) 编辑

2021年11月16日

数据分片的原则和经验

摘要: 本文提供了一些数据分片的一些原则和经验,遵循这些提示,有助于确保数据正确的分片,而不是阻碍你的应用程序的可扩展性。 新的 SaaS 初创公司很少考虑如何扩展他们的应用程序。当然,他们会设想有一天他们会需要扩张,并将纳入计划,但他们很少在早期就为可扩展性设计他们的应用程序。相反,他们更经常关注于完成他 阅读全文

posted @ 2021-11-16 11:15 编程宝库 阅读(604) 评论(0) 推荐(2) 编辑

2021年11月15日

Go defer 特性和使用场景

摘要: golang 的 defer 语句用于延迟调用。defer 会在当前函数返回之前执行 defer 注册的函数。比如 defer func_defer() 这样语句会让你注册一个函数变量到 defer 的全局链表中,在 defer 语句所在的函数退出之前调用。 defer 可以代替其它语言中 try… 阅读全文

posted @ 2021-11-15 16:28 编程宝库 阅读(388) 评论(0) 推荐(0) 编辑

导航