ASP.NET Core

在微服务框架Demo.MicroServer中添加SkyWalking+SkyApm-dotnet分布式链路追踪系统

冷暖自知 提交于 2020-10-02 11:21:49
1.APM工具的选取 Apm监测工具很多,这里选用网上比较火的一款Skywalking。 Skywalking是一个应用性能监控(APM)系统,Skywalking分为服务端Oap、管理界面UI、以及嵌入到程序中的探针Agent部分,大概工作流程就是在程序中添加探针采集各种数据发送给服务端保存,然后在UI界面可以看到收集过来的各种监测数据,来完成它的核心使命:性能监控和分布式调用链追踪能力。下图是skywalking官方的一个图,也可以说明这三者之间的关联关系 2.服务端(OAP)和界面(UI)的安装 这里直接在apache地址: http://skywalking.apache.org/downloads/ 下载了一个6.6.0版本的zip文件,由于之前在本地的windows上安装过,发现安装包里面有两个启动文件,分别为:startup.bat和startup.sh,分别用于window上启动和linux启动,这里我直接将之前下载好的上传到linux上来安装。 上传后解压缩,就会得到以下截图的几个文件 进入到config配置目录下面,有一个名称叫application.yml的文件 对这个配置文件进行编辑 vim application.yml 我们直接定位到数据存储部分,也就是节点storage,官方文档里面也有说明,为了方便快速入门,配置文件默认采用的是H2存储

【招聘(深圳)】轻岁 诚聘.NET Core开发

烂漫一生 提交于 2020-09-30 23:55:39
招聘简介 为了支撑公司互联网的战略转型,我们将基于.NET Core + K8S/TKE + 腾讯云云函数的微服务架构,打造高性能、高并发、高扩展的基础平台,同时基于该平台进行应用开发,包括Web端,移动端(微信公众号、小程序、支付宝应用号)的开发。 如果你对【IOT + .NET Core + K8S + 无服务计算/微服务 + 轻应用】感兴趣,有冲劲,肯学习,想往互联网、云原生等新技术方向发展,那这里将是你保持技术领先和成长的好地方。 招聘岗位1:.NET 研发工程师(18k-20k) 任职资格: 1、全日制本科及以上学历,计算机或其他相关专业,3年以上相关工作经验,有独立负责项目经验者优先; 2、.NET 基础扎实,精通C#编程,有丰富的MVC、WebApi开发经验,掌握ASP.NET Core应用开发和ORM框架; 3、掌握面向对象编程思想,掌握常用的设计模式,良好的编程素养; 4、掌握数据库编程;掌握Web前端开发技术; 5、熟悉.NET Core 容器化和基于Kubernetes 的云原生应用开发经验优先; 6、了解MongoDB、Redis、RabbitMQ等技术。 7、有ABP 框架开发经验者优先; 8、自我驱动,热爱学习和总结; 福利: 五险一金;绩效奖金;带薪年假;弹性工作;员工旅游;餐费补贴;节日福利。(没有的我们一起去努力!) 轻岁团队

在.NET Core中使用MongoDB明细教程(3):Skip, Sort, Limit, Projections

守給你的承諾、 提交于 2020-09-30 17:25:17
到目前为止,我们已经讨论了创建文档, 检索文档,现在让我们来研究一下文档排序,指定要跳过或限制返回的文档数量,以及如何进行投影。此篇文章中的实例代码摘录自原文,未像前几篇文章一样进行实际代码的验证。 作者:依乐祝 译文地址:https://www.cnblogs.com/yilezhu/p/13525942.html 英文地址:https://www.codementor.io/@pmbanugo/working-with-mongodb-in-net-part-3-skip-sort-limit-and-projections-oqfwncyka Limit 当我们查询一个文档时,我们有时不想返回所有符合过滤条件的文档,而只返回其中的一部分。这就是 limit 方法的具体应用。对于MongoDB,可以通过调用 Find 返回的 IFindFluent 的 limit 方法来限制文档的数量。因此,如果我查询数据库中年龄小于40岁的学生,我会得到以下信息: S/N: 1 Id: 582489339798f091295b9094, FirstName: Gregor, LastName: Felix S/N: 2 Id: 582489339798f091295b9095, FirstName: Machiko, LastName: Elkberg S/N: 3 Id:

