Wesley13 Wesley13
3年前
JAVA中的BIO、NIO和AIO
Java中的IO方式主要分为3种:BIO(同步阻塞)、NIO(同步非阻塞)和AIO(异步非阻塞)。BIO同步阻塞模式。在JDK1.4以前,使用Java建立网络连接时,只能采用BIO方式,在服务器端启动一个ServerSocket,然后使用accept等待客户端请求,对于每一个请求,使用一个线程来进行处理用户请求。线程的大部分时间都在等待请求的
Stella981 Stella981
3年前
Netty系列之Netty高性能之道
1\.背景1.1.惊人的性能数据最近一个圈内朋友通过私信告诉我,通过使用Netty4Thrift压缩二进制编解码技术,他们实现了10WTPS(1K的复杂POJO对象)的跨节点远程服务调用。相比于传统基于Java序列化BIO(同步阻塞IO)的通信框架,性能提升了8倍多。事实上,我对这个数据并不感到惊讶,根据我5年
Stella981 Stella981
3年前
30.Docker 控制组
Docker控制组控制组是Linux容器机制的另外一个关键组件,负责实现资源的审计和限制。它提供了很多有用的特性;以及确保各个容器可以公平地分享主机的内存、CPU、磁盘IO等资源;当然,更重要的是,控制组确保了当容器内的资源使用产生压力时不会连累主机系统。尽管控制组不负责隔离容器之间相互访问、处理数据和进程,它在防
Stella981 Stella981
3年前
Redis全面解析
1、什么是Redis?Redis是BSD协议,是一个高性能的keyvalue非关系型数据库。2、redis单线程问题所谓的单线程指的是网络请求模块使用了一个线程(所以不需考虑并发安全性),即一个线程处理所有网络请求,其他模块仍用了多个线程。redis采用多路复用机制:即多个网络socket复用一个io线程,实际是单个线程通过记录跟踪每一个S
Stella981 Stella981
3年前
MoChat企业微信开源系统,能否成为企业微信开源框架项目中的独角兽?
2020年,国内企业服务SaaS领域因疫情加速驶入快车道,一时间企业服务领域的创业项目从成为了兵家必争的赛道。这其中,基于企业微信生态的私域流量运营SaaS工具尤为引人瞩目,作为企业私域流量运营的重要场景和工具,吸引了大批的服务商和企业,行业进入了百花齐名百家开放的阶段。!(https://uploadimages.jianshu.io/uploa
Wesley13 Wesley13
3年前
Java NIO之缓冲区
JavaNIO之Buffer  Java传统的I/O模型是面向单个字节的,它将输入输出抽象为字节流或字符流。这种单个字节的读取或写入模型的效率比较低,而且不符合操作系统的I/O特点。操作系统的IO是面向字节块的,通常是直接从磁盘中读取一块数据到内存或写入一块数据到磁盘。JavaNIO提供了缓冲区来实现字节块的读写。
Stella981 Stella981
3年前
Redis5.0:简单的集群模式——主从模式详解
主从模式主从模式是最简单的集群模式,其实就是复制基本只能解决读写分离问题,主机服务器一旦宕机基本完蛋,不具备高可用。基本上redis的性能瓶颈主要在于网络IO和内存主频上面,单机版Redis在不考虑高可用的情况下基本满足80%的项目需要,因为单机版Redis可以实现10W/S的请求,除非缓存KV值过大,通过读写分离缓存网卡的压
Stella981 Stella981
3年前
NIO开发Http服务器(5
最近学习了JavaNIO技术,觉得不能再去写一些HelloWorld的学习demo了,而且也不想再像学习IO时那样编写一个控制台(或者带界面)聊天室。我们是做WEB开发的,整天围着tomcat、nginx转,所以选择了一个新的方向,就是自己开发一个简单的Http服务器,在总结JavaNIO的同时,也加深一下对http协议的理解。项目实现了静态资源(
Stella981 Stella981
3年前
Python asyncio 与 aiohttp 使用简单记录
asyncio的基本概念asyncio是在python3.4中被引进的异步IO库。你也可以通过python3.3的pypi来安装它。它相当的复杂,而且我不会介绍太多的细节。相反,我将会解释你需要知道些什么,以利用它来写异步的代码。简而言之,有两件事情你需要知道:协同程序和事件循环。协同程序像是方法,但是它们可以在代码中的特定点暂停和继
Stella981 Stella981
3年前
LiteHttpServer 2.0 Feature
占坑,2.0版本应该具备一下特性:1.引入高性能异步io2.Lua高并发支持3.引入http解析库,更完整的支持http协议4.更智能的文件缓存策略5.引入redis的支持6.更强大的高性能异步策略7.支持重定向到其他http服务器,形如nginx的代理功能.有空再开发,并且开源1.0版本URL:http