- 博客(40)
- 资源 (28)
- 收藏
- 关注
转载 markdown特殊符号语法
符号说明对应编码&AND符号&<小于<>大于>_空格 ¿倒问号¿?问号?«左书名号«»右书名号»“”引号"‘左单引号‘’右单引号&rsquo:“左双引号&ld...
2020-07-31 13:49:46 697
转载 HttpCachePolicy类
Namespace:System.WebAssembly:System.Web.dll包含可用于设置特定于缓存的 HTTP 标头以及用于控制 ASP.NET 页输出缓存的方法。public sealed class HttpCachePolicy继承 Object → HttpCachePolicy注释有关 HTTP 标头和控制缓存的背景信息,请参阅万维网联合会(W3C)网站上提供的 RFC 2616:超文本传输协议-HTTP/1.1。、属性名称说明UtcTimes
2020-07-31 10:46:08 167
转载 .NET Core开源API网关 – Ocelot中文文档
Ocelot是一个用.NET Core实现并且开源的API网关,它功能强大,包括了:路由、请求聚合、服务发现、认证、鉴权、限流熔断、并内置了负载均衡器与Service Fabric、Butterfly Tracing集成。这些功能只都只需要简单的配置即可完成,下面我们会对这些功能的配置一一进行说明。介绍简单的来说Ocelot是一堆的asp.net core middleware组成的一个管道。当它拿到请求之后会用一个request builder来构造一个HttpRequestMessage发到下游的真
2020-07-30 09:31:46 558
转载 video标签的属性和事件用法大全
1、video 属性<!-- video 不支持 IE8及以下版本浏览器,支持三种视频格式:MP4,WebM 和 Ogg --> <video src="test.mp4" controls width="400" height="300"></video> <!-- 禁止下载 --> <video src="test.mp4" controls controlslist="nodownload" width="400" height="
2020-07-29 15:58:40 3204
转载 Docker&kubernetes的一些小技巧
# 只下载 不安装 : yum install --downloadonly --downloaddir=/root httpd# 快速更改主机名称nmcli general hostname [YOUR NEW HOSTNAME]systemctl restart systemd-hostnamed# 将镜像导出为文件(在离线环境中,可先在一台可以上网的机器上下载好镜像,再导出为文件,到拷到内网机器上导入)docker save -o my_ubuntu_v3.tar runoob/ubun
2020-07-29 15:57:34 172
转载 .NET Core API网关Ocelot(十七)【委托处理程序,Raft(实验功能不能用于生产环境)】
Ocelot允许用户将委托处理程序添加到HttpClient传输中。 这个功能在github #208中提出,我确定它会以各种方式被使用。之后我们在GitHub#264中进行了扩展。用法为了将委托处理程序添加到HttpClient传输中,有两件重要的事情要做。首先,为了创建一个可以用于委托处理程序的类,它必须如下所示。 我们将在asp.net core容器中注册这些处理程序,以便您可以将您已注册的其他服务注入到处理程序的构造函数中。public class FakeHandler : Delegat
2020-07-29 15:56:24 380
转载 .NET Core API网关Ocelot(十六)【负载均衡】
Ocelot能通过可用的下游服务对每个Route进行负载平衡。 这意味着您可以扩展您的下游服务,并且Ocelot可以有效地使用它们。可用的负载均衡器的类型是:LeastConnection -最少连接,跟踪哪些服务正在处理请求,并把新请求发送到现有请求最少的服务上。该算法状态不在整个Ocelot集群中分布。RoundRobin - 轮询可用的服务并发送请求。 该算法状态不在整个Ocelot集群中分布。NoLoadBalancer - 不负载均衡,从配置或服务发现提供程序中取第一个可用的下游服务。
2020-07-29 15:36:35 633
转载 .NET Core API网关Ocelot(十五)【请求Id和关联Id,中间件注入和重写】
Ocelot支持一个客户端以头的形式发送requestid。 如果设置了,一旦中间件管道中可用,Ocelot便会使用这个requestid进行日志记录。 Ocelot也会使用指定头将requireid转发给下游服务。如果在日志配置中你设置IncludeScopes为true,你还可以在日志中获取asp.net core的请求id。为了是用requestid,有两种选择。全局在ocelot.json的GlobalConfiguration配置块中如下设置。这样所有进入Ocelot的请求都会起作用。
2020-07-29 15:03:42 2054 1
转载 .NET Core API网关Ocelot(十四)【转换Claims,日志,跟踪】
Ocelot允许用户访问claims并把它们转换到头部,请求字符串参数和其他claims中.这仅在用户通过身份验证后才可用。用户通过身份验证之后,我们运行claims转换中间件.这个中间件允许在授权中间件调用之前转换claims.当用户身份验证之后,首先会调用claims转换到头的中间件,然后调用claims转换到查询字符串的中间件,最后调用claims转换到downstream路径中间件.执行转换的语法对于每个处理都是相同的。在Route配置中,使用特定名称AddClaimsToRequest,Add
2020-07-29 14:41:11 1222
转载 .NET Core API网关Ocelot(十三)【转换Headers】
Ocelot允许在请求下游服务之前和之后转换头部.目前Ocelot只支持查找和替换.这个功能在Github #190提出.我确定这个功能可以在各个方面发挥作用。添加到请求这个功能在GitHub #313被提出。如果你想在你的上游请求中添加一个头,请在ocelot.json文件的Route中添加如下配置:"UpstreamHeaderTransform": { "Uncle": "Bob"}上面例子中,一个键为Uncle,值为Bob的头将被添加到上游服务中。也支持占位符(看下面)。添
2020-07-29 12:00:41 685
转载 .NET Core API网关Ocelot(十二)【流量限制,缓存,Qos服务质量】
Ocelot支持上游的请求限制,以便您的下游服务不会过载。 此功能是由GitHub上的@geffzhang添加! 非常感谢。好了,为了让Route获得流量限制,你需要添加下面的json到Route中。"RateLimitOptions": { "ClientWhitelist": [], "EnableRateLimiting": true, "Period": "1s", "PeriodTimespan": 1, "Limit": 1}ClientWhit
2020-07-29 11:16:31 1059
转载 .NET Core API网关Ocelot(十一)【管理】
Ocelot支持在运行时通过一个认证的Http API修改配置。有两种方式对其验证, 使用Ocelot的内置IdentityServer(仅用于向管理API验证请求)或将管理API验证挂接到您自己的IdentityServer中。如果要使用管理API,您需要做的第一件事就是引入相关的NuGet软件包。Install-Package Ocelot.Administration这将使管理API所需的一切减少。提供你自己的IdentityServer挂接到你自己的IdentityServer,你只需要
2020-07-29 10:52:55 568
转载 .NET Core API网关Ocelot(十)【Websockets】
Ocelot额外支持代理websockets。这个功能在问题 212中被提出。为了是Ocelot代理websocket,你需要做如下事情。在你的Configure方法中,你要告知应用程序使用WebSockets。 Configure(app =>{ app.UseWebSockets(); app.UseOcelot().Wait();})然后在你的ocelot.json中添加如下代码,用于配置WebSockets代理一个Route。{ "Downstream
2020-07-28 14:32:43 1324
转载 .NET Core API网关Ocelot(九)【Authentication,Authorisation】
为了验证Routes并随后使用Ocelot的任何基于声明的功能,如授权或使用令牌中的值修改请求。 用户必须像往常一样在他们的Startup.cs中注册认证服务,但他们给每个注册提供了一个方案(认证提供商密钥),例如public void ConfigureServices(IServiceCollection services){ var authenticationProviderKey = "TestKey"; services.AddAuthentication()
2020-07-28 13:40:05 496
转载 .NET Core API网关Ocelot(八)【Kubernetes】
此功能是问题345的一部分。 添加对kubernetes提供商的支持。Ocelot将在给定的命名空间中调用k8s端点API,以获取pod的所有端点,然后在它们之间进行负载平衡。 Ocelot曾经使用服务api将请求发送到k8s服务,但是在PR 1134中对此进行了更改,因为该服务未达到预期的负载平衡。您需要做的第一件事是安装在Ocelot中提供kubernetes支持的NuGet软件包。Install-Package Ocelot.Provider.Kubernetes然后将以下内容添加到您的Co
2020-07-28 12:01:38 595
转载 .NET Core API网关Ocelot(七)【服务发现,Service Fabric】
Ocelot允许您指定服务发现提供程序,并使用它来查找Ocelot正在将请求转发给下游服务的主机和端口。目前,这仅在GlobalConfiguration部分中受支持,这意味着所有Route将使用相同的服务发现提供程序,以便在Route级别指定ServiceName。Consul您需要做的第一件事是安装在Ocelot中提供Consul支持的NuGet软件包。Install-Package Ocelot.Provider.Consul然后将以下内容添加到您的ConfigureServices方法中。
2020-07-28 11:31:44 618
转载 .NET Core API网关Ocelot(六)【GraphQL】
好吧!你明白我的意思Ocelot并不直接支持GraphQL,但有这么多人问起它,我想表明整合graphql-dotnet库是多么容易请参阅示例项目OcelotGraphQL。 结合使用graphql-dotnet项目和Ocelot的DelegatingHandler功能,这很容易实现。 不过,我现在不打算更加密切地与GraphQL集成。 查看示例的自述文件,应该给了你足够的指导如何去做!祝你好运,玩得开心:>...
2020-07-27 15:39:08 270
转载 .NET Core API网关Ocelot(五)【请求聚合】
Ocelot允许您指定聚合多个普通Routes的Aggregate Routes(聚合路由),并将其响应映射到一个对象中。一般用于当您有一个客户端向服务器发出多个请求,而这些请求可以合并成一个的时候。此功能允许您通过Ocelot实现前端类型结构的后端。此功能是问题 79的一部分,并且作为问题 298的一部分进行了进一步改进。为了设置它,你必须在ocelot.json中做如下的事情。 这里我们已经指定了两个普通的Routes,每一个都有一个Key属性。 然后,我们使用RouteKeys列表中的键指定组成两
2020-07-27 14:48:45 662
转载 .NET Core API网关Ocelot(四)【Routing】
Ocelot的主要功能是接管进入的http请求并把它们转发给下游服务。目前是以另一个http请求的形式(将来可能是任何传输机制)。Ocelot将路由一个请求到另一个请求描述为ReRoute。为了在Ocelot做任何工作,都需要在配置中设置一个ReRoute。{ "ReRoutes": [ ]}为了设置ReRoute,你需要如下所示添加一个ReRoute到ReRoutes的json数组。{ "DownstreamPathTemplate": "/api/posts/{pos
2020-07-27 14:30:14 382
转载 .NET Core API网关Ocelot(三)【配置】
配置有两个部分。 一组ReRoutes和一个GlobalConfiguration。 ReRoutes是告诉Ocelot如何处理上游请求的对象。Globalconfiguration有些奇特,可以覆盖ReRoute节点的特殊设置。 如果您不想管理大量ReRoute特定设置,这将非常有用。{ "ReRoutes": [], "GlobalConfiguration": {}}这是一个ReRoute配置示例,你不需要全部都设置,但这是目前可用的所有设置:{ "Dow
2020-07-24 17:21:03 1065
转载 ReSharper配置及用法(转)
1:安装后,Resharper会用他自己的英文智能提示,替换掉vs2010的智能提示,所以我们要换回到vs2010的智能提示2:快捷键。是使用vs2010的快捷键还是使用Resharper的快捷键呢?我是使用re的快捷键3:Resharper安装后,会做几件事情,这几件事情对于除此使用者,比较麻烦,因此归纳总结一下,以资参考。(1)、会将选项——文本编辑器——C#——常规——自动列出成员 这个选择框的勾选去掉。这样当你使用某个方法的时候,便不会提示参数,是一个很郁闷的事情。可以手动勾上。(2)
2020-07-24 14:58:26 2079
转载 .NET Core API网关Ocelot(二)【不支持】
Ocelot不支持一下几点…分块编码 - Ocelot将始终获取body大小并返回Content-Length头。 如果这不适合你的场景,只能表示抱歉!转发host头 - 您发给Ocelot的host头不会转发给下游服务。显然这会打破一切 ????Swagger - 我已经多次看过从Ocelot的ocelot.json构建swagger.json,但它看起来不适合我有Ocelot就够了。如果您想在Ocelot中使用Swagger,那么您必须生成自己的swagger.json,并在Startup.
2020-07-23 10:39:59 313
转载 Resharper使用详解
万恶的360文档解除复制的限制Ctrl + Shift + i 打开控制台,也可以鼠标右键,选最后一个检查也可以打开控制台,输入:setInterval = null; //将内置无限循环函数设置为空setTimeout = null; //将内置定时循环函数设置为空$("*").unbind(); //将所有标签的监听事件解除绑定执行后随便复制;更快捷的方式:F12=>F1,选中禁用js===========================================
2020-07-22 13:07:44 2616
转载 Resharper详细教程
前言原文中部分快捷键在8.2版本中不适用,我已改正,并用红色标注出来在线API:https://www.jetbrains.com/help/resharper/Introduction__Index.htmlReshaper是什么即便是那些整天攻击 .NET 和 C# 的人,也常常不得不承认 Visual Studio 确实是个够强大的 IDE,除非他认为更少的 IDE 功能和命令行调试才是更强大的。可是,即便如此,仍阻止不了一些第三方的个人和厂商开发出一些插件来让 VS 变得更强大。Resh
2020-07-22 10:13:04 7033
转载 MDN之Web 开发技术【Object.assign()】
Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。语法Object.assign(target, ...sources)参数target目标对象。sources源对象。返回值目标对象。描述如果目标对象中的属性具有相同的键,则属性将被源对象中的属性覆盖。后面的源对象的属性将类似地覆盖前面的源对象的属性。Object.assign 方法只会拷贝源对象自身的并且可枚举的属性到目标对象。该方法使用源对象的[[Get]]和目标对
2020-07-21 11:56:17 318
转载 MongoDB的BSON类型
BSON类型目录BSON 类型BSON 几种特殊类型BSON 是一种二进制序列化后的格式,用于存储文档并被MongoDB用来远程调用。BSON的规范在 bsonspec.org 网站BSON TypeBSON主要有以下类型:TypeNumberAliasNotesDouble1“double”String2“string”Object3“object”Array4“array”Binary data5“binDat
2020-07-18 15:15:54 1091
转载 正则+replace函数批量处理数据
需求提取字符串中数据转化成数组嵌套对象的格式转化前let str = `1.辅导如何发挥每位员工都有独特的潜力?辅导是催化剂,学会辅导便能催化潜力。Need a unique potential? Mastering coaching skill can catalyze people’s potential.2.培养员工员工是组织的最大资产,培养员工,就可以成就团队,繁荣组织。Develop your employees to make your team and organizati
2020-07-18 15:03:19 251
转载 aggregat聚合管道总结【三】(累加器)
aggregate聚合管道续(累加器)累加器本来只能使用与groud下,但是版本3.2或以上,部分累加器还能使用于project。当在group中使用时,累加器是针对每个分组使用的;当在project中使用时,累加器则是针对每个字面量起作用。常用累加器操作符简述$num求和操作符,可用于group或project$avg求平均值操作符,可用于group或project$first返回分组的第一个值 只能用于group$last返回分组的最后一个值 只能
2020-07-17 11:42:36 231
转载 aggregat聚合管道总结【二】(表达式操作符)
aggregate聚合管道续(表达式操作符)表达式操作符表达式操作符主要用于在管道中构建表达式时使用,使用类似于函数那样需要参数,主要用于$project操作符中,用于构建表达式,使用方法一般如下:方法1:{ <operator>: [ <argument1>, <argument2> ... ] }方法2:{ <operator>: <argument> }表达式操作符分类布尔值操作符(Boolean Operators
2020-07-17 11:38:09 465
转载 aggregat聚合管道总结【一】
聚合管道(aggregate)什么是聚合管道(aggregation pipeline)英文文档中是aggregation pipeline,直译为聚合管道,它可以对数据文档进行变换和组合。聚合管道是基于数据流概念,数据进入管道经过一个或多个stage,每个stage对数据进行操作(筛选,投射,分组,排序,限制或跳过)后输出最终结果。管道操作符介绍mongoDB有4类操作符用于文档的操作,例如find查询里面会用到的gte,in等。操作符以$开头,分为查询操作符,更新操作符,管道操作符,查询修饰符4
2020-07-17 11:35:55 673
转载 MongoDB高级查询
MongoDB 高级查询MongoDB 聚合管道使用聚合管道可以对集合中的文档进行变换和组合实际运用:表关联查询、数据的统计MongoDB 中使用 db.COLLECTION_NAME.aggregate([{},...]) 方法来构建和使用聚合管道Aggregation Pipeline Stages & OperatorsStages 操作操作符 S描述$project修改输入文档的结构。可以用来重命名、增加或删除域,也可以用于创建计算结果以及嵌套文档$
2020-07-17 11:34:14 394
转载 MongoDB 聚合操作
MongoDB 聚合操作一、聚合简述二、聚合管道 1.1 $match 1.2 $project 1.3 $group 1
2020-07-17 11:30:41 558
转载 Artplayer.js - HTML5 视频播放器
一直想往前端流媒体方面研究,学习视频播放器 API 期间,断断续续的终于整体实现了一个简单的播放器,以及一些相关的插件、工具和组件。 之前在 v 站发过一次求测试,现在终于有一个相对稳定的版本,但兼容性问题还是有的,想大佬们继续帮忙测试一下。 其实写到一半才发现和其他播放器项目重名了,感觉悲催了。 详细功能的话好像也和其他播放器差不多,但在写的过程中发现和学习了一些好玩的东西,例如:Chrome 的画中画模式确实很方便原来前端也可以把 srt 字幕转成 vtt 字幕直接使用可以直接从视频生成 GIF
2020-07-10 14:38:05 1947
转载 ZookeeperNet太难用,写了个RetryHelper来进行配套使用
普通的zk用法,如下写法:zk.Exists("/aaa", true);zk.Create(...);但是由于这些API会抛Zookeeper的Exception,比如ConnectionLossException, NoNodeException等,所以必须配合一堆try/catch的机制来catch错误,catch后再处理…写起来很麻烦因此写了个RetryHelper来封装上面这个try/catch行为,用起来也比较方便,如下:RetryHelper helper=RetryHelper
2020-07-10 13:47:57 256
转载 kafka在高并发的情况下,如何避免消息丢失和消息重复?
1.为什么会发生消息丢失和消息重复?消息发送Kafka消息发送有两种方式:同步(sync)和异步(async),默认是同步方式,可通过producer.type属性进行配置。Kafka通过配置request.required.acks属性来确认消息的生产:0—表示不进行消息接收是否成功的确认;1—表示当Leader接收成功时确认;-1—表示Leader和Follower都接收成功时确认;综上所述,有6种消息生产的情况,下面分情况来分析消息丢失的场景:(1)acks=0,不和Kafka集群进
2020-07-10 11:38:07 1082 1
转载 使用 pdf.js 在网页中加载 pdf 文件
在网页中加载并显示PDF文件是最常见的业务需求。例如以下应用场景:(1)在电商网站上购物之后,下载电子发票之前先预览发票。(2)电子政务管理系统中查看发布的公文,公文文件一般是PDF格式的文件。目前随着浏览器技术发展的不断成熟与强大,大部分的浏览器都支持直接把PDF文件拖到浏览器中显示,最方便的是这个操作不需要额外的插件支持。但是不同的浏览器加载显示PDF的效果不同。这时就需要专门的JS插件来处理。Mozilla开源了一个插件pdf.js,无需任何本地支持就可以在所有主流的浏览器上显示PDF文档,使用起来
2020-07-09 11:53:13 4764
转载 数据库的事务日志已满,起因为“LOG_BACKUP“
问题描述:数据库的事务日志已满,起因为"LOG_BACKUP"。解决方法:1).选择数据库–属性—选项—恢复模式–选择简单。2).收缩数据库后,再调回完整。USE[master] GO ALTER DATABASE 要清理的数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE 要清理的数据库名称 SET RECOVERY SIMPLE --简单模式 GO USE 要清理的数据库名称 GO DBCC SH
2020-07-08 13:39:14 2576
转载 MDN Web 事件参考
DOM 事件被发送用于通知代码相关的事情已经发生了。每个事件都是继承自Event 类的对象,可以包括自定义的成员属性及函数用于获取事件发生时相关的更多信息。事件可以表示从基本用户交互到渲染模型中发生的事件的自动通知的所有内容。本文提供了一个可以发送的事件的列表;一些是官方标准中的标准事件,另一些则是在特定浏览器内部使用的事件;例如,Mozilla 列出的特定事件使 拓展 可以用它们与浏览器交互。最常见的类别资源事件事件名称何时触发cachedmanifest中列出的资源已经下载
2020-07-08 13:23:38 1533
转载 MDN之Web 开发技术【正则表达式】
正则表达式是用于匹配字符串中字符组合的模式。在 JavaScript中,正则表达式也是对象。这些模式被用于 RegExp 的 exec 和 test 方法, 以及 String 的 match、matchAll、replace、search 和 split 方法。本章介绍 JavaScript 正则表达式。创建一个正则表达式你可以使用以下两种方法构建一个正则表达式:使用一个正则表达式字面量,其由包含在斜杠之间的模式组成,如下所示:var re = /ab+c/;脚本加载后,正则表达式字面量就会被
2020-07-08 11:36:31 402
转载 LINQ Interview Questions & Answers(LINQ面试问答)
What is Language Integrated Query (LINQ)?什么是语言集成查询(LINQ)?LINQ is a programming model that is the composition of general-purpose standard query operators that allow you to work with data, regardless of the data source in any .NET based programming languag
2020-07-01 11:01:13 852
Quill.js TextEditor.zip
2020-11-14
fund_sharp.zip
2020-09-17
webplayer.zip
2020-08-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人