自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (2)
  • 收藏
  • 关注

原创 浅谈备考 系统架构师

准备步骤考试形式考试内容学习考试内容训练考试内容其他觉得好的同类参考资料2023年度计算机技术与软件专业技术资格(水平)考试工作计划第一次产生萌芽的时候三年前,当初备考没有想过要评职称或者成为什么人才,单纯是觉得当前需要找个途径突破、要更高的工资。而从备考前、后经历三年最终获得证书和收入的提升考前考中当然收入提高和证书没有直接必然的关系,但的确会给自己带来无穷的收益。

2023-06-07 08:42:56 754 1

原创 git回滚Merge

背景: 合并dev到mater,然后没有权限,然后需要再本地回滚git.exe reset --mixed 76668c942005972d79e70554b30324dffabd6a24 --

2021-06-21 12:23:55 339

原创 ASP.NET MVC 5 应用程序的生命周期

原文件:https://docs.microsoft.com/zh-cn/aspnet/mvc/overview/getting-started/lifecycle-of-an-aspnet-mvc-5-application/_static/lifecycle-of-an-aspnet-mvc-5-application1.pdf说明文档:https://docs.microsoft.com/zh-cn/aspnet/mvc/overview/getting-started/lifecycle-of-a

2021-04-02 11:38:37 382

原创 Dockerfile 参考

Dockerfile 参考Docker可以自动读取Dockerfile中指令集后构建镜像,Dockerfile是一个文本文件,包含用户构建镜像需要的所有命令。用户使用docker build启动一个构建任务来自动执行一些命令行指令。这个文档是描述怎么使用Dockerfile的命令,当阅读完之后就可以去进行最佳实践了。Usage(用法)用docker build命令从Dockerfile(上下文)构建镜像,这个上下文是一个指定位置的路径或URL,这个路径是你本地文件系统中的一个目录,URL是一个Git

2021-03-18 08:51:05 203

原创 .NetCore框架Surging系列(十一)缓存资源池

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册.NetCore框架Surging系列(六)路由发现.NetCore框架Surging系列(七)路由监听.NetCore框架Surging系列(八)性能评估.NetCore框架Surging系列(九)性能提升.Ne

2021-02-08 14:21:37 355

原创 .NETCore Nuget 发布包含静态文件 content file

Nuget 发布包含静态文件 content file解决办法在.csproj引用资源中标记pack配置<pack>true</pack>例如 <ItemGroup> <Content Include="dotnetty.linux.pfx"> <pack>true</pack> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDi

2021-02-02 17:41:26 1241 2

原创 Linux 设置静态IP

Linux 设置静态IP步骤找到配置文件修改配置文件重启网络1. ContOS1.1 找到配置文件vim /etc/sysconfig/network-scripts/ifcfg-eth0eth0 网卡名称,各机器不同1.2 修改配置文件TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"BOOTPROTO="static" ## BOOTPROTO="dhcp" -> BOOTPROTO="static"DEF

2021-01-29 10:37:47 186

原创 IsValid(object value) has not been implemented by this class. The preferred entry point is GetValid

IsValid(object value) has not been implemented by this class. The preferred entry point is GetValidationResult() and classes should override IsValid(object value, ValidationContext context).模型验证时,创建自定义验证特性,报了这个错。注:这里是自定义的模型认证,在ASP.NET Core中API或MVC 的模型没有

2021-01-28 16:13:02 413

原创 SSL/TLS 区别与应用 CA证书

SSL/TLSHTTP协议与TCP之间的一个可选层,用于数据安全传输。SSLTLSCA证书服务端/客户端证书基础信息基础概念认证方式OpenSSL生成证书生成pfx证书https://blog.youkuaiyun.com/yiquan_yang/article/details/113250364生成Nginx证书生成后需要将Nginx证书目录/etc/cert映射到证书目录,或则将证书拷贝到该目录,在访问HTTPS时需要将证书加入可信任机构,将ca.pem改名为ca.crt后

2021-01-27 18:13:52 441

原创 .NetCore框架Surging系列(十)RPC机密传输数据 - DotNetty开启TLS

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册.NetCore框架Surging系列(六)路由发现.NetCore框架Surging系列(七)路由监听.NetCore框架Surging系列(八)性能评估.NetCore框架Surging系列(九)性能提升.Ne

