分布式
文章平均质量分 75
iml6yu
脑子不好,不会的太多,只能学点记录点,怕忘!
展开
-
SignalR服务主动发送消息给客户端
但是事与愿违,因为这里涉及到一个对象声明周期的问题,在调用Clients.All的时候会提示调用了一个已经释放的资源对象,具体错误如下:System.ObjectDisposedException:"Cannot access a disposed object.当服务端进行数据处理时(数据可能来源于非人工操作,比如各种控制器和信号源),需要将处理结果推送给客户端,进行实时数据显示。我这里使用了MessageBus的一个中间件,这样就实现了解耦,Messagebus的nuget包。在main函数中使用。原创 2023-06-20 09:56:37 · 902 阅读 · 0 评论 -
NetCore_signalR服务端
本文不介绍关于SignalR的原理内容,比如如何实现的长连接,如何实现双工通信,如何实现向下兼容的通信等等。到此为止一个服务端就做完了,运行起来也是看不到任何效果的。那么如何才能看到效果呢,请看下一篇文章。没有引入其他包,因为是WebApi项目,所以默认的asp.net的包都引入了。SignalR javascript 客户端。一个自己定义的Hub处理类,继承自Hub。原创 2023-06-20 09:52:58 · 1195 阅读 · 0 评论 -
.Net6 WebAPI 手动开启gRPC服务
Console.WriteLine($"接收到请求!});注意命名空间在GreeterService 中重写所有定义的方法否在在客户端调用服务端方法的时候,会出现异常。再通过对源码查看以后,发现所有的异常都是在自动生成代码中生成的,因为在自动生成的代码中所有的方法都抛出了一个异常,而没有写实现内容。其实这样做不是一个好的方式,生成的工具可以考虑生成一个抽象类,定义所有方法是抽象方法,这样用户在继承后,IDE就会提示错误,不用等到调用时才知道错了。原创 2023-06-19 19:17:38 · 1281 阅读 · 0 评论 -
.NetCore gRpc 客户端与服务端的单工通信Demo
ProtoBuf复制nanos字段表示从到的值。例如,decimal值1.5m将表示为。这就是此示例中的nanos字段使用sfixed32类型的原因:对于较大的值,其编码效率比int32更高。如果units字段为负,则nanos字段也应为负。原创 2023-06-19 19:04:20 · 1791 阅读 · 2 评论 -
C# 版 雪花ID
具体地,在每次生成ID时,都需要获取当前的系统时间戳,并与上一次生成ID时使用的时间戳进行比较。如果发现当前的时间戳小于等于上一次的时间戳,则说明系统时钟发生了回拨,此时可以抛出异常或者阻塞等待,直到系统时钟追上之前的时间戳。雪花ID广泛应用于分布式系统中。“雪花ID”(Snowflake ID),那么它是一种分布式系统中的唯一性标识符,可以保证在分布式环境下生成全局唯一的ID。总之,雪花ID是分布式系统中非常实用的工具之一,可以很好地解决全局唯一性的问题,进而帮助分布式系统更好地运转和管理。原创 2023-06-13 10:28:29 · 2237 阅读 · 0 评论 -
SQL Server 创建链接服务器 链接mysql 进行数据同步
当问题产生了,作为一个合格的码农,第一时间就是想着做一个程序实现数据同步,但是处于自身不叫懒惰,总觉得写个程序太累了,于是想到网上找一找有没有提供工具的人,最后也是无功而返,然后就想到了用。一个项目的产品迭代,因为迭代过程中两套系统同时使用,两套系统设计使用的数据库不同,从Sqlserver改到mysql了,所以需要将sqlserver的业务数据定时同步到mysql中。录入mysql的链接信息后,点击test测试一下,如果一切都是对的,会提示成功信息。如果能够查询到你想要的数据,表示成功了。原创 2022-10-09 14:17:45 · 4120 阅读 · 2 评论 -
pcl 安装在docker 镜像中
文章目录需求准备需求算法服务需要用到pcl 点云库,为了使算法服务横向扩展更方便,所以选择用docker封装算法服务,那么就需要算法的镜像中有pcl类库。准备安装环境在dockerfile中添加如下代码#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.FROM mcr.micro原创 2021-05-21 09:30:58 · 1656 阅读 · 3 评论 -
如何修改docker内容器的配置文件(docker内的日志如何输出到宿主)
文章目录需求解决办法1借助第三方数据程序2 借助 Volume需求在镜像运行的时候,有可能会不同的容器对应的参数不一样,比如数据库连接字符串或者其他一些配置。解决办法1借助第三方数据程序比如数据库,redis等。将配置信息存储在数据库中,程序初始化的时候读取数据库中的配置信息,这样通过修改数据库的内容就可以了。或者将数据写入数据库,也可以在宿主中查看。2 借助 Volumehttps://docs.docker.com/engine/reference/builder/#volume (官原创 2021-05-13 12:48:08 · 627 阅读 · 0 评论 -
将.net5程序封装到docker镜像
文章目录环境需求实现方法RabbiteMQ操作类主要操作类 QueueOperator异常类 QueueCanNotDoException生产者(桌面程序 不记录)消费者Program 代码Worker 代码Dockerfile制作镜像docker build 命令运行镜像遇见的问题问题1 docker run -v 挂在路径无效问题(在window环境中)问题2 visual studio 容器工具首次加载太慢 vsdbg\vs2017u5 exists, deleting 太慢或者卡在这里失败问题3原创 2021-05-13 12:38:47 · 1175 阅读 · 2 评论 -
RabbitMq (Docker)部署
文章目录镜像拉取运行运维镜像https://registry.hub.docker.com/_/rabbitmq如果需要访问web管理页面,就选择tag为management的拉取安装指令在对应的镜像上都有,可以自己拷贝。地址docker pull rabbitmq:management运行运行命令(shell或者cmd)(windows)docker run -d --name my_rabbitmq -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ原创 2021-05-08 13:00:14 · 132 阅读 · 0 评论 -
Rocket MQ学习笔记(4)——.net core 连接rocketmq,并且生产和消费mq (NewLift.RocketMQ)
文章目录NewLift.RocketMQRocket Producer(生产者)RocketMQ Consumer(消费者)NewLift.RocketMQGithub地址https://github.com/NewLifeX/NewLife.RocketMQNuget地址:https://www.nuget.org/packages/NewLife.RocketMQ/1.5.2021.410或者在Nuget上自己搜索NewLife.RocketMQ。Rocket Producer(生产者)用于原创 2021-04-29 13:01:50 · 2590 阅读 · 0 评论 -
Rocket MQ学习笔记(3)——在Windows系统下 docker Desktop中安装rocketmq
文章目录确认环境安装Docker Desktop确认Docker-compose命令是否可用编写yml文件注意事项创建并启动容器可视化客户端参考地址:https://github.com/apache/rocketmq-docker语法1https://www.web3.xin/index/article/182.html语法2https://www.cnblogs.com/g2thend/p/11746679.htmlmq客户端配置参考https://www.jianshu.com/p/7065原创 2021-04-26 12:35:29 · 767 阅读 · 2 评论 -
Rocket MQ学习笔记(2)——特性
文章目录特性(features)1 订阅与发布2 消息顺序3 消息过滤4 消息可靠性5 至少一次6 回溯消费7 事务消息8 定时消息9 消息重试10 消息重投11 流量控制12 死信队列特性(features)1 订阅与发布消息的发布是指某个生产者向某个topic发送消息;消息的订阅是指某个消费者关注了某个topic中带有某些tag的消息,进而从该topic消费数据。2 消息顺序消息有序指的是一类消息消费时,能按照发送的顺序来消费。例如:一个订单产生了三条消息分别是订单创建、订单付款、订单完成。原创 2021-04-26 12:19:21 · 172 阅读 · 0 评论 -
Rocket MQ 学习笔记(1)——概念
文章目录RocketMQMessage (消息)Producer(生产者)Consumer(消费者)Broker Server(代理服务器)Topic (主题)Name Server(名字服务)Group(群组)Producer Group(生产者群组)Consumer Group(消费者群组)消费方式推动式消费(Push Consumer)拉取式消费(Pull Consumer)Clustering(集群消费)Broadcasting(广播消费)普通顺序消息(Normal Ordered Message)原创 2021-04-26 12:18:09 · 172 阅读 · 0 评论 -
kubernetes学习——minikube入门
目录minikube安装入门启动minikubeminikube安装请看上一篇文章入门不入其门不得其法,现在开始入门。启动minikubeminikube start --vm-driver=hyperv配置默认hyperv驱动minikube config set vm-driver hyperv基于hyper-v 没有安装和启动hyper-v的可以自行查询。一旦启动,您就...原创 2020-01-22 14:56:15 · 506 阅读 · 0 评论 -
windows10安装Kubernetes和MiniKube
目录安装环境89就块钱一年的阿里云安装Kubernetes和miniKube失败了windows10安装[参考文档](https://kubernetes.io/docs/tasks/tools/install-minikube/)kubercliminikube安装环境请看上一篇文章89就块钱一年的阿里云安装Kubernetes和miniKube失败了原因就是穷,太TMD的穷了。内存和C...原创 2020-01-22 09:58:36 · 393 阅读 · 0 评论 -
windows10安装docker desktop(非VMBox)
目录Docker Desktop环境下载运行命令常见坑处理坑1坑2(由坑1引发)Docker Desktop环境确认操作系统是Win10 Pro 、 教育版本确认系统是否能开启虚拟化 cmd命令systeminfo开启Hyper-v 自行查询下载下载地址运行命令docker --version如下图表示安装成功了常见坑处理坑1出现如下错误unable to res...原创 2020-01-21 17:55:51 · 758 阅读 · 0 评论