mono

基于.NET的可运行于树莓派的轻量型Web服务器 -- Raspkate

本小妞迷上赌 提交于 2020-04-22 14:04:44
最近在业余时间玩玩树莓派,刚开始的时候在树莓派里写一些基于wiringPi库的C语言程序来控制树莓派的GPIO引脚,从而控制LED发光二极管的闪烁,后来觉得,是不是可以使用HTML5+jQuery等流行的前端技术做一个简单的Web站点,让树莓派搭载这个站点,通过手机或者平板电脑来控制树莓派。经过一番调研,考虑如下: 使用Apache或者Nginx搭建一个Web服务器 优点:服务器实现相对成熟 缺点:偏重,而且与树莓派的交互需要涉及Service调用,而实现RESTful服务对于Apache或者Nginx需要额外的组件支持,要付出一定的学习成本 使用Python+Flesk 优点:技术相对成熟,也有很多成功应用案例 缺点:对于我来说需要额外学习Python语言 基于这样的前提,鉴于目前Mono在Linux下的出色表现,想想还是自己使用.NET开发一个轻量型的Web服务器吧,第一期版本让它既支持静态文件的访问服务,也支持RESTful API的调用,在RESTful API中可以暴露访问树莓派GPIO引脚的接口,供HTML5+jQuery的单页面应用调用,于是也就实现了在任意设备上通过浏览器来控制树莓派的目的。 Raspkate项目 Raspkate项目的名字,我想就是两个方面:Rasp,它来源于树莓派的英文名字Raspberry Pi,有表示“小、轻量”的意义

ganglia分布式监控部署

懵懂的女人 提交于 2020-04-20 18:20:32
一.介绍 Ganglia是由UC Berkeley发起的一个开源监控项目,设计用于监控数以千几的节点。每台服务器都运行一个收集和发送监控数据名为gmond的守护进程。它将从操作系统和指定主机中收集。接收所有监控数据的主机可以显示这些数据并且可以将这些数据的精简表单传递到层次结构中。正因为有这种层次架构模式,使ganglia可以实现良好的扩展。Gmond带来的系统负载非常小,这使得它成为集群中各个服务器上运行一段代码而不会影响用户性能。 Ganglia主要用来监控系统性能的软件,通过曲线很容易见到每个节点的工作状态,对合理调整,分配系统资源,提高系统整体性能起到重要作用,支持浏览器方式访问,但不能监控节点硬件技术指标。Ganglia是分布式的监控系统。 Ganglia的组件: Ganglia包括如下程序,它们之间通过xml格式传递监控数据。 服务端ganglia meta daemon(gmetad):负责收集各个cluster的数据,并更新到rrd数据库中 客户端ganglia monitoring daemon(gmond):收集本机的监控数据,发送到其他服务器上,收集其他服务器的监控数据,供gmetad读取。 基于web的动态访问方式ganglia PHP web Frontend:一个基于web的监控界面,需要和gmetad安装在同一个节点上,从gmetad取数据

Blazor WebAssembly 3.2.0 Preview 4 如期发布

☆樱花仙子☆ 提交于 2020-04-18 19:47:08
ASP.NET团队如期3.16在官方博客发布了 Blazor WebAssembly 3.2.0 Preview 4: https://devblogs.microsoft.com/aspnet/blazor-webassembly-3-2-0-preview-4-release-now-available/ ,同时在twitter上发了一条信息带上了下面这张图,这张图很形象的说明了Blazor Webassembly 正在进行最后的准备发射,按照开发计划,将在下周4.23 发布Blazor WebAssembly 3.2.0 Preview 5, 完成功能特性的开发,接下来就是5月初发布Blazor WebAssembly 3.2.0 RC了,将在5.19 的微软Build大会正式发射升空,进入使用C#进行前端开发旅程。 Blazor WebAssembly 3.2.0 Preview 4新增功能: 启动期间访问主机环境:在 WebAssemblyHostBuilder通过 IWebAssemblyHostEnvironment的 HostEnvironment 属性公开,在应用环境中的启动过程中区分(开发,分期,生产等)的细节。如果该应用程序托管在ASP.NET Core应用程序中,则该环境将反映ASP.NET Core环境,因此ASP.NET Core肯定是最佳开发环境

