对于.NET开源MSSQL、Redis监控产品Opserver之Redis配置感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解开源redis监控工具,并且为您提供关于.netcore+cod
对于.NET 开源 MSSQL、Redis 监控产品 Opserver 之 Redis 配置感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解开源redis监控工具,并且为您提供关于.net core +codefirst(.net core 基础入门,适合这方面的小白阅读,本文使用 mysql 或 mssql)、.Net Core 开源小工具 mssql2mysql,从 mssql 生成 mysql 脚本、.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?、ASP.NET Core (.NET Core) and ASP.NET Core (.NET Framework)区别的宝贵知识。
本文目录一览:- .NET 开源 MSSQL、Redis 监控产品 Opserver 之 Redis 配置(开源redis监控工具)
- .net core +codefirst(.net core 基础入门,适合这方面的小白阅读,本文使用 mysql 或 mssql)
- .Net Core 开源小工具 mssql2mysql,从 mssql 生成 mysql 脚本
- .NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?
- ASP.NET Core (.NET Core) and ASP.NET Core (.NET Framework)区别
.NET 开源 MSSQL、Redis 监控产品 Opserver 之 Redis 配置(开源redis监控工具)
Redis 监控数据实例的加载可以查看 Opserver.Core 项目 data/Redis 文件夹下的 RedisModule.cs, 我加了点注释
/// <summary>
/// 加载Redis连接 /// </summary>
/// <returns></returns>
private static List<RedisConnectionInfo> LoadRedisConnections()
{ var result = new List<RedisConnectionInfo>(); //默认实例
var defaultServerInstances = Current.Settings.Redis.Defaults.Instances; //Servers节点的子集
var allServerInstances = Current.Settings.Redis.AllServers.Instances; foreach (var s in Current.Settings.Redis.Servers)
{ var count = result.Count; // Add instances that belong to any servers 为Servers实例添加子集
allServerInstances?.ForEach(gi => result.Add(new RedisConnectionInfo(s.Name, gi))); // Add instances defined on this server 添加定义在Servers里的实例
if (s.Instances.Count > 0)
s.Instances.ForEach(i => result.Add(new RedisConnectionInfo(s.Name, i))); // If we have no instances added at this point, defaults it is! 如果没有任何实例则添加默认的
if (defaultServerInstances != null && count == result.Count)
defaultServerInstances.ForEach(gi => result.Add(new RedisConnectionInfo(s.Name, gi)));
} return result;
}
allservers 和 default 下的实例配置,会影响 servers 下的配置,allservers 和 default 的实例被添加到 servers 的各个节点,可以理解 allservers 和 default 的配置为通用配置,另外如果 allservers,servers 下有实例 ,default 下实例不起作用。如果要自定义实例加载,可以修改这段代码。实际配置中我们只要配置 servers 就可以了。
{ "Servers": [
{ "name": "127.0.0.1", "instances": [
{ "name": "localhost",
"port": "6379",
"password": "zoulu19900206"
}
]
},
{ "name": "192.168.11.220", "instances": [
{ "name": "work", "port": "6379",
"password": "Lz+18518095396+zL"
}
]
}
]
}
好了,下面上几张效果图
面板展示的属性都是可以通过 redis info 命令获取到,opserver 做了更清晰的展示。
Ops (/sec) 每秒处理量
memory (used) 即 used_memory_rss (used_memory)
used_memory_rss : 从操作系统的角度,返回 Redis 已分配的内存总量(俗称常驻集大小)。这个值和 top 、 ps 等命令的输出一致。
used_memory_peak : Redis 的内存消耗峰值(以字节为单位)
used_memory : 由 Redis 分配器分配的内存总量,以字节(byte)为单位
Summary 是总体概览部分。
Memory 是内存使用情况,重要。
persistence 是 RDB 和 AOF 的状态。
keyspace key 存储的情况,analyze 进去可以查看详细分布。
stats 客户端命令的 key 命中率和处理量
clients 查看有哪个 ip (或机器名) 过来的连接数多,很方便的定位到那台应用端机器长时间没有释放连接,重要。
slow command log 服务端接受的命令日志。
相关文章:
初识 Opserver,StackExchange 的监控解决方案
Opserver 开源的服务器监控系统 (ASP.NET)
原文地址:http://www.cnblogs.com/xiaopotian/p/6898634.html
.NET 社区新闻,深度好文,微信中搜索 dotNET 跨平台或扫描二维码关注
本文分享自微信公众号 - dotNET 跨平台(opendotnet)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与 “OSC 源创计划”,欢迎正在阅读的你也加入,一起分享。
.net core +codefirst(.net core 基础入门,适合这方面的小白阅读,本文使用 mysql 或 mssql)
设置为 model 所在的那一层
前言
.net core mvc 和 .net mvc 开发很相似,比如 视图 - 模型 - 控制器结构。所以.net mvc 开发员很容易入手.net core mvc 。但是两个又有细微的区别,比如配置.net mvc 中 Web.config 和 Global.asax 消失,而在.net core mvc 中则是 Startup.cs、Program.cs、appsettings.json 等等。所以想要深入了解.net core 就必须更加深入的学习。而刚刚开始的学习则是通过建立一个连接数据库的 demo 开始。由于配置文件的不同,导致很多新手在连接数据库,或者使用 codeFisrt 开发却不知道怎么配置。所以我在这里较为详细的写一个 demo 提供给需要此方面的博友。(如有不正确地方欢迎各位指正)
开发工具 vs2017
数据库 mssql2014
.net core 环境 .net core2.1
1】先建立 model 层
1.1 先建立一个空白方案
然后建立一个内库,用来存放 model:注意选择内库 (.net core)
1.2 在 model 层添加内容
现在 nuget 中分别引用:Microsoft.EntityFrameworkCore.SqlServer 和 Microsoft.EntityFrameworkCore.Tools,注意两者版本号最好相同,以免出错
然后加入 model 和数据库的上下文类 DataBase(这个名字自己随意取),我在这里先只建立一个 user 表(注意在 DataBase 中需要
using Microsoft.EntityFrameworkCore;)


