一文详解 Netty 组件
作者:京东物流张弓言一、背景Netty是一款优秀的高性能网络框架,内部通过NIO的方式来处理网络请求,在高负载下也能可靠和高效地处理I/O操作作为较底层的网络通信框架,其被广泛应用在各种中间件的开发中,比如RPC框架、MQ、Elasticsearch等,这
Stella981 Stella981
3年前
Retrofit网络框架入门使用
1.简单介绍retrofit事实上就是对okhttp做了进一步一层封装优化。我们仅仅须要通过简单的配置就能使用retrofit来进行网络请求了。Retrofit能够直接返回Bean对象,比如假设我们进行一个网络接口的请求。返回来一串json字符串。那么这个时候一般我们都要拿到这个json字符串后进行解析得到相应的Bean对象,Ret
Wesley13 Wesley13
3年前
JAVA中的BIO、NIO和AIO
Java中的IO方式主要分为3种:BIO(同步阻塞)、NIO(同步非阻塞)和AIO(异步非阻塞)。BIO同步阻塞模式。在JDK1.4以前,使用Java建立网络连接时,只能采用BIO方式,在服务器端启动一个ServerSocket,然后使用accept等待客户端请求,对于每一个请求,使用一个线程来进行处理用户请求。线程的大部分时间都在等待请求的
Stella981 Stella981
3年前
OpenResty之使用 Nginx 内置绑定变量
Nginx作为一个成熟、久经考验的负载均衡软件,与其提供丰富、完整的内置变量是分不开的,它极大增加了对Nginx网络行为的控制细度。这些变量大部分都是在请求进入时解析的,并把他们缓存到请求cycle中,方便下一次获取使用。首先来看看Nginx对外都开放了那些API。$arg\_name:请求中的name参数$args:请求中的参数
Stella981 Stella981
3年前
12306 抢票系列之只要搞定RAIL_DEVICEID的来源,从此抢票不再掉线(中)
直奔重点高楼大厦寻关键线索Js文件中关于网络请求最典型的就是异步回调,将原本简单的操作复杂化,非要你等我,我等他,他还等着他的她.最终直接结果就是整个请求流程反过来了,假设正常流程:是ABCDEF,那么异步请求很可能陷入这样的陷阱:F<E<D<C<B<A所以一层又一层的回调函数
Stella981 Stella981
3年前
Hystrix 服务的隔离策略对比,信号量与线程池隔离的差异
hytrix支持线程池隔离和信号量隔离信号量隔离适应非网络请求,因为是同步的请求,无法支持超时,只能依靠协议本身线程池隔离,即,每个实例都增加个线程池进行隔离先给个总结对比:隔离方式是否支持超时是否支持熔断隔离原理
可莉 可莉
3年前
12306 抢票系列之只要搞定RAIL_DEVICEID的来源,从此抢票不再掉线(中)
直奔重点高楼大厦寻关键线索Js文件中关于网络请求最典型的就是异步回调,将原本简单的操作复杂化,非要你等我,我等他,他还等着他的她.最终直接结果就是整个请求流程反过来了,假设正常流程:是ABCDEF,那么异步请求很可能陷入这样的陷阱:F<E<D<C<B<A所以一层又一层的回调函数
Stella981 Stella981
3年前
Go的Pipe应用场景,往服务器提交multipart请求
multipart请求是多部件请求体,一般来多用于上传文件等场景,由于文件上传,请求体会比较大,就不适合在内存中构建完整的请求体(例如使用bytes.Buffer)。这种情况就可以考虑使用Pipe,它会返回一个Writer和一个Reader,管道流,顾名思义,一头读,一头写。读取磁盘文件,写入网络,并不会缓存在内存中。非常适合这种场
Wesley13 Wesley13
3年前
HTTP请求行、请求头、请求体详解
1、HTTP请求报文解剖HTTP请求报文由3部分组成(请求行请求头请求体):!(https://static.oschina.net/uploads/img/201708/20125915_Wv7I.jpg)下面是一个实际的请求报文:!(https://static.oschina.net/uploads/img/
Stella981 Stella981
3年前
ShareREC for iOS录屏原理解析
文/游族网络Mob云平台iOS开发专家李永超众所周知,由于iOS系统的封闭性,也出于保护用户隐私的角度,苹果并没有公开的API供开发者调用,来录制屏幕内容。导致许多游戏或者应用没有办法直接通过调用系统API的方式提供录制功能,用户也无法将自己一些玩游戏的过程录制下来分享到其他玩家。基于此,ShareREC应运而生。下面我们从说一下Sha