29 热度

.NET CORE下最快比较两个文件内容是否相同的方法 - WAKU - 博客园

最近项目有个需求,需要比较两个任意大小文件的内容是否相同,要求如下:项目是.NET CORE,所以使用C#进行编写比较方法文件大小任意,所以不能将文件内容全部读入到内存中进行比较(更专业点说,需要使用非缓存的比较方式)不依赖第三方库越快越好为了选出最优的解决方案,我搭建了一个简单的命令行工程,准备了两个大小为912MB的文件,并且这两个文件内容完全相同.在本文的最后,你可以看到该工程的Main方法的代码.下面我们开始尝试各个比较方法,选出最优的解决方案:比较两个文件是否完全相同,首先想到的是用哈希算法(如MD5,SHA)算出两个文件的哈希值,然后进行比较.废话少说,撸起袖子写一个MD5比较方法...

收录时间: 2019-06-22
分类: .NET Core
贡献者: Rector
26 热度

.NET Core: Past, Present, and Future

During the latest edition of Microsoft Build, Microsoft's .NET program manager Scott Hunter published an article stating that .NET Core is the future of .NET...

收录时间: 2019-06-22
分类: .NET Core
贡献者: Rector
14 热度

Microsoft Feature Toggle Feature Flag Library: A First Look

As the creator of the .NET FeatureToggle library that has over half a million downloads on NuGet, I recently learned (thanks @OzBobWA) with some interest that Microsoft is working on a feature toggle / feature flag library...

收录时间: 2019-06-21
分类: .NET Core
贡献者: Rector
42 热度

.NET Core 3.0 with Scott Hunter

.NET Core 3 will be a major milestone with tons of new features, performance updates and support for new workloads. In this episode, Richard Lander and Scott Hunter get together to discuss some of the highlights that developers can look forward to in this new release. ...

收录时间: 2019-06-21
分类: .NET Core
贡献者: Rector
19 热度

Deploying WCF and .NET Core applications to a single Kubernetes cluster

In my previous post, I showed how to take a WCF service and containerize it using Visual Studio. By doing so, this gives us the opportunity to push our heritage (aka legacy) application to the cloud either in Azure App Service using Web App for Containers, Azure Container Instances (ACI), or in the ...

收录时间: 2019-06-21
分类: .NET Core
贡献者: Rector
34 热度

Using High-Performance Techniques to Base64 Encode a GUID

It’s been a little while since my last high-performance post, but my use of the techniques and features continues! In this post, I want to present a more practical example which I hope will help to illustrate a real-world use case for some of the new .NET Core performance focused API changes.Scenari...

收录时间: 2019-06-21
分类: .NET Core
贡献者: Rector
AD 友情赞助
26 热度

The Evolving Infrastructure of .NET Core

This post will be interesting if you are interested in build infrastructure or want a behind-the-scenes look at how we build a product as big as .NET Core. It doesn’t describe new features or sample code that you should use in your next application. Please tell us if you like these types of posts. We have a few more like this planned, but would appreciate knowing if you find this type of information helpful.

收录时间: 2019-06-19
分类: .NET Core
贡献者: Rector
37 热度

Making a tiny .NET Core 3.0 entirely self-contained single executable

I've always been fascinated by making apps as small as possible, especially in the .NET space. No need to ship any files - or methods - that you don't need, right? I've blogged about optimizations you can make in your Dockerfiles to make your .NET containerized apps small, as well as using the ILLInk.Tasks linker from Mono to "tree trim" your apps to be as small as they can be.

收录时间: 2019-06-18
分类: .NET Core
贡献者: Rector
30 热度

升维打击,设计之道

升维打击,设计之道《三体》让我们了解了什么是“降维打击”,在软件设计领域很多时候需要反其道而行。对于某个问题,如果不能有效的解决,可以考虑是否可以上升一个维度,从高维视角审视问题往往可以找到捷径。软件设计是抽象的艺术,“升维打击”实际上就是“维度”层面的抽象罢了。目录一、源起:一个接口,多个实现二、根据当前上下文来过滤目标服务三、将这个方案做得更加通用一点四、我们是否走错了方向?一、源起:一个接口,多个实现上周在公司做了一个关于.NET Core依赖注入的培训,有人提到一个问题:如果同一个服务接口,需要注册多个服务实现类型,在消费该服务会根据当前上下文动态对选择对应的实现。这个问题我会被经常问...

收录时间: 2019-06-17
分类: .NET Core
贡献者: Rector
25 热度

.NET Core 3.0 Preview 6 发布,新增用于 ARM64 的 Alpine Docker 镜像

.NET Core 3.0 Preview 6 已发布,其中包括用于编译程序集的更新,以改进启动性能,以及通过对链接器和 EventPipe 的改进来优化应用程序的大小。此外,.NET Core 团队还为 Alpine on ARM64 发布了新的 Docker 镜像。下载地址:https://dotnet.microsoft.com/download/dotnet-core/3.0(支持 Windows, macOS 和 Linux)

