草庐IT

ws-addressing

全部标签

Cannot assign requested address错误解决

编程时候出现了socket绑定失败,返回值为-1。利用perror定位错位为cannotassignrequestedaddress。 大致上是由于客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,即“Cannotassignrequestedaddress”。是客户端的问题不是服务器端的问题。通过netstat,的确看到很多TIME_WAIT状态的连接。client端频繁建立连接,而端口释放较慢,导致建立新连接时无可用端口。解决办法执行命令修改如下内核参数(需要root权限) 调低端口释放后的等待时间,

[Mysql] CONCAT函数 | CONCAT_WS函数

CONCAT函数格式:SELECTCONCAT(str1,str2,...) FROM[表名];将多个字段拼接为一个字段(字符串str1,str2等多个字符串合并为一个字符串,多个字符串之间用逗号分隔)可以有很多个参数,如果参数有一个是NULL,则结果返回NULL(使用CONCAT()函数对包含NULL的数据进行拼接时,结果为NULL,所以在对数据进行拼接之前,应该先检查要拼接的字段是否存在NULL)适合场景:1.组合多列信息为一列 2.对列的信息进行补充--结果是MySQLSELECTCONCAT('My','S','QL');--结果是SQLRunoobGooogleFacebookSEL

[Mysql] CONCAT函数 | CONCAT_WS函数

CONCAT函数格式:SELECTCONCAT(str1,str2,...) FROM[表名];将多个字段拼接为一个字段(字符串str1,str2等多个字符串合并为一个字符串,多个字符串之间用逗号分隔)可以有很多个参数,如果参数有一个是NULL,则结果返回NULL(使用CONCAT()函数对包含NULL的数据进行拼接时,结果为NULL,所以在对数据进行拼接之前,应该先检查要拼接的字段是否存在NULL)适合场景:1.组合多列信息为一列 2.对列的信息进行补充--结果是MySQLSELECTCONCAT('My','S','QL');--结果是SQLRunoobGooogleFacebookSEL

STM32驱动全彩LED灯模块WS2812

STM32驱动全彩LED灯模块WS2812WS2812全彩LED灯模块系列,可以进行级联实现灯带的效果,MCU端通过一个管脚可以控制所有级联的LED灯的不同发光颜色显示。级联电路WS2811(未集成LED)的级联电路如下所示:WS2812(集成LED)的级联电路如下所示:STM32是3.3V供电芯片,输出Push-Pull模式只有3.3V,WS2812采用5V供电,输入Vih为0.7*5=3.5V高于3.3V,所以STM32连接WS2812时要采用有FT耐5V电压的管脚,采用Open-drain的输出方式,并外部上拉1K电阻,实现与第一个WS2812的DI的连接,对于后面级联的WS2812,由

STM32驱动全彩LED灯模块WS2812

STM32驱动全彩LED灯模块WS2812WS2812全彩LED灯模块系列,可以进行级联实现灯带的效果,MCU端通过一个管脚可以控制所有级联的LED灯的不同发光颜色显示。级联电路WS2811(未集成LED)的级联电路如下所示:WS2812(集成LED)的级联电路如下所示:STM32是3.3V供电芯片,输出Push-Pull模式只有3.3V,WS2812采用5V供电,输入Vih为0.7*5=3.5V高于3.3V,所以STM32连接WS2812时要采用有FT耐5V电压的管脚,采用Open-drain的输出方式,并外部上拉1K电阻,实现与第一个WS2812的DI的连接,对于后面级联的WS2812,由

Unity Addressable 快速使用

说明:下文中Addressable简称Aa使用Aa的原因使用Aa可以做到动态加载,这里的动态加载指的是当我们需要某个资源的时候才去加载它。这里的资源可以是预制体、图片、音效等等。这样做的好处是:避免资源全部一次性加载,占用不必要的内存,避免手机资源加载缓慢、手机发热,卡顿。可以做到资源的热更,注意这里的资源不包括代码。这部分后面再细说。安装Aa.CN后缀的是加密版本,但是好像有看到文章说有大量GC存在,还没查验过。这里先使用没有后缀版本的。使用Aa1.创建Aa2.添加需要动态加载的资源方法1:选中资源,在Inspector中勾选Aa方法2:选中资源,直接拖拽到Aa面板中注意事项添加了需要动态加

Unity Addressable 快速使用

说明:下文中Addressable简称Aa使用Aa的原因使用Aa可以做到动态加载,这里的动态加载指的是当我们需要某个资源的时候才去加载它。这里的资源可以是预制体、图片、音效等等。这样做的好处是:避免资源全部一次性加载,占用不必要的内存,避免手机资源加载缓慢、手机发热,卡顿。可以做到资源的热更,注意这里的资源不包括代码。这部分后面再细说。安装Aa.CN后缀的是加密版本,但是好像有看到文章说有大量GC存在,还没查验过。这里先使用没有后缀版本的。使用Aa1.创建Aa2.添加需要动态加载的资源方法1:选中资源,在Inspector中勾选Aa方法2:选中资源,直接拖拽到Aa面板中注意事项添加了需要动态加

C# UDP 套接字 : Get receiver address

我有一个异步UDP服务器类,其套接字绑定(bind)在IPAddress.Any上,我想知道接收到的数据包发送到(...或接收到)哪个IP地址。看来我不能只使用Socket.LocalEndPoint属性,因为它总是返回0.0.0.0(这是有道理的,因为它绑定(bind)到那个...)。以下是我目前使用的代码中有趣的部分:privateSocketudpSock;privatebyte[]buffer;publicvoidStarter(){//SetupthesocketandmessagebufferudpSock=newSocket(AddressFamily.InterNetw

C# UDP 套接字 : Get receiver address

我有一个异步UDP服务器类,其套接字绑定(bind)在IPAddress.Any上,我想知道接收到的数据包发送到(...或接收到)哪个IP地址。看来我不能只使用Socket.LocalEndPoint属性,因为它总是返回0.0.0.0(这是有道理的,因为它绑定(bind)到那个...)。以下是我目前使用的代码中有趣的部分:privateSocketudpSock;privatebyte[]buffer;publicvoidStarter(){//SetupthesocketandmessagebufferudpSock=newSocket(AddressFamily.InterNetw

Springboot配置Websocket,前端提示WebSocket connection to ws://localhost:8080/* failed

做项目的时候要构建一个在线聊天系统,学习之前就先用了别人的一份代码跑一下,但是怎么都建立不了websockt连接,前端提示:WebSocketconnectiontows://localhost:8080/*failed网上查到的解决办法主要有:1、修改tomcat版本到8以上。但是我的版本是9,不应该是tomcat问题。2、修改ws连接成wss。无效。3、使用WebSocket类配置。无效。4、修改localhost端口。无效。解决:最后是在一篇博文底下的评论看到的,@@ServerEndpoint注解后面跟的url,得先加/。错误用法:@ServerEndpoint("websocket/