针对中间件部署的应用(war包),可使用nginx自带的反向代理以及轮询功能,实现应用的负载均衡。 一、架构图 二、环境准备 准备2套环境,如19.1.0.18:7001,19.1.0.16:7001;环境使用相同的应用包、中间件以及配置文件(如数据库连接、redis),目的是可单独使用任意一套环境 ...
分类:
其他好文 时间:
2020-04-17 15:43:24
阅读次数:
92
轮询 长轮询 websocket 轮询(效率极低,基本不用) 长轮询(兼容性好) 基于ajax,队列以及异常处理实现简易版本的群聊功能(长轮询) 后端 前端 websocket(主流浏览器都支持) 内部原理 代码验证(无需掌握) 总结:上述代码知识为了诠释websocket内部本质,实际应用直接使用 ...
分类:
Web程序 时间:
2020-04-15 00:30:18
阅读次数:
77
一、前言 在前端,我们有很多功能需要用到定时器。譬如轮询,譬如定时关闭弹框,譬如实现秒表,譬如一段时间后跳转页面等等。因此,我们需要掌握定时器的用法。二、设置定时器 目前window对象提供有两个方法来实现定时器的效果,分别是window.setTimeout()和window.setInterva ...
分类:
Web程序 时间:
2020-04-14 09:16:10
阅读次数:
101
学会了Redis的基本操作还不够,再来看看升级部分 1. 数据删除策略 惰性删除+定期删除(默认) 定期删除:默认是每隔 100ms 就 轮询各个库随机抽取 一些设置了过期时间的key,检查其是否过期,如果过期就删除。每隔100ms就遍历所有的设置过期时间的 key 的话,是个损耗。 惰性删除:定期 ...
分类:
其他好文 时间:
2020-04-12 18:17:09
阅读次数:
59
学习IO,首先要明白四个东西。 1.同步 java自己去处理io。 2.异步 java将io交给操作系统去处理,告诉缓存区大小,处理完成回调。 3.阻塞 使用阻塞IO时,Java调用会一直阻塞到读写完成才返回。 4.非阻塞 使用非阻塞IO时,如果不能立马读写,Java调用会马上返回,当IO事件分发器 ...
分类:
编程语言 时间:
2020-04-12 14:09:51
阅读次数:
73
1,引言 上一篇介绍了使用使用 Visual Studio 开发 "Azure Functions" 函数,此篇介绍 “Azure Functions” 的测试以及直接从 Vistual Studio 在 Azure 上的部署 ”Azure Functions“应用。 接着上一篇,本篇介绍在 “Az ...
分类:
Web程序 时间:
2020-04-09 00:23:06
阅读次数:
92
处理业务:事件是如何在 pipeline 中传播的 [toc] __Netty 系列目录()__ 在上一节 "接收数据:自适应缓冲区和连接读是为了解决什么问题" 中,我们知道 NioEventLoop 不断的轮询,接收 OP_READ 事件;然后将读取到的数据通过 pipeline.fireChan ...
分类:
其他好文 时间:
2020-04-06 12:03:05
阅读次数:
122
ribbon ribbon负载策略: RoundRobinRule,轮训策略,默认策略 RandomRule,随机,使用Random对象从服务列表中随机选择一个服务 RetryRule,轮询 + 重试 WeightedResponseTimeRule,优先选择响应时间快,此策略会根据平均响应时间计算 ...
分类:
编程语言 时间:
2020-04-06 09:35:01
阅读次数:
89
构建连接:NioSocketChannel 是什么时候激活的 [toc] __Netty 系列目录()__ 在上一节中,我们分析服务器的启动过程,接下来就是开门迎客。 1. 主线分析 1.1 主线 NioEventLoop 不断的轮询,接收 OP_ACCEPT 事件;ServerBootstrapA ...
分类:
移动开发 时间:
2020-04-06 09:27:04
阅读次数:
88
NIO的引入 多路非阻塞高速网络IO通道 同步和异步 这个概念其是对于程序运行结果的获得方式而言: 同步:在没有获得结果之前或通过轮询的方式不断地询问结果是否产生,在得到结果之前不会返回 异步:调用者在发出调用之后,直接返回没有结果,等待被调用者产生结果之后通过状态通知调用者已完成,在通过回调函数返 ...
分类:
其他好文 时间:
2020-04-04 14:48:55
阅读次数:
70