2021-01-27 17:42:11 537

原创 DotNetty TLS 开启双向认证加密传输数据

这里写目录标题DotNetty TLS 开启双向认证加密传输数据一、生成PFX证书二、服务器端2.1 引用Nuget:2.2 创建处理请求类2.3 注册DotNetty监听服务三、客户端端3.1 引用Nuget3.2 响应处理3.3 连接到服务端DotNetty TLS 开启双向认证加密传输数据DotNetty为服务间通讯,包括提供服务的服务器端和请求数据的客户端。如果需要密文传输数据则需要开启TLS,用于通讯加密。TLS涉及到的是证书,首先来看看如果生成DotNetty的TLS证书。一、生成PFX证

2021-01-27 17:11:26 1223

原创 OpenSSL 生成pfx

OpenSSL 生成pfxWindow需要安装OpenSSL(需要下载),Linux自带OpenSSL工具(无需安装)Window下载地址:官网我已经上传了一份到csdnWindow命令# 生成私钥"D:\Program Files\OpenSSL-Win64\bin\openssl.exe" genrsa -aes256 -passout "pass:123yIQuAn" -out "key.pem" 4096# 生成公钥"D:\Program Files\OpenSSL-Win64\

2021-01-27 16:02:48 2348

原创 .NetCore框架Surging系列(九)性能提升-1

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册.NetCore框架Surging系列(六)路由发现.NetCore框架Surging系列(七)路由监听1 优化Swagger中间件1.1 修改方式一工程:Surging.Core.Swagger文件:Swagg

2021-01-21 14:37:47 592 1

原创 .NetCore框架Surging系列(八)性能评估

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册.NetCore框架Surging系列(六)路由发现.NetCore框架Surging系列(七)路由监听.NetCore框架Surging系列(八)并发评估背景由于项目需要满足5000+TPS,故对平台框架进行单机

2021-01-18 10:57:54 769 3

翻译 JMeter ramp-up 循环次数,JMeter 中循环次数和线程数之间迷惑的地方(翻译)

JMeter中循环次数和线程数之间迷惑的地方(翻译)JMeter中循环次数和线程数之间迷惑的地方人们经常对JMeter循环次数和线程数的用法感到困惑,更重要的是,它如何影响他们的负载测试。你知道答案吗?这是两种情况:方案1:如果线程数为10,则加速时间为10,循环数为1。方案2:如果线程数为1,加速时间为1,循环数为10。两种情况之间有什么区别,会对性能产生类似的影响吗?场景2中的请求之间的延迟将是多少?在方案2中,所有线程是否仍然有效?大多数人都知道线程模拟用户这一事实,而循环次数是指线程

2021-01-11 16:49:57 2702 3

原创 Dapper Postgresql not in

