首页 文章 精选 留言 我的

精选列表

搜索[异步支持],共10000篇文章
优秀的个人博客,低调大师

Caffeine二级缓存+CompletableFuture异步刷新实战

一个商品详情页的服务,Redis 单层缓存扛着 QPS 8000,P99 在 30ms,看起来还行。但单层缓存迟早会到瓶颈,开始调研二级缓存方案。压测验证了这个判断——QPS 拉到 3 万,P99 飙到 200ms+,Redis 的 CPU 干到 80%。问题不在 Redis 本身,而在网络:每次请求都要走一次网络往返,1~5ms 的 RTT 在 3 万 QPS 下被无限放大。于是正式搞起二级缓存:在应用进程内加一层 Caffeine 本地缓存做 L1,Redis 做 L2。从踩坑到上线跑了半年多,稳得很。今天就把它掰开揉碎讲透。

优秀的个人博客,低调大师

异步爬虫里 aiohttp 超时设多少不会误杀正常请求

超时设 3 秒,跑半小时成功率从 98% 掉到 85%。目标站点 RTT 正常,代理 IP 存活,但大量请求抛 ServerTimeoutError。问题出在超时阈值与实际网络时序不匹配,把正常的处理延迟当成了网络故障。aiohttp 超时的实现机制aiohttp 的 ClientTimeout 底层依赖 asyncio 的定时器协程。每一层超时对应一个独立的 asyncio.wait_for 或 loop.call_later 调度,触发时取消对应的协程并抛出 asyncio.TimeoutError,aiohttp 再包装成 aiohttp.ServerTimeoutError。

优秀的个人博客,低调大师

国产异步非阻塞通信框架 smart-socket 1.5.18 发布

smart-socket 是一款极简、易用、高性能的国产开源 AIO 通信框架,旨在帮助开发人员轻松打造企业级通信应用。 此版本主要变化 修复读写IO递归并发回调场景下可能引发的空指针问题。 移除示例程序中的fastjson依赖 升级 slf4j 版本至 1.7.36 maven 坐标 <dependency> <groupId>org.smartboot.socket</groupId> <artifactId>aio-core</artifactId> <version>1.5.18</version> </dependency> 想要进一步了解 smart-socket,请移步以下链接不迷路: 文档 https://smartboot.gitee.io/book/smart-socket/ Gitee 仓库 https://gitee.com/smartboot/smart-socket Github 仓库 https://github.com/smartboot/smart-socket

优秀的个人博客,低调大师

Magician 1.1.11 发布,异步非阻塞的网络协议解析包

本次更新修复了一个小bug,在之前的版本中websocket的报文解析存在一些问题,会导致消息长度超过126个字节后就无法获取了,并且会引发之后发送的所有消息都解析不出来。 在1.1.11 中 这个bug得到了解决。 除此之外还简化了一点点TCP服务创建的语法,真的只是一点点哦,加了个构造函数,使得在使用默认线程池的时候也可以指定EventRunner的数量了。 使用默认线程池时指定EventRunner数量 /* * EventGroup加了个构造函数,可以只指定EventRunner数量 * 以前是两个极端,要么连EventGroup都用默认,要么EventRunner的数量和线程池 全都自定义,不够灵活 */ EventGroup ioEventGroup = new EventGroup(1); EventGroup workerEventGroup = new EventGroup(10); workerEventGroup.setSteal(EventEnum.STEAL.YES); /* 创建TCP服务,默认采用http解码器 */ TCPServer tcpServer = Magician.createTCPServer(ioEventGroup, workerEventGroup) .soTimeout(3000) .handler("/", new DemoRequestHandler()) .bind(8080); 访问官网可以了解更多:http://magician-io.com

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册