Asp.net Core启动流程讲解(四)

若如初见. 提交于 2020-09-30 10:47:09
Asp.net Core内 DI( DependencyInjection )贯穿了项目的始终,要学习Asp.net Core就无法越过DI。 下面讲解一下DI在Asp.Net Core内的流程 asp.net core 3.0以下 Asp.Net core 3.0以下有两种自定义替换DI容器的方式 替换 IServiceProviderFactory 的默认实现,以及 IStartup.Configure 函数修改返回值 1、 IServiceProviderFactory 查看 WebHostBuilder.Build public IWebHost Build() { var hostingServices = BuildCommonServices(out var hostingStartupErrors); var applicationServices = hostingServices.Clone(); var hostingServiceProvider = GetProviderFromFactory(hostingServices); AddApplicationServices(applicationServices, hostingServiceProvider); var host = new WebHost( applicationServices,

微软即将发布的.NET 5,蕴藏哪些最新特性?

自闭症网瘾萝莉.ら 提交于 2020-09-30 07:23:46
作者 | Paul Krill 编译 | 郑丽媛 头 图 | CSDN 下载自 视觉中国 出品 | CSDN(ID:CSDNnews) 以下为译文: 为了统一.NET平台,.NET 5改进了RyuJIT中代码质量、垃圾收集和JSON序列化等功能。 Preview 8 微软已经发布了功能完整的.NET 5的第8个预览版,除了bug修复外,几乎所有的功能都是最终版本。 .NET 5中 .NET Framework和.NET Core已合并,旨在一统.NET平台。 最新版本预计将于2020年11月10日正式发布。 日前,.NET 5的第8个预览版在8月25号已发布。而在11月的正式版发布前,还将有两个候选版本发布。 .NET 5更高层次的目标包含提供统一的.NET SDK体验,即在所有.NET 5应用程序中使用一个BCL(基类库),并支持跨多个操作系统的本地和web应用程序。一个.NET 5本地应用程序项目将使用这些平台上的本地控件来支持Windows、Microsoft Duo (Android)和Apple iOS等目标。 .NET 5的其他目标还有:允许构建高性能的云应用程序、在BCL中实现更快的算法、运行时中为容器提供更好地支持、以及对HTTP3的支持。.NET 5.0通过Mono的运行时和.NET库,将支持WebAssembly二进制格式,还提供了一组可为空的引用类型注释。

ASP.NET Core 2.0 MVC项目实战

一个人想着一个人 提交于 2020-09-28 13:50:17
一、前言 毕业后入职现在的公司快有一个月了,公司主要的产品用的是C/S架构,再加上自己现在还在学习维护很老的delphi项目,还是有很多不情愿的。之前实习时主要是做.NET的B/S架构的项目,主要还是用的那种传统的开发模式,只有一个项目用到了Web API,自己负责后端的接口功能实现。既然现在没办法改变现状,那就先改变自己吧。定了个计划,下班后慢慢的开始学习ASP.NET Core Web API和Vue,准备从前端到后端自己写一个小项目玩玩,毕竟代码这个东西,时间长了是会忘的。 嗯,有点扯远了。这个MVC项目是我的毕业设计,虽然写的比较烂,而且当时为了赶紧写完,代码的冗余程度有点高,但还是希望能给一些准备入门ASP.NET Core MVC的童鞋提供些借鉴吧。代码我放到Github上了,源码地址 https://github.com/Lanesra712/Danvic.PSU ,欢迎大神们拍砖,指出不足处。 二、项目介绍 毕业论文的课题是一个大学生的一个报名系统,主要是为了完成大学生报名过程中的一些数据维护,当然最后因为实在来不及了,好多都没做。。。项目主要使用到的相关技术如下所示: 项目框架:ASP.NET Core 2.0 MVC ORM:Entity Framework Core(使用Code First) 数据库引擎:MySQL SERVER 5.7 权限验证

.NET Core on K8S学习与实践系列文章 (2020版)

三世轮回 提交于 2020-09-27 03:02:27
一、关于这个系列   自从去年(2018年)底离开工作了3年的M公司加入X公司之后,开始了ASP.NET Core的实践,包括微服务架构与容器化等等。我们的实践是渐进的,当我们的微服务数量到了一定值时,发现运维工作量已将增加了很多,因此容器编排引擎的需求也随之产生(虽然我们一直都知道K8S的必要性)。同时,在张队发的《 .NET云原生采用情况调查 》中已经表明,容器编排和自动化领域Kubernetes已经占据了主体地位,学习Kubernetes刻不容缓!   所以,我将K8S的学习放到了今年的学习列表中,并总结了一些学习笔记和实践总结的文章并汇总在这里,希望对各位园友有帮助! 二、重点内容索引 2.1 Docker基础      学习K8S之前需要了解一点Docker基础,如果没有Docker基础请先补补课:   ① Docker背景与基础知识解密   ① Docker基础、安装与运行.NET Core应用   ② Docker常用流行镜像仓库的搭建   ③ Docker资源限制学习与验证   ④ Docker数据卷学习与应用   ⑤ Dockerfile详解   ⑥ Docker容器监控工具与方案:    ⑴ Docker自带监控子命令 & 开源监控工具Weave Scope    ⑵ Google开发的容器监控工具cAdvisor    ⑶

ASP.NET Core 3.x控制IHostedService启动顺序浅探

蹲街弑〆低调 提交于 2020-09-26 12:23:09
想写好中间件,这是基础。   一、前言 今天这个内容,基于于ASP.NET Core 3.x。 从3.x开始,ASP.NET Core使用了通用主机模式。它将 WebHostBuilder 放到了通用的 IHost 之上,这样可以确保 Kestrel 可以运行在 IHostedService 中。 我们今天就来研究一下这个启动方式和启动顺序。 二、通常的启动次序 通常情况下, IHostedService 的任何实现在添加到 Startup.ConfigureServices() 后,都会在 GenericWebHostService 之前启动。 这是微软官方给出的图。 这个图展示了在 IHost 上调用 RunAsync() 时的启动顺序(后者又调用 StartAsync() )。对我们来说,最重要的部分是启动的 IHostedServices 。从图上也可以看到,自定义 IHostedServices 先于 GenericWebHostSevice 启动。 我们来看一个简单的例子: public class StartupHostedService : IHostedService { private readonly ILogger _logger; public StartupHostedService(ILogger<StartupHostedService>

dhtmlxGant如何创建一个项目

戏子无情 提交于 2020-09-24 14:41:43
步骤1.创建一个项目 启动Visual Studio 2017并创建一个新项目。打开文件菜单,然后选择:新建->项目。 接下来,选择ASP.NET Core Web Application,并将其命名为DHX.Gantt。 选择一个空模板。 因此,您已经创建了一个项目,可以继续为Gantt添加标记和脚本。 步骤2.添加甘特标记和JS 转到wwwroot并创建一个index.html文件。 在新创建的文件中,为甘特图制作一个简单的页面。 请注意,在此演示中,从CDN添加了甘特文件。如果您拥有该组件的专业版,则需要手动将gantt文件添加到您的项目中。 index.html <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Index</title> <link href="https://cdn.dhtmlx.com/gantt/edge/dhtmlxgantt.css" rel="stylesheet" type="text/css" /> <script src="https://cdn.dhtmlx.com/gantt/edge/dhtmlxgantt.js"></script> <script> document.addEventListener