Blazor WebAssembly 3.2.0 Preview 4 如期发布

ⅰ亾dé卋堺 提交于 2020-04-18 14:43:49
ASP.NET团队如期3.16在官方博客发布了 Blazor WebAssembly 3.2.0 Preview 4: https://devblogs.microsoft.com/aspnet/blazor-webassembly-3-2-0-preview-4-release-now-available/ ,同时在twitter上发了一条信息带上了下面这张图,这张图很形象的说明了Blazor Webassembly 正在进行最后的准备发射,按照开发计划,将在下周4.23 发布Blazor WebAssembly 3.2.0 Preview 5, 完成功能特性的开发,接下来就是5月初发布Blazor WebAssembly 3.2.0 RC了,将在5.19 的微软Build大会正式发射升空,进入使用C#进行前端开发旅程。 Blazor WebAssembly 3.2.0 Preview 4新增功能: 启动期间访问主机环境:在 WebAssemblyHostBuilder通过 IWebAssemblyHostEnvironment的 HostEnvironment 属性公开,在应用环境中的启动过程中区分(开发,分期,生产等)的细节。如果该应用程序托管在ASP.NET Core应用程序中,则该环境将反映ASP.NET Core环境,因此ASP.NET Core肯定是最佳开发环境

Blazor WebAssembly 3.2.0 Preview 4 如期发布

岁酱吖の 提交于 2020-04-18 12:19:44
ASP.NET团队如期3.16在官方博客发布了 Blazor WebAssembly 3.2.0 Preview 4: https://devblogs.microsoft.com/aspnet/blazor-webassembly-3-2-0-preview-4-release-now-available/ ,同时在twitter上发了一条信息带上了下面这张图,这张图很形象的说明了Blazor Webassembly 正在进行最后的准备发射,按照开发计划,将在下周4.23 发布Blazor WebAssembly 3.2.0 Preview 5, 完成功能特性的开发,接下来就是5月初发布Blazor WebAssembly 3.2.0 RC了,将在5.19 的微软Build大会正式发射升空,进入使用C#进行前端开发旅程。 Blazor WebAssembly 3.2.0 Preview 4新增功能: 启动期间访问主机环境:在 WebAssemblyHostBuilder通过 IWebAssemblyHostEnvironment的 HostEnvironment 属性公开,在应用环境中的启动过程中区分(开发,分期,生产等)的细节。如果该应用程序托管在ASP.NET Core应用程序中,则该环境将反映ASP.NET Core环境,因此ASP.NET Core肯定是最佳开发环境

【翻译】在Spring WebFlux中处理错误

浪子不回头ぞ 提交于 2020-04-17 20:17:21
> 原文链接: Handling Errors in Spring WebFlux | Baeldung ## 1. 概览 在本教程中,我们通过一个实际的例子来**看一下可用于处理Spring WebFlux项目中的错误的各种策略**。 我们还将指出在哪种情况下使用一种策略会比另外一种好,在本文最后将提供所有源码的下载地址。 ## **2. 配置实例** 上一篇文章 [previous article]( Guide to Spring 5 WebFlux | Baeldung ) 中已经提到了maven的配置, 并对 Spring Webflux做了简单的介绍。 在这个例子中,**我们为一个 RESTful 端点加上一个名为 username 的查询参数,并以“Hello username”**作为结果返回。 First, let’s create a router function that routes the */hello* request to a method named *handleRequest* in the passed-in handler: 首先,让我们创建一个路由器函数,将/hello请求路由名为handleRequest的方法中: @Bean public RouterFunction < ServerResponse > routeRequest

【翻译】Spring 5 WebFlux入门