收录时间: 2019-06-17
分类: .NET Core
贡献者: Rector
27 热度

ZooKeeper 实现分布式锁

ZooKeeper 是一个典型的分布式数据一致性解决方案,分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅、负载均衡、分布式协调/通知、集群管理、Master 选举、分布式锁等功能。节点在介绍 ZooKeeper 分布式锁前需要先了解一下 ZooKeeper 中节点(Znode),ZooKeeper 的数据存储数据模型是一棵树(Znode Tree),由斜杠(/)的进行分割的路径,就是一个 Znode(如 /locks/my_lock)。每个 Znode 上都会保存自己的数据内容,同时还会保存一系列属性信息。Znode 又分为以下四种类型:

收录时间: 2019-06-17
分类: .NET Core
贡献者: Rector
29 热度

Building A .NET Core 3 Scheduled Job Worker Service

The .NET Core CLI comes with tons of pre-built project templates! One of the new templates that will be included with .NET Core 3will be for building worker services.Combining .NET Core worker services with Coravelcan help you build lightweight background job scheduling applications very quickly. Le...

收录时间: 2019-06-14
分类: .NET Core
贡献者: Rector
232 热度

.NET CORE上传文件到码云仓库【搭建自己的图床】

.NET CORE上传文件到码云仓库【搭建自己的图床】先建一个公共仓库(随意提交一个README文件或者.gitignore文件保证master分支的存在),然后到gitee的个人设置页面找到【私人令牌】菜单创建一个access_token...

收录时间: 2019-06-08
分类: .NET Core
贡献者: Rector
82 热度

.Net Core 微服务容器系列基础目录篇

本系列项目将会以.net core+Docker+K8s来搭建,当然你用java来改写一下也是没问题的,因为并没有什么业务代码,很简单哈。如果你学习完整个系列,最终会得到什么呢?最终会得到一个运行在k8s中的简单...

收录时间: 2019-06-08
分类: .NET Core
贡献者: Rector
31 热度

Scale a Kubernetes Deployment with .NET Core

Scale a Kubernetes Deployment with .NET Core

收录时间: 2019-06-04
分类: .NET Core
贡献者: Rector
AD 友情赞助
72 热度

如何在ASP.NET Core自定义中间件中读取Request.Body和Response.Body的内容?

最近在徒手造轮子,编写一个ASP.NET Core的日志监控器,其中用到了自定义中间件读取Request.Body和Response.Body的内容,但是编写过程,并不像想象中的一帆风顺,ASP.NET Core针对Request.Body和Response.Body的几个特殊设计,导致了完成以上功能需要绕一些弯路。

收录时间: 2019-05-31
分类: .NET Core
贡献者: Rector
38 热度

CQRS之旅——旅程3(订单和注册限界上下文)

旅程3:订单和注册限界上下文CQRS之旅的第一站“寓言家和鳄鱼是一样的,只是名字不同” --约翰·劳森描述:订单和注册上下文有一部分职责在会议预订的过程中,在此上下文中,一个人(注册者)可以购买特定会议的座位。还可以为已购买的座位分配与会者的名称(这在第5章“准备发布V1版本”中进行了描述)。这是我们CQRS旅程的第一站,因此团队决定实现一个核心的、但自包含的系统部分——订单和注册。对与会者来...

收录时间: 2019-05-31
分类: .NET Core
贡献者: Rector
42 热度

张高兴的 .NET Core IoT 入门指南:(四)使用 SPI 进行通信

什么是 SPI和上一篇文章的 I2C 总线一样,SPI(Serial Peripheral Interface,串行外设接口)也是设备与设备间通信方式的一种。SPI 是一种全双工(数据可以两个方向同时传输)的串行通信总线,由摩托罗拉于上个世纪 80 年代开发[1],用于短距离设备之间的通信。SPI 包含 4 根信号线,一根时钟线 SCK(Serial Clock,串行时钟),两根数据线 MOS...

收录时间: 2019-05-29
分类: .NET Core
贡献者: Rector
63 热度

.net core webapi jwt 更为清爽的认证 ,续期很简单(2)

.net core webapi jwt 更为清爽的认证  后续:续期以及设置Token过期续期: 续期的操作是在中间件中进行的,续期本身包括了前一个Token的过期加发放新的Token,所以在说续期前先说Token过期在开始之前先增加相应的配置:续期间隔 和 续期携带给前端的新Token的Head.jwtConfig同步修改"Jwt": {"Issuer": "issuer","Au...

收录时间: 2019-05-28
分类: .NET Core
贡献者: Rector
54 热度

IoTSharp v0.1-alpha 发布,基于.Net Core 的 物联网平台

IoTSharp 是一个 基于.Net Core 开源的物联网基础平台, 支持 HTTP、MQTT 协议, 属性数据和遥测数据协议简单类型丰富,是一个用于数据收集、处理、可视化与设备管理的 IoT 平台。

收录时间: 2019-05-20
分类: .NET Core
贡献者: Rector
AD 友情赞助