Dapper Postgresql not inNOT IN等价于<> ALL。var sql = "SELECT * FROM Invoice WHERE Kind <> ALL(@Kind);";using (var connection = My.ConnectionFactory()){ connection.Open(); var invoices = connection.Query<Invoice>(sql, new {Kind

2021-01-04 18:39:01 443

原创 Npgsql.PostgresException : 42601: syntax error at or near “$1“

Npgsql.PostgresException : 42601: syntax error at or near “$1”8.15.5. 在数组中搜索要在一个数组中搜索一个值,每一个值都必须被检查。这可以手动完成,但是我们必须知道数组的尺寸。例如:SELECT * FROM sal_emp WHERE pay_by_quarter[1] = 10000 ORpay_by_quarter[2] = 10000 ORpay_by_quarter[3] = 10000 ORpay_by_quarte

2021-01-04 18:15:12 2964

原创 ASP.NET Core 非容器化部署 Ubuntu主机部署

1. 安装SDKwget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.debsudo dpkg -i packages-microsoft-prod.debsudo apt-get update; \ sudo apt-get install -y apt-transport-https && \ sudo a

2020-12-31 16:57:22 218

原创 .NETCore Entity Framework(ef)学这一篇就够了 - 基础知识(上篇)

.NETCore Entity Framework(ef) 基础知识(上篇).NETCore Entity Framework(ef) 基础知识一 概述EF用途作对象关系映射程序 (O/RM)1. 能够使用 .NET 对象处理数据库(数据迁移,正式环境慎用)2. 无需编写大部分数据访问代码(sql)二 DbContext上下文生命周期实例化方式ASP.NET Core依赖注入New 初始化数据库连接字符串DbContextOptionsDbContextOptions说明配置数据库提供程序其他配置查询追踪

2020-12-23 15:41:48 7581

原创 .NETCore C# Task任务管理 返回相同结果 问题

C# 多个Task返回相同结果时task会被合并调用任务每个任务都是返回Taskvar assetCountCurrentMonthTask = GetCurrentMonthCreateAsset(orgUids, normalState, currentTime, currentMonth);var assetCountLastMonthNormalDeleteTask = GetLastMonthCreateNormalAsset(orgUids, normalState, currentT

2020-12-17 14:08:01 1022

原创 ASP.NET Core 过滤器向控制器注入参数 传参

ASP.NET Core 过滤器向控制器注入参数(传参)场景如题,在ASP.NET Core使用过程中,过滤器处理相关业务后,有时需要统一初始化一些数据,并将数据传递到控制器和API中。方法一 ModelStateDictionary优点:实现简单缺点:只能传字符串参数,相较于方法二,功能单一1、写入参数public class SignFilter : ActionFilterAttribute { public override void OnActionExecu

2020-12-08 15:40:45 3948 1

原创 Jenkins error : ‘1.1.5_‘ is not a valid version string. (Parameter ‘value‘)

Jenkins error : ‘1.1.5_’ is not a valid version string. (Parameter ‘value’)Jenkins中错误信息D:\code\Pipeline_Service.Basedata>dotnet publish .\src\Service.BaseData\BaseDataService.Host\BaseDataService.Host.csproj -c release -o basedata Microsoft (R) Build

2020-12-08 14:47:26 493

原创 C# Int ToString 方法原理

过程平时候我们声明一个整数,ToString的时候是发生什么了呢1 调用使用示例,声明整数a,b static void Main(string[] args) { int a = 10; int b = -10; System.Diagnostics.Debug.WriteLine(a.ToString()); System.Diagnostics.Debug.WriteLine(b.ToString());

2020-12-02 17:31:24 2004

原创 WebSocketCore Not a local IP address. (Parameter ‘address‘) System.Net.Dns.GetHostAddresses

One or more errors occurred. (Not a local IP address. (Parameter ‘address’))在Ubuntu中,.NET Core使用WebSocketCore,用dotnet驱动时抛出这个错误One or more errors occurred. (Not a local IP address. (Parameter 'address'))解决办法hostname ## 查看主机名称ip addr ## 查看本机IP vim /et

2020-11-25 17:49:00 378

原创 配置Windows到linux的ssl免密传输数据包

配置Windows到linux的ssl免密传输数据包第一步 在Windows上生成SSL“公钥-私钥“文件对ssh-keygen #连续enter在路径中会生成C:\Users\admin(用户)\.ssh公私钥文件——id_rsa 私钥 ——id_rsa.pub 公钥 ——known_hosts 可不用管 修改id_rsa.pub文件,删除最后的字符串"username@xxx-pc"第二步 将公钥拷贝到服务器端手动拷贝id_rsa.pub到/root/.ssh。也可

2020-11-19 13:46:22 335

原创 ubuntn PREEMPT_RT make 安装时 /usr/include/openssl/e_os2.h:13:11: fatal error: openssl/opensslconf.h: N

在Ubuntu编译PREEMPT_RT时报错,因为之前安装libssl-dev装不上,就装了libssl-dev:i386,后面编译的时候还是报错了:问题:@ubuntu:~/kernel/linux-4.16.18# makeMakefile:976: "Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel" CHK include/co

2020-11-13 17:46:18 1363 1

原创 ubuntu 离线安装 内网安装 无外网安装 离线源

ubuntu 离线安装 内网安装 无外网安装 离线源做政府或则企业的项目,通常是本地部署或则私有云,为了防止无外网,或防止现场安装时难以寻找到依赖包的情况发生,需要在开发阶段就准备好所有线上需要的工具或服务,所以需要制作离线包。Ubuntu离线安装软件原理是,在正常有网的开发服务器上安装所有依赖内容,并制作为本地源包,在目标服务器上解压后映射本地源,进行无外网安装。一、离线包制作1、配置源选择的是aliyun源ubuntu 18.04(bionic)mv /etc/apt/sources.list

2020-11-13 11:13:52 8958 1

原创 DotNET Core ASP.NET Core Jenkins Gogs持续构建 持续部署

DotnetCore Asp.NetCore Jenkins持续构建 持续部署环境Jenkins,安装在window(安装在Linux更合适)Gogs服务运行服务器Jenkins插件PipelinePipeline: Basic StepsPipeline: Build StepPipeline: GroovyPipeline: JobGogs pluginGit pluginPowerShell pluginSSH Pipeline Steps使用说明创建任务流水

2020-11-10 17:12:21 277

原创 jenkins jack: job.config: forbidden jenkins:job.get:service unavailable

Jenkins Jack使用过程中报错“jenkins jack: job.config: forbidden”或则“jenkins:job.get:service unavailable”解决方案需要关闭jenkins的CSRF老版本(2.204.6以下)在Jenkins界面“Manage Jenkins”->Security “Configure Global Security”->CSRF 中关闭新版本linux修改文件vim /etc/sysconfig/jenkin

2020-11-03 16:44:48 520

原创 UOS Debian Ubuntu shell 静默安装 自动化安装 自动跳过文本交互 自动跳过窗口交互

shell 静默安装 自动跳过文本交互 自动跳过窗口交互在UOS制作离线包后,在bash执行安装过程中会出现文本交互和窗口交互。其中文本交互处理比较简单,窗口交互较为复杂,交互如下:方法文本静默安装在安装命令中带上参数-y,脚本示例如下:apt-get install -y sysstat窗口静默安装expect中兼容操作系统不同编码tool_name="sysstat"if [ ! -f install_$tool_name.sh ] ;thencat >>insta

2020-10-27 14:21:31 1455

原创 Ubuntu 制作SRS安装包 制作deb包

Ubuntu 制作SRS安装包目录Ubuntu 制作SRS安装包一、安装制作工具二、编译三、第一次构建Deb安装包四、修正Deb安装包1、解压deb2、添加`postinst`文件3、`postinst`文件内容4、删除帮助文档5、重新打包一、安装制作工具安装checkinstall工具,Checkinstall会跟踪install命令行所创建或修改的所有文件的路径(例如:”make install”、”make install_modules”等)并建立一个标准的二进制包。脚本如下:apt-ge

2020-10-22 10:27:40 534

原创 Linux shell 获取内网ip 终极方法

shell 获得本机ip 获得内网ipmachine_physics_net=$(ls /sys/class/net/ | grep -v "`ls /sys/devices/virtual/net/`");local_ip=$(ip addr | grep "$machine_physics_net" | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}');初级版在部署的时候需要获取

2020-10-20 17:50:44 3749

原创 安全防范报警系统产品质量监督检测测试中心(上海)

国家安全防范报警系统产品质量监督检测测试中心调查背景Mr Huang:公安部出具的,“国家安全防范报警系统产品质量监督检测测试中心”的云平台服务系统检验报告。我们现在在运作一个XXX公共住房智能化系统,客户提了这个要求。隶属单位隶属于公安部第三研究所(上海三所)的检测中心之一。功能承担国家和公安部委托的各类质量监督抽查检验任务,承接各类质量验证、鉴定检验、型式检验、仲裁检验和委托检验等。研究、开发安全防范和信息安全产品及系统的检验技术和检验装置。公安部认证产品安全防范产品开展防盗报警(

2020-10-14 17:35:45 4236

原创 .NetCore框架Surging系列(七)路由监听

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册.NetCore框架Surging系列(六)路由发现.NetCore框架Surging系列(六)路由监听背景在上一篇.NetCore框架Surging系列(六)路由发现中提到路由发现,此功能是当前服务发现远程服务的路

2020-10-09 17:15:07 309

原创 .NetCore框架Surging系列(六)路由发现

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册路由发现路由发现需要重点关注这么几个问题为什么要做路由发现如何触发路由发现怎么做到路由同步为什么要做路由发现之前提到过,如果http请求能在当前服务找到entry就执行本地方法,如果找不到则进行远程调用,而

2020-09-29 10:13:08 358

原创 FinalShell Session.connect: java.net.ConnectException: Connection reset

处理方式,重启sshd重启systemctl restart sshd正常连接

2020-09-25 08:24:48 9450 6

原创 .NetCore框架Surging系列(五)路由注册

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程.NetCore框架Surging系列(五)路由注册Surging路由注册和发现的基本单位为API方法,也就是说注册的是各个服务中的各个方法,并且在供网关和Rpc调用时也是通过路由找到对应方法,并分配到相应的服务器,在Consul中以Key/Value形式保存。Consu

2020-09-21 12:16:47 486 1

原创 .NetCore框架Surging系列(四)RPC客户端过程

.NetCore框架Surging系列(一)介绍.NetCore框架Surging系列(二)HTTP.NetCore框架Surging系列(三)HTTP本地路由发现过程.NetCore框架Surging系列(四)RPC客户端过程Rpc使用的是DotNetty,RPC客户端分层比较清晰代理层这层是Rpc的第一层,负责寻址、重发。寻址是将Rpc的请求地址转为远程服务器信息,重发是超时、熔断等调用不通进行重试机制;熔断层这层处理降级、阈值判定、熔断等,根据远程接口设定的值进行熔断;注意:远程接

2020-09-11 15:32:46 729 1

原创 .NetCore框架Surging系列(三)HTTP本地路由发现过程

.NetCore框架Surging系列(三)HTTP本地路由发现过程发现过程ServiceHostModule.Initialize 提供入口获取所有本地API声明接口类为没有API创建实现Entry使用在http执行过程中,最终都会执行到HttpExecutor,在这个类会判断当前调用是否是执行本地方法,还是执行远程方法。var entry = _serviceEntryLocate.Locate(httpMessage);HttpResultMessage<object&g

2020-09-02 11:58:25 435

原创 .NetCore框架Surging系列(二)HTTP

Surging系列(二)HTTP流程有点复杂,结合流程看代码吧HTTP初始化Surging初始化不仅仅是只初始化HTTP,还有注册中间件、RPC、WebSocket等,而HTTP初始化最终调用的是Surging.Core.KestrelHttpServer中方法StartAsyncHTTP监听Surging.Core.KestrelHttpServer中方法StartAsync,在这个方法中可以设置Kestrel配置,设置静态资源等介绍目录内存泄漏HTTP存在内存泄漏,最开始完成用户登录接口

2020-08-28 15:30:53 1301 1

Win64OpenSSL-1_1_1i.zip

Win64OpenSSL-1_1_1i.zip

2021-01-27

Web服务稳定性测试 负载测试 可靠性测试 测试报告

本次测试采取负载测试、并发测试、可靠性测试。测试方案采取模拟真实用户使用场景,模拟指定人数在一定时间点击界面产生的请求数。 在并发10(单位个/s)、20、40、80、160、500、1000、2000的基准下,调整用户数(虚拟用户用一个线程,下统称线程数)、点击准备时间(用户点击时间模拟时间,下称Ramp-up单位秒)和用户点击次数(下称循环),例如10个用户,每个用户每5秒点击1次,则线程数为10,Ramp-up为5,循环数为1。详细测试策略请看2.1。 对登录、数据新增(用户)、编辑(用户)、获取(用户)和删除(用户)进行负载测试,获得其稳定负载值。 对全站使用策略100-100-1-1进行并发测试,挑选用户服务所有接口。基础数据服务中挑选和用户服务关联的功能接口5个,组织结构接口4个,和用户服务无关的行政区3个接口。具体接口请查看附件1。 对全站进行可靠性测试,根据以上测试接口,选择稳定的并发数后持续测试-模拟时长8+小时。 稳定性测试是通过运行状态和资源指标的2个方面来分析及评估系统的稳定性,请求记录项响应的时间平均值、最小值、最大值、标准偏差、异常(百分比)、吞吐量、接收、发送、平均字节数,服务器资源指标CPU、Memory,在此额外添加记录数据库数据。通过调试测试策略、分析实验数据得出相关系统稳定性的结论,从而达到平台能力验证、规划能力、性能调优、缺陷发现等目的。

2020-08-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除