杀马特。学长 韩版系。学妹 提交于 2020-04-17 10:16:29
【推荐阅读】微服务还能火多久?>>> 原文链接: Guide to Spring 5 WebFlux | Baeldung 1. 概览 Spring WebFlux 框架是 Spring 5的一部分,他为 web 应用提供了响应式编程的支持。 在本文中,我们将使用响应式注解*RestController*和*WebClient*创建一个小的 REST 应用, 我们还将研究如何使用Spring Security保护我们的响应式端点。 2. Spring WebFlux 框架 ** Spring WebFlux内部使用Project Reactor及其发布者实现 - Flux和Mono。** 这个新框架支持下面两种编程模型: - 基于注释的响应式组件 - 函数级别的路由和处理 在这里,我们将重点关注基于注释的响应式组件,正如我们已经研究过的[functional style – routing and handling]( Introduction to the Functional Web Framework in Spring 5 | Baeldung ). 3. 依赖 让我们从spring-boot-starter-webflux依赖开始,它包含了所有其他必需的依赖: 用于基本Spring Boot应用程序设置的spring-boot和spring-boot-starter

kubeadmin安装k8s

空扰寡人 提交于 2020-04-15 14:55:37
【推荐阅读】微服务还能火多久?>>> k8s 安装过程(kubeadmin) https://www.centos.bz/2017/08/k8s-kubernetes-architecture-diagram/ #各组件的作用 参考 https://cloud.tencent.com/developer/article/1509412 1 系统初始化 1.1 设置系统主机名以及 Host 文件的相互解析 hostnamectl set-hostname k8s-master01 1.2 安装依赖包 yum install -y conntrack ntpdate ntp ipvsadm ipset jq iptables curl sysstat libseccomp wget vim net-tools git 1.3 设置防火墙为 Iptables 并设置空规则 systemctl stop firewalld && systemctl disable firewalld # 安装iptables yum -y install iptables-services && systemctl start iptables && systemctl enable iptables && iptables -F && service iptables save 1.4

移动端自动化测试-AppiumApi接口详解

一个人想着一个人 提交于 2020-04-14 09:29:05
【今日推荐】:为什么一到面试就懵逼!>>> Appium 初始化配置信息(Desired Capabilities),Desired Capabilities实际上就是一个字典,它主要用于向Appium Server提供初始化配置参数,如:想要测试的系统是Android还是IOS,测试哪款软件,软件的入口是哪里等。 这种服务关键字在网上很多,百度搜一下就有一大堆了。 定位Android的appPackage与appActivity-Windows操作系统方法 通过监控adb操作日志来找到 appPackage与appActivity, CMD下输入adb logcat | findstr Start,强制停止被测试软件,再次打开,观察logcat。 斜杠之前为 appPackage,斜杠之后为appActivity。 从此想抓那个App,就抓那个App。(logcat的日志较多,要找点击时第一个Start proc的日志。) 这种查看日志的方式比较不方便,日志一多起来,眼睛一乱什么也找不到了。所以可以使用SDK中的aapt进行抓取 SDK中下载最新的build-tools,通过aapt dump badging xxx.apk命令来查 appPackage与appActivity。 包名: 入口: 下列代码可以打开手机QQ: from appium import webdriver

ECS丨先导篇--概念

Deadly 提交于 2020-04-14 01:20:31
【今日推荐】:为什么一到面试就懵逼!>>> 提示 :选中右侧目录,可快速找到所需内容 本系列博客地址: 传送门 为什么要用ECS? ECS运行流畅。 在解决大型场景卡顿,有着相当好的效果,比如几百几千个士兵,弓箭发射,粒子特效,比如成千上万条鱼在游。ECS运行方式与传统MonoBehaviour不同的,其特有的运行方式,更高效的运行 代码 、 物体渲染 。 什么是ECS? 是 一种编写高性能代码的 方法(框架) ECS 只是 DOTS(面向数据技术栈)的一部分。 ECS虽然不包括 C# Job System、Burst Complier,但这两个也是ECS使用到的。C# Job System使得ECS变成多线程运行,Burst Complier加快了ECS的编译速度。 ECS怎样优化的? 1、ECS本身特点 ECS代码的编写方式,使得读取数据比Mono更快。 2、多线程 传统的MonoBehaviour: 是单线程,每一帧的画面,是Update,一个命令运行完,进行下一个命令,从头跑到尾,进行绘制。 ECS: C# Job System使ECS变成多线程。能发挥多核CPU优势 比如只开一个闸机,和开了8个闸机口,哪个快。当然8个闸机多线程快,这样懂了吧。 3、Burst Complier 它加快了ECS的编译速度。 现有面向对象编程的瓶颈 什么是面向对象?