kestrel

技术人的持续学习成长之路

╄→гoц情女王★ 提交于 2020-10-22 17:53:43
近期有几位童鞋在公众号后台留言,希望我指点一下如何从码农进阶为大佬。我想说的是,我不是大佬,因此无法给你建议。但是,对于学习成长提高自己这方面,我想我应该还是有一点发言权。因此,我录制了一期骚年快享的视频《 技术人的持续学习成长之路 》,本文是该视频的文字稿,希望对你有帮助! 1、技术人成长之路是什么样的 理想中的样子 大多数技术人理想中的进阶路线都会像上图一样,从毕业之后的初级码农、中级码农、高级码农 再到 技术经理 甚至CIO/CTO。不过,正如这个圆圈一样,越往上进阶圈子越小,里面的人也就越少。我们大部分人还是在外层的三个圈子(初级、中级、高级码农)里边奋斗。 现实中的样子 现实中呢,可能随着年龄的增大,生活的压力也随之增大,时间管理的效率也随之降低,伴随而来的就是学习提高的欲望逐渐消灭。所以,可能身边的人大部分都有35岁的危机焦虑,因此可能会选择去送外卖、摆地摊之类的。 虽然大部分的时候都是程序员的自嘲打趣,但是现实就是这样,本质上还是处于信息爆炸时代的技术人们充满了焦虑,不时发出:“我太难了”! 2、你的焦虑,企业早就在经历 其实你的这些焦虑,大部分的企业早就开始在经历了。近年来,不确定性和不可预测性不断冲击各个行业的企业,企业的高层管理者们焦虑倍增。特别是在今年的疫情之下,大部分中小企业的高官们比你还难。但是,他们越来越发现在企业前方市场和企业内部支撑之间的一个冲突

技术人的持续学习成长之路

穿精又带淫゛_ 提交于 2020-08-19 05:41:20
近期有几位童鞋在公众号后台留言,希望我指点一下如何从码农进阶为大佬。我想说的是,我不是大佬,因此无法给你建议。但是,对于学习成长提高自己这方面,我想我应该还是有一点发言权。因此,我录制了一期骚年快享的视频《 技术人的持续学习成长之路 》,本文是该视频的文字稿,希望对你有帮助! 1、技术人成长之路是什么样的 理想中的样子 大多数技术人理想中的进阶路线都会像上图一样,从毕业之后的初级码农、中级码农、高级码农 再到 技术经理 甚至CIO/CTO。不过,正如这个圆圈一样,越往上进阶圈子越小,里面的人也就越少。我们大部分人还是在外层的三个圈子(初级、中级、高级码农)里边奋斗。 现实中的样子 现实中呢,可能随着年龄的增大,生活的压力也随之增大,时间管理的效率也随之降低,伴随而来的就是学习提高的欲望逐渐消灭。所以,可能身边的人大部分都有35岁的危机焦虑,因此可能会选择去送外卖、摆地摊之类的。 虽然大部分的时候都是程序员的自嘲打趣,但是现实就是这样,本质上还是处于信息爆炸时代的技术人们充满了焦虑,不时发出:“我太难了”! 2、你的焦虑,企业早就在经历 其实你的这些焦虑,大部分的企业早就开始在经历了。近年来,不确定性和不可预测性不断冲击各个行业的企业,企业的高层管理者们焦虑倍增。特别是在今年的疫情之下,大部分中小企业的高官们比你还难。但是,他们越来越发现在企业前方市场和企业内部支撑之间的一个冲突

遇到异常:Synchronous operations are disallowed. Call WriteAsync or set AllowSynchronousIO to true ins...