public class DataBase : DbContext
{
//构造方法
public DataBase(DbContextOptions<DataBase> options)
: base(options)
{ }
#region 数据区域
public DbSet<User> User { get; set; }
#endregion
}
至此,model 层配置完毕
2】开始建立.net core 项目
先建立一个.net core 项目
项目建立完毕之后先引用 model 层
然后进入 Startup.cs 配置数据库连接,这里首先引用 using Microsoft.EntityFrameworkCore; 和 model 层 using Modelx; 然后配置连接
注意 services.AddDbContext<DataBase> 中的 DataBase 是 model 层中的 数据库的上下文类,别弄错了
以上全部完成,然后添加一个例子看看效果,在任意一个控制器中写入以下代码然后运行(.net core 的一个好处就是内置依赖注入)
这时,会发现程序报错
原来,.net core 和.net mvc 相比,在使用 codefirst 时候,除了配置文件之外,.net core 还需要在控制台中执行以下两行代码
【注意每次修改数据库都需要执行这两段命令,每次执行 Add-Migration 后面名字必须不同】


先输入:Add-Migration MyFirstMigration(名字。这里随意取未MyFirstMigration)
在输入:Update-Database
首先我们打开控制台:
先输入:Add-Migration MyFirstMigration 然后回车等待运行完毕
然后输入:Update-Database 回车,等到全部运行完毕之后,再运行项目看看,就发现项目正常运行,以及数据库正常生成
注意如果输入 Add-Migration MyFirstMigration 出现 Build failed 则说明 Microsoft.EntityFrameworkCore.Tools 版本过高,和当前其他插件的版本不匹配,建议使用 2.14
3】ps: 关于连接数据库的第二种方法。
关于上文连接数据库,或许有人会问:和自己连接的不太一样,.net core 连接字符串不是应该写在 appsettings.json 里面?下面,我就将连接数据库的第二种方法写在下面,毕竟多多益善
如果想尝试这种方法的话,别忘了在控制台输入
先输入:Add-Migration MyFirstMigrations (名字,为了和上面区分,这里加了 s)
在输入:Update-Database
4】ps: 关于连接 mysql 数据库。
首先在 model 层的 nuget 中引入 Microsoft.EntityFrameworkCore.Tools 和 Pomelo.EntityFrameworkCore.MySql(圆圈是连接 mssql 必备、方块是连接 mysql 必备)
然后返回 ui 层的 appsettings.json 中修改连接字符串
然后进入 Startup.cs 注入上下文
最后,在系统运行之前别忘记在 nuget 控制台中运行那两行命令
为迁移搭建基架运行:Add-Migration MyFirstMy
将新迁移应用到数据库运行:Update-Database
另外,需要注意的是,在默认项目这里选择你 mode 层的名字,否者运行错误
当以上全部完成之后,在运行程序,然后去看 mysql 数据库
建议各位手打一次,加深印象。如果想偷懒的,付出代价 (2 积分) 吧
https://download.csdn.net/download/qq_36215047/10824784 源码地址
-------------------------------------- 分界线 2018-12-10 ------------------------------------------------------------------
错误记录 1
如果输入 Add-Migration 出现这个错误,请把 ui 层设置为启动项,然后在输入 Add-Migration MyFirstMy,注意
如果觉得本文对你有用的话,帮忙在最下方点个推荐吧∑(っ °Д°;) っ
原文出处:https://www.cnblogs.com/1439107348s/p/10057694.html
.Net Core 开源小工具 mssql2mysql,从 mssql 生成 mysql 脚本
Microsoft SQL Server to MySQL
这个工具用于从 MSSQL 生成 MySQL 脚本,生成的脚本包含表结构和数据
安装
这是一个.Net Core 的具具,所以需要先安装.net core SDK https://dotnet.microsoft.com/download
然后可以使用下面的命令安装:
dotnet tool install --global mssql2mysql
生成 MySQL 脚本
使用 MSSQL 的连接字符串进行生成,默认的生成文件是 dump.sql
mssql2mysql -c "Server=(local);Database=ZKEACMS;User Id=sa;Password=sa;MultipleActiveResultSets=true;"
使用 -f
来指定生成的文件名:
mssql2mysql -f dump.sql -c "Server=(local);Database=ZKEACMS;User Id=sa;Password=sa;"
如果你想在生成的脚本中包含创建数据库的语句,可以使用 -s
参数指定数据库名称
mssql2mysql -s ZKEACMS -c "Server=(local);Database=ZKEACMS;User Id=sa;Password=sa;"
GitHub
https://github.com/SeriaWei/mssql2mysql
.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?
经查阅.Net Core相关资料:
- https://www.infoq.cn/article/2017%2F10%2Fdotnet-core-standard-difference
- https://blog.csdn.net/yiyelanxin/article/details/84439216
对.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework有了初步的了解:
.NET Core
.NET Core是免费、跨平台的,是托管框架的开源实现。它支持 4 种类型的应用程序:控制台、ASP.NET Core、云和通用 Windows 平台(UWP)。Windows Forms和Windows Presentation Foundation(WPF)并不包含在.NET Core 中。
ASP.NET Core
Asp.net core其实就是仍然基于.net Full Framework(最低要求Framework 4.6.2)的项目, 但同时保留了.net core一些新的设置理念,比如Asp.net core默认使用Kestrel作为Http请求的监听器,而不是使用原来庞大的Https.sys。是以.NET Core 为基础构建的应用程序模型。
.NET Standard
.NET Standard是一项实现 BCL 的规范。由于.NET 实现需要遵循这项规范,所以应用程序开发人员就不用担心每一种托管框架实现的 BCL 不同。托管框架的每一种实现都有一套自己的基类库。基类库(BCL)包含诸如异常处理、字符串、XML、I/O、网络和集合这样的类。
.NET Framework
.NET Framework 用于构建桌面应用程序和运行在互联网信息服务器(IIS)上的 ASP.NET 应用程序。它是第一个托管框架。
Xamarin
Xamarin 是一个用于构建 iOS、Android、macOS 和桌面应用程序的框架。
ASP.NET Core (.NET Core) and ASP.NET Core (.NET Framework)区别
ASP.NET Core可以使用.NET Core和.NET Framework运行时,但运行在.NET Core与.NET Framework下ASP.NET Core 有哪些区别呢。本文就主要介绍一下它们之前的区别。
原文地址:ASP.NET Core (.NET Core) and ASP.NET Core (.NET Framework)区别
今天关于.NET 开源 MSSQL、Redis 监控产品 Opserver 之 Redis 配置和开源redis监控工具的分享就到这里,希望大家有所收获,若想了解更多关于.net core +codefirst(.net core 基础入门,适合这方面的小白阅读,本文使用 mysql 或 mssql)、.Net Core 开源小工具 mssql2mysql,从 mssql 生成 mysql 脚本、.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?、ASP.NET Core (.NET Core) and ASP.NET Core (.NET Framework)区别等相关知识,可以在本站进行查询。
本文标签: