
框架
文章平均质量分 60
宝华的小岛
生命不息,奔跑不止。
展开
-
Sentinel接口限流框架在Springcloud中的简单应用
Springboot使用Sentinel,还是稍显复杂。alibaba封装了针对Springcloud的使用,更加简单。还是上次启动的那个控制台。一、创建Spri原创 2021-05-31 15:49:22 · 221 阅读 · 0 评论 -
Sentinel接口限流框架在Springboot中的简单应用
本来目的只是限流,在程序里面可以定义规则。但是鉴于接口限流规则应该随着访问热度而改变,使用硬编码方式不可取,这样就需要借助于Sentinel控制台程序在网页端dong'tai'jin'xi原创 2021-05-31 15:34:53 · 593 阅读 · 0 评论 -
Netty初学渐进系列
学习Netty过程中,谢了一些例程和笔记,在这里归纳一个目录,方便查阅。一、Netty应用(一)基本模型二、Netty应用(二)传输Protobuf数据类型三、Netty应用(三)粘包与拆包四、Netty应用(四)实时通信的简单实现五、Netty应用(五)架设WebSocket服务六、Netty应用(六)Websocket连接时携带用户名附:Protobuf初次使用小记...原创 2021-05-22 00:12:44 · 130 阅读 · 0 评论 -
Netty应用(六)Websocket连接时携带用户名
接上次Netty实现Websocket协议通信的例子https://blog.youkuaiyun.com/xxkalychen/article/details/115903261?spm=1001.2014.3001.5501整个实例对于客户端的标识都是channel的id或者远程地址,并不直观,我们希望有更加清楚的标识,比如用户名。我们可以制定协议或者上行报文,来识别哪些消息是身份标识,哪些是聊天内容。不过这样我们就要在连接成功之后第一次发送消息时确定。其实我们也可以在连接的时候就带上我们的用户名,就像原创 2021-04-20 17:04:15 · 3533 阅读 · 0 评论 -
Netty应用(五)架设WebSocket服务
Springboot有封装好的Websocket包,只需要几个简单的类和注解就能提供服务。在Java程序中,我们可以使用Netty来实现Websocket服务。依赖:compile 'io.netty:netty-all:4.1.63.Final'同样还是基本的三个文件。1. 自定义处理器package com.chris.ws.server.handler;import io.netty.channel.ChannelHandlerContext;import io.nett原创 2021-04-20 13:27:39 · 598 阅读 · 0 评论 -
Netty应用(四)实时通信的简单实现
本实例实现最基本的CS应用模型,程序启动后通过控制台输入来实现交互。服务器端和客户端使用相同的依赖。compile 'io.netty:netty-all:4.1.63.Final'一、服务器端1. 自定义处理器package com.chris.chat.server.handler;import io.netty.channel.Channel;import io.netty.channel.ChannelHandlerContext;import io.netty.ch原创 2021-04-20 12:53:51 · 907 阅读 · 0 评论 -
Netty应用(三)粘包与拆包
粘包与拆包可能是Netty应用中比较重要的一环。在数据发送端,如果连续发送了一批数据,系统会更具一定规则和条件把这些数据拼接在一起一次性发送。这样对于接收端就失去了数据原来的完整性,所以需要按照协议的规则把拼在一起的数据拆分开来。netty默认提供了几种拆包的策略,有很多资料可以参考。不过我认为最实用的,还是通过网数据头部写入数据长度的方案,它既能准确识别数据,又能节省空间,还能避免像使用分隔符的方式造成分隔符误判(定义好的分隔符在消息中不能包含)。我们创建一个CS模型来测试。为了简洁起见,我们设定原创 2021-04-20 01:19:07 · 262 阅读 · 0 评论 -
Netty应用(二)传输Protobuf数据类型
接上面两篇文章:Netty应用(一)基本模型https://blog.youkuaiyun.com/xxkalychen/article/details/115876196Protobuf初次使用小记https://blog.youkuaiyun.com/xxkalychen/article/details/115875643?spm=1001.2014.3001.5501一、服务器端1. gradle依赖 compile 'io.netty:netty-all:4.1.63.Final' ..原创 2021-04-19 22:57:05 · 291 阅读 · 1 评论 -
Netty应用(一)基本模型
netty是NIO通信框架,七基本使用方式大同小异。一、创建工程,添加依赖compile 'io.netty:netty-all:4.1.63.Final'这个依赖是目前官网上推荐的最高版本。二、创建测试类服务端:package com.chris.netty;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelHandlerContext;import io.netty.cha原创 2021-04-19 22:36:52 · 215 阅读 · 0 评论 -
复制两个不同类型对象的相同字段的值
需求的来源是项目。每次做项目,都要建立很多的数据体,有的是数据库表产生的ORM,有的是网络请求的参数体,有的是网络接口调用给的返回数据返回数据体。同一种数据,这几种数据具体的结构并不一样。ORM旺旺跟数据表一致,并且做了映射。但是外键数据只有id,并不详细,前端调用的数据旺旺要求比ORM更丰富,有些则不需要。虽说可以建立一些与ORM无关的字段来用,但是字段多了会很麻烦,所以需要建立专用的VO数据类原创 2017-12-02 23:20:01 · 9484 阅读 · 9 评论