对着背影说爱祢 提交于 2020-08-17 18:22:14
原文: 遇到异常:Synchronous operations are disallowed. Call WriteAsync or set AllowSynchronousIO to true instead 嗯,在使用 asp.net core 中遇到这么一个异常: Synchronous operations are disallowed. Call WriteAsync or set AllowSynchronousIO to true instead 解决方法,加入配置: public void ConfigureServices(IServiceCollection services) { // If using Kestrel: services.Configure<KestrelServerOptions>(options => { options.AllowSynchronousIO = true ; }); // If using IIS: services.Configure<IISServerOptions>(options => { options.AllowSynchronousIO = true ; }); } 转自: https://stackoverflow.com/questions/47735133/asp-net-core

ASP.NET Core使用TopShelf部署Windows服务

有些话、适合烂在心里 提交于 2020-08-16 10:00:48
asp.net core很大的方便了跨平台的开发者,linux的开发者可以使用apache和nginx来做反向代理,windows上可以用IIS进行反向代理。 反向代理可以提供很多特性,固然很好。但是还有复杂性,我们也可以使用windows service来直接启动kestrel。 asp.net core官方网站提供了一种基于windows服务部署的方法: 在 Windows 服务中托管 ASP.NET Core 这种方式需要修改代码,然后部署的时候,使用命令行创建、安装服务,然后再启动。 感觉还是不够爽快,我们可以使用topshelf改造一下。 TopShelf topshelf可以很便捷地将一个windows console程序改造成windows service,只需要稍微修改一下代码结构,然后通过nuget包就可以简单操作了。安装与部署也是 极其 方便,而且,topshelf在调试的时候,直接是作为console程序,极其便于调试。 TopShelf项目地址: http://topshelf-project.com/ 步骤 首先引用nuget包: Install-Package TopShelf 然后改造一下program.cs public class Program { public static void Main(string[] args) { var rc =

使用命名管道承载gRPC

半腔热情 提交于 2020-08-14 06:51:56
最近GRPC很火,感觉整RPC不用GRPC都快跟不上时髦了。 gRPC设计 gRPC是一种与语言无关的高性能远程过程调用 (RPC) 框架。刚好需要使用一个的RPC应用系统,自然而然就盯上了它,但是它真能够解决所有问题吗?不见得,先看看他的优点: gRPC的主要优点: 现代高性能轻量级 RPC 框架。 协定优先 API 开发,默认使用协议缓冲区,允许与语言无关的实现。 可用于多种语言的工具,以生成强类型服务器和客户端。 支持客户端、服务器和双向流式处理调用。 使用 Protobuf 二进制序列化减少对网络的使用。 对应的适用场景: 微服务 :gRPC 设计用于低延迟和高吞吐量通信。 gRPC 对于效率至关重要的轻量级微服务非常有用。 点对点实时通信 :gRPC 对双向流式传输提供出色的支持。 gRPC 服务可以实时推送消息而无需轮询。 多语言环境 :gRPC 工具支持所有常用的开发语言,因此,gRPC 是多语言环境的理想选择。 网络受限环境 :gRPC 消息使用 Protobuf(一种轻量级消息格式)进行序列化。 gRPC 消息始终小于等效的 JSON 消息。 gRPC还是有缺点的: 浏览器支持受限 :绝大数浏览器不支持 HTTP/2 非人工可读取 :proto文件规定的格式在通讯中会序列化成二进制数据,人工解析较为困难。 不适用的场景与替代: 浏览器可访问的API :gRPC

一次依赖注入不慎引发的一连串事故

半腔热情 提交于 2020-08-13 18:44:40
一次依赖注入不慎引发的一连串事故 起因和现象 偶尔会看到线上服务启动的时候第一波流量进来之后, 迟迟没有任何的响应,同时服务的监控检查接口正常, 所以 K8S 集群认为服务正常,继续放入流量。 查看日志基本如下: [2020-06-05T13:00:30.7080743+00:00 Microsoft.AspNetCore.Hosting.Diagnostics INF] Request starting HTTP/1.0 GET http://172.16.2.52/v1/user/test [2020-06-05T13:00:30.7081525+00:00 Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware DBG] The request path /v1/user/test/account-balance does not match a supported file type [2020-06-05T13:00:31.7074253+00:00 Microsoft.AspNetCore.Server.Kestrel DBG] Connection id "0HM09A1MAAR21" started. [2020-06-05T13:00:31.7077051+00:00 Microsoft.AspNetCore

Asp.NET Core Nginx Ocelot ForwardedHeaders X-Forwarded-For

安稳与你 提交于 2020-08-12 01:18:49
原文: Asp.NET Core Nginx Ocelot ForwardedHeaders X-Forwarded-For ocelot在部署时我使用了nginx作为转发,并配置了https证书,但是发现ocelot不支持Forward host header。 https://ocelot.readthedocs.io/en/latest/introduction/notsupported.html 这时候我就有了个疑问,Forward host header到底时什么含义?于是便有了本文。 nginx等代理服务器在转发时,会使用X-Forwarded-For 请求头。该请求头会记录从请求者ip到层层代理服务器ip的信息。 https://imququ.com/post/x-forwarded-for-header-in-http.html https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For asp.net core 在使用转发服务器后,官方文档说需要使用中间件设置XForwardedFor与XForwardedProto https://docs.microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view