Just store UTC? Not so fast! Handling Time zones is complicated.
Should you store dates & times in your database as UTC? It’s pretty standard advice if you’re working in a system that needs to record dates and times from many different time zones. But this advice doesn’t hold true when dealing with dates and times in the future; here are some things you need to consider.
AgileConfig - 轻量级配置中心1.2.0发布,全新的UI
AgileConfig自发布以来有个“大问题”-UI太丑。因为当初这个项目是给自己用的,连UI界面都没有,全靠手动在数据库里改配置。后来匆匆忙忙使用bootstrap3简单的码了一些界面就发布出来了,易用性上也做的不够好。对此我一直耿耿于怀。终于在过年期间动手翻新UI。
dotnet 5 从 IL 层面分析协变返回类型新特性
在 C# 9.0 里面添加的一个新特性是支持协变返回类型,也就说子类重写了基类的抽象或虚拟方法,可以在返回值里面返回协变的类型,也就是返回值的类型可以是继承原本子类返回值类型的子类。本文将来从 IL 的层面和运行时告诉大家这个新特性为什么需要 dotnet 5.0 才能支持...
Apollo 1.5.0 发布,开源分布式配置中心
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务端基于 Spring Boot 和 Spring Cloud 开发,打包后可以直接运行,不需要额外安装 Tomcat 等应用容器。Java 客户端不依赖任何框架,能够运行于所有Java运行时环境,同时对 Spring/Spring Boot 环境也有额外支持。.Net 客户端不依赖任何框架,能够运行于所有...
gRPC 1.24.2 发布,谷歌开源的高性能 RPC 框架
gRPC 1.24.2 发布了。gRPC 是 Google 开源的高性能、通用 RPC 框架,面向移动和 HTTP/2 设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。
gRPC 1.24.0 发布,谷歌开源的高性能 RPC 框架
gRPC 1.24.0 发布了。gRPC 是 Google 开源的高性能、通用 RPC 框架,面向移动和 HTTP/2 设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。主要更新内容如下:CoregRPC Core 开始依赖于 C++ 标准库,如 libstdc++,具体取决于平台。这适用于所有包装的库,它们也具有此新的依赖关系。如果套接字初始化失败,则捕获错误。 (#19766)收到 GOAWA...
Elasticsearch 7.3.2 发布,分布式搜索和数据分析引擎
Elasticsearch 7.3.2 发布了,Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎。
Elasticsearch 6.8.3 发布,分布式搜索和数据分析引擎
Elasticsearch 6.8.3 发布了,Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎。
Consul 1.6 发布,支持 L7 路由
HashiCorp Consul 1.6 已发布,此版本支持一组新特性,以使用第 7 层路由和流量管理。它还提供了一个新特性“Mesh 网关”,实现透明、跨网络的连接。当然,这些特性可以跨平台工作,对 Kubernetes 提供一流的支持,并且在任何云或专用网络上都可以轻松地部署到更传统的环境中。这实现了 HashiCorp Consul 实现多云服务网络的目标。
ASP.NET Core + fluentValidation + Swagger
原文从基础开始每次写代码, 都想好好的把接口说明规范号, 不幸的是, 拖拖拉拉直到代码已经很庞大了,回过头来添加缺失的文档就是一个艰巨的任务, 嗯, 艰巨到直接忽略了。ASP.NET Core支持API文档有了很大的进步, 特别是在一些第三方库的帮助下, 写API文档就像写注释一样简单明了,与代码逻辑一致(很多东西都可以从代码衍生出来。首先,通过进入项目Properties并单击Bui...
How to port desktop applications to .NET Core 3.0
In this post, I will describe how to port a desktop application from .NET Framework to .NET Core. I picked a WinForms application as an example. Steps for WPF application are similar and I’ll describe what needs to be done different for WPF as we go. I will also show how you can keep using the WinForms designer in Visual Studio even though it is under development and is not yet available for .NET Core projects.
如何更精准地设置 C# / .NET Core 项目的输出路径?(包括添加和删除各种前后缀)
我们都知道可以通过在 Visual Studio 中设置输出路径(OutputPath)来更改项目输出文件所在的位置。对于 .NET Core 所使用的新 csproj 格式来说,你可能会发现实际生成路径中带了 netcoreapp3.0 或者 net472 这样的子文件夹。然而有时我们并不允许生成这样的子文件夹。本文将介绍可能影响实际输出路径的各种设置。
虽然不抱希望但也愿.Net和Java之争暂得平息
虽然不抱希望但也愿.Net和Java之争暂得平息我在刚开始学编程的时候就经常来博客园,当时博客园基本是.Net的天下,从那时开始.Net和Java哪个好就一直在打,这些年没怎么看博客园了,回来发现到了今天居然还在争论,让我不由得想来分析一下这个问题,这里只考虑技术层面,而不谈什么大道理。第一是大家关心的整体薪资分布,作为工程师或高级工程师,决定薪资的因素很多时候不光决定于你的技术,也决定于公司...
Asp.Net Core 轻松学-多线程之取消令牌
前言取消令牌(CancellationToken) 是 .Net Core 中的一项重要功能,正确并合理的使用 CancellationToken 可以让业务达到简化代码、提升服务性能的效果;当在业务开发中,需要对一些特定的应用场景进行深度干预的时候,CancellationToken 将发挥非常重要的作用。1. 多线程请求合并数据源在一个很常见的业务场景中,比如当请求一个文章详细信息的时候,...
Getting Started with CQRS – Part 1
Most developers are used to creating and handling CRUD (create, read, update, delete) systems for operations that divide tasks into updating and searching for data. When it comes to the problems this kind of well-known practice causes when considering the huge number of different frameworks, solutions, and infrastructural issues that arise every day, the life of those same developers can get tricky.
Announcing .NET Core 2.2 Preview 2
Today, we are announcing .NET Core 2.2 Preview 2. We have great improvements that we want to share and that we would love to get your feedback on, either in the comments or at dotnet/core 1938. ASP.NET Core 2.2 Preview 2 and Entity Framework 2.2 Preview 2 are also releasing today. We are also announcing C# 7.3 and ML.NET 0.5.
How To Implement AutoMapper In ASP.NET Core MVC Application
In this demo, I will show how to utilize the Automapper library efficiently. Automapper makes our lives easy with minimal steps. In a nutshell, AutoMapper is an object-object mapper. It transforms the...
ELK日志系统之使用Rsyslog快速方便的收集Nginx日志
常规的日志收集方案中Client端都需要额外安装一个Agent来收集日志,例如logstash、filebeat等,额外的程序也就意味着环境的复杂,资源的占用,有没有一种方式是不需要额外安装程序就能实现日志收集呢?Rsyslog就是你要找的答案!RsyslogRsyslog是高速的日志收集处理服务,它具有高性能、安全可靠和模块化设计的特点,能够接收来自各种来源的日志输入(例如:file,tcp...
Building a blogging app with Blazor: Getting Setup
In this series I’m going to be building a simple blogging platform using Blazor. By then end I'm hoping to have the following features: List of all blog posts View specific post Protected admin area Add post Edit post Delete post I'll be using the client-side configuration of Blazor for these posts. And as I’m working on a Mac I’m going to use VS Code as much as possible.