上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页
摘要: 什么是正则表达式 很可能你使用过Windows/Dos下用于文件查找的通配符(wildcard),也就是和?。如果你想查找某个目录下的所有的Word文档的话,你会搜索.doc。在这里,*会被解释成任意的字符串。和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能更精确地描述你的 阅读全文
posted @ 2021-04-17 11:43 .Neterr 阅读(294) 评论(0) 推荐(0)
摘要: 介绍 类似于XPath在xml文档中的定位,JsonPath表达式通常是用来路径检索或设置Json的。其表达式可以接受“dot–notation”和“bracket–notation”格式,例如$.store.book[0].title、$[‘store’][‘book’][0][‘title’] 阅读全文
posted @ 2021-04-05 10:26 .Neterr 阅读(1603) 评论(0) 推荐(0)
摘要: 概念 多租户软件架构就是在同一个系统实例上运行不同用户,能做到应用程序共享,服务自治?,并且还能做到数据互相隔离的软件架构思想。 需求 公司有多个集群需要访问配置中心项目,不同集群访问到的数据可能不同,所以每个租户一个独立的数据库,但是共用一个配置中心项目。 开始 解析租户信息 可以通过域名、URL 阅读全文
posted @ 2021-03-15 00:25 .Neterr 阅读(178) 评论(0) 推荐(0)
摘要: 简介 DotLiquid是流行的Liquid模板引擎的.NET实现。 官网:http://dotliquidmarkup.org/ 语法:https://shopify.github.io/liquid/ 源码:https://github.com/dotliquid/dotliquid 简单案例 阅读全文
posted @ 2021-03-13 23:51 .Neterr 阅读(2145) 评论(0) 推荐(0)
摘要: 参考: https://github.com/stefanprodan/AspNetCoreRateLimit/wiki https://www.cnblogs.com/EminemJK/p/12720691.html (使用Redis缓存) 简介 在网站或API应用中,为了防止恶意攻击,通常希望屏 阅读全文
posted @ 2021-03-11 17:38 .Neterr 阅读(2500) 评论(0) 推荐(2)
摘要: 公司的产品一直紧跟 .net core 3.0 preview 不断升级, 部署到 Linux 服务器后, 偶尔会出现某个进程CPU占用100%. 由于服务部署在云上, 不能使用远程调试; 在局域网内的Linux 服务器 或 Windows开发机上又不能重现这个问题, 联想到Java的jstack, 阅读全文
posted @ 2021-03-09 21:38 .Neterr 阅读(1508) 评论(0) 推荐(0)
摘要: 介绍 DiagnosticSource它本身是一个基于发布订阅模式的工作模式,由于它本身的实现方式是异步的,所以不仅仅可以把它用到日志上,还可以用它实现异步操作,或者用它简化实现发布订阅的功能。DiagnosticSource本身是一个抽象类,我们最常用到的是它的子类DiagnosticListen 阅读全文
posted @ 2021-03-09 19:54 .Neterr 阅读(323) 评论(0) 推荐(0)
摘要: 使用场景 用于解决复杂业务问题,如:自定义字段、自定义评分、自定义更新、自定义聚合分析等 缺点 性能问题。官方文档性能优化中明确指出使用脚本会导致性能低; 如非必要,不要使用脚本,尽量用其他方式替换,如下: 使用脚本进行前缀查询: 1POST seats/_search 2{ 3 "query": 阅读全文
posted @ 2021-03-08 23:39 .Neterr 阅读(2721) 评论(0) 推荐(0)
摘要: 参考: https://www.cnblogs.com/zyh000/p/10253796.html 概念 ADO.NET简单理解就是,微软定义了一堆关于操作数据源的接口和类,是C#语言访问数据源的一种方式,ADO.NET 类位于 System.Data.dll 常用对象 Connection → 阅读全文
posted @ 2021-03-07 03:16 .Neterr 阅读(287) 评论(0) 推荐(0)
摘要: List是线程不安全的,通过一个数组存储数据,当容量达到数组上限时,创建一个新数组,因此存在线程安全问题 SafeList是在做增删改操作时返回一个新的ReadonlyList,所以不存在线程安全问题 /// <summary> /// SafeList is mutable, but it use 阅读全文
posted @ 2021-02-19 19:24 .Neterr 阅读(1969) 评论(0) 推荐(0)
摘要: 自定义Requirement案例 单个Handler public class MinimumAgeRequirement : AuthorizationHandler<NameAuthorizationRequirement>, IAuthorizationRequirement { public 阅读全文
posted @ 2021-02-13 18:25 .Neterr 阅读(705) 评论(0) 推荐(0)
摘要: 同步,异步 和 阻塞,非阻塞之间的区别? 同步,异步,是描述被调用方的。阻塞,非阻塞,是描述调用方的。 同步不一定阻塞,异步也不一定非阻塞。没有必然关系。 举个简单的例子: 1 老张把水壶放到火上,一直在水壶旁等着水开。(同步阻塞) 2 老张把水壶放到火上,去客厅看电视,时不时去厨房看看水开没有。( 阅读全文
posted @ 2021-02-07 16:43 .Neterr 阅读(168) 评论(0) 推荐(0)
摘要: Shell Shell :可以理解为后台运行的程序(命令解释器),作用是用来解析你输入的命令,搜索环境变量,找到命令文件,运行命令文件。 Shell 是一个命令解释器,它在操作系统最外层,负责与用户对话。shell保存在/etc/shells目录中 Shell 既是一种脚本编程语言,也是一个连接内核 阅读全文
posted @ 2021-01-31 18:14 .Neterr 阅读(158) 评论(0) 推荐(0)
摘要: CAP集成到项目 添加Package 数据库使用Sqlserver,消息队列使用RabbitMQ <PackageReference Include="DotNetCore.CAP" Version="3.1.2" /> <PackageReference Include="DotNetCore.C 阅读全文
posted @ 2021-01-28 20:38 .Neterr 阅读(729) 评论(0) 推荐(0)
摘要: 简介 NuGet包Microsoft.AspNetCore.Diagnostics中提供了几个与异常处理相关的中间件。当ASP.NET Core应用在处理请求过程中出现错误时,中间件捕获异常,并将错误信息返回给客户端。 需要注意的是,与“异常处理”有关的中间件,一定要尽早添加,这样,它可以最大限度的 阅读全文
posted @ 2021-01-27 23:29 .Neterr 阅读(869) 评论(0) 推荐(0)
摘要: public interface IServiceLocator { object GetService(Type type); } public class ServiceLocator : IServiceLocator { private readonly ILifetimeScope _li 阅读全文
posted @ 2021-01-16 15:10 .Neterr 阅读(49) 评论(0) 推荐(0)
摘要: 简介 对象池化技术可以显著地提升性能,尤其是当对象的初始化过程代价较大或者频率较高。 它是一种基于使用预先分配资源集合的性能优化思想,简单说对象池就是对象的容器,当一个对象被激活时,便被从池中取出,当对象被停用时,它又被放回池中。 在一些对性能比较敏感的应用中,我们可以通过对象复用的方式避免垃圾对象 阅读全文
posted @ 2021-01-14 15:45 .Neterr 阅读(488) 评论(0) 推荐(0)
摘要: 简介 .net core中有两种读取配置的方式: 通过注入IConfiguration读取配置 通过强类型的Options,通过注入来获取到配置对象。 Options类的命名规则:{Object}Options 建议使用强类型的Options,这样在你想获取某个配置时,只需要注入对应的Options 阅读全文
posted @ 2021-01-11 00:17 .Neterr 阅读(2153) 评论(0) 推荐(0)
摘要: 简介 简单说,就是将对象的创建和销毁工作交给DI容器来进行,调用方只需要接收注入的对象实例即可。 涉及到的nuget包: Microsoft.Extensions.DependencyInjection.Abstractions:抽象定义; Microsoft.Extensions.Dependen 阅读全文
posted @ 2021-01-10 19:52 .Neterr 阅读(566) 评论(0) 推荐(0)
摘要: 简介 微软官方的开源项目eShopOnContainers中,用到了一个实现中介者模式的类库:MediatR。 他是一个低调的类库,致力于解决一个简单的问题:解耦进程内消息的发送与处理。 中介者模式的定义为:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互应用,从而使其耦合松散, 阅读全文
posted @ 2021-01-05 17:27 .Neterr 阅读(256) 评论(0) 推荐(0)
摘要: 简介 CAP 是一个EventBus,同时也是一个在微服务或者SOA系统中解决分布式事务问题的一个框架。它有助于创建可扩展,可靠并且易于更改的微服务系统。 分布式事务是在分布式系统中不可避免的一个硬性需求,CAP 没有采用两阶段提交(2PC)这种事务机制,而是采用的 本地消息表+MQ 这种经典的实现 阅读全文
posted @ 2021-01-04 23:43 .Neterr 阅读(1511) 评论(0) 推荐(1)
摘要: 概述 聚合查询,它是在搜索的结果上,提供的一些聚合数据信息的方法。比如:求和、最大值、平均数等。 基本语法 GET <index_name>/_search { "aggs": { "<aggs_name>": { // 聚合名称需要自己定义 "<agg_type>": { "field": "<f 阅读全文
posted @ 2021-01-02 00:06 .Neterr 阅读(235) 评论(0) 推荐(0)
摘要: 文本分析器(Text analysis) 在ES当中,只有text类型的字段才会用到全文索引。我们在建立索引和搜索时,都会用到分析器。 分析器使ES支持全文索引,搜索的结果是和你搜索的内容相关的,而不是你搜索内容的确切匹配。 分析器之所以能够使搜索支持全文索引,都是因为有分词器(tokenizati 阅读全文
posted @ 2021-01-01 16:38 .Neterr 阅读(418) 评论(0) 推荐(0)
摘要: 简介 查询有两种方式: QueryString查询 通过query参数传递查询语句(?q=name:zhangsan) DSL查询 通过DSL语句查询,可以写出灵活复杂的查询语句,语言以json请求体的形式出现 查询响应信息说明 { "took" : 346, // 整个检索消耗的时间, 单位是毫秒 阅读全文
posted @ 2021-01-01 09:49 .Neterr 阅读(378) 评论(0) 推荐(0)
摘要: 添加文档: 添加单个文档 POST index1/user/1000 { "id":1001, "name":"张三", "age":20, "sex":"男" } 如果不指定id,将随机生成一个,id的字段名是_id 删除文档: 删除指定id的文档 DELETE /blog/article2/1 阅读全文
posted @ 2020-12-27 19:52 .Neterr 阅读(156) 评论(0) 推荐(0)
摘要: 概念 Mapping(映射)用来定义文档包含的字段名、字段数据类型以及文档如何存储和索引这些字段的规则 显式映射 & 动态映射 显式映射 显式映射以完全控制字段的存储和索引方式。 显式映射的意义: 哪些字符串字段应该作为全文字段(text)处理。 哪些字段包含数字、日期或地理位置。 日期值的格式。 阅读全文
posted @ 2020-12-21 21:00 .Neterr 阅读(529) 评论(0) 推荐(0)
摘要: 索引 查看全部索引 GET _cat/indices?v&pretty health:当前服务器健康状态: green(集群完整) yellow(单点正常、集群不完整) red(单点不正常) status:索引打开、关闭状态 index:索引名 uuid:索引统一编号 pri:主分片数量 rep:副 阅读全文
posted @ 2020-12-20 11:28 .Neterr 阅读(294) 评论(0) 推荐(0)
摘要: 参考: https://blog.csdn.net/u010476739/article/details/118339679 https://www.cnblogs.com/wuxiaoqian726/archive/2011/03/19/1988931.html 先说下结论: 如果系统不考虑全球化 阅读全文
posted @ 2020-12-16 19:32 .Neterr 阅读(4798) 评论(0) 推荐(3)
摘要: 概述 授权就是某人针对某个资源可以做什么操作。 某人:登录系统的用户 资源:可以任何形式的资源,比如订单、产品、页面...。权限判断中不一定需要资源的参与,比如只要用户登录,就允许使用系统中所有功能。此时整个系统就是资源,允许所有操作。 操作:比如查看、审核、新增、修改... dotnet core 阅读全文
posted @ 2020-12-14 20:52 .Neterr 阅读(1296) 评论(0) 推荐(1)
摘要: 简介 .netcore中的配置模块可以将你的配置文件自动读取成一个树状结构(逻辑上是树状,实际上是扁平化的),这样你就可以方便快捷的获取配置数据了。 可使用多种类型数据源(json、内存、xml、ini、command、env...),还可以自定义配置源; 支持多环境版本、如果多次添加相同的配置,后 阅读全文
posted @ 2020-12-09 21:45 .Neterr 阅读(3401) 评论(0) 推荐(4)
摘要: 接口的默认实现 实现类中可以不实现接口中有默认实现的方法,以下代码不报错 public interface IPerson { void Say() { Console.WriteLine("hello"); } } public class Teacher:IPerson { } 但是不可以通过实 阅读全文
posted @ 2020-12-08 22:34 .Neterr 阅读(226) 评论(0) 推荐(0)
摘要: 介绍 早期路由系统 .NET Core2.2之前的框架中,中间件管道的结尾有一个Router中间件,也就是路由中间件,这个路由中间件会把HTTP请求和路由数据发送给MVC的一个组件,它叫做MVC Router Handler。 这个MVC 路由 Handler就会使用这些路由数据来决定哪个Contr 阅读全文
posted @ 2020-12-08 22:20 .Neterr 阅读(903) 评论(1) 推荐(4)
摘要: 概念 外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。门面模式又称为外观模式,它是一种对象结构型模式 何时使用 当子系统比较复杂,我们提供一个统一的对外接口用于简化子系统调用,比如项目中每个 阅读全文
posted @ 2020-11-30 10:50 .Neterr 阅读(104) 评论(0) 推荐(0)
摘要: 观察者模式用于解耦调用者与被调用者,项目中用的EventBus是观察者模式的实现 详细代码在这里:https://www.cnblogs.com/fanfan-90/p/11971178.html 阅读全文
posted @ 2020-11-30 10:27 .Neterr 阅读(93) 评论(0) 推荐(0)
摘要: Set数据类型 Api (1).SetAdd:添加数据,可以单独1个key-1个value,也可以1个key-多个value添加 (2).SetLength:求key集合的数量 (3).SetContains:判断key集合中是否包含指定值 (4).SetRandomMember:随机获取指定key 阅读全文
posted @ 2020-11-25 21:51 .Neterr 阅读(1345) 评论(0) 推荐(0)
摘要: APP、前后端分离、后端项目之间调用都涉及接口调用,传输的时候如何防止被抓包、偷窥、伪造、超时、重放 解决方案: token授权认证,防止未授权用户获取数据 时间戳,防止超时重放 签名,防止数据篡改 HTTPS,防止数据明文传输 Token: 就是一个经过加密或签名的临时令牌,需要设置过期时间,每次 阅读全文
posted @ 2020-11-25 20:14 .Neterr 阅读(462) 评论(0) 推荐(0)
摘要: dotnet cli (Command-Line Interface) .net 源代码和二进制文件管理工具。需要安装 .NET Core SDK。 终端执行 dotnet --info 可以打印出有关 .NET Core 安装和计算机环境的详细信息。 命令: 查看版本 dotnet --versi 阅读全文
posted @ 2020-11-22 02:27 .Neterr 阅读(2039) 评论(0) 推荐(0)
摘要: 设置vs支持调试源码 调试-选项-调试-常规 调试-选项-调试-符号 查看dll路径以及符号加载情况: 调试-窗口-模块 .NET Core源码: https://github.com/dotnet/aspnetcore 阅读全文
posted @ 2020-11-09 15:49 .Neterr 阅读(255) 评论(0) 推荐(0)
摘要: CodeTemplate(模板声明标签) 创建好一个模板后第一步要指明这是一个C#语言的模板 <%@ CodeTemplate Language="C#" TargetLanguage="C#" Description="Generates a class including a special i 阅读全文
posted @ 2020-11-08 23:38 .Neterr 阅读(156) 评论(0) 推荐(0)
摘要: 介绍 NuGet是.NET的软件包管理器。NuGet Gallery 是所有软件包作者和消费者都使用的中央软件包存储库。 简单来说,nuget包解决了dll引用的问题,开发者可以通过打包,然后发布到公有主机或者私有主机上,供其他开发者使用。可以大大的提高创建一个.NET应用的效率。 修改Nuget包 阅读全文
posted @ 2020-11-07 17:13 .Neterr 阅读(388) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页