摘要: Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理服务器 ,也是一个 IMAP/POP3/SMTP代理服务器 。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码 阅读全文
posted @ 2018-12-18 21:38 撸码识途 阅读(3596) 评论(0) 推荐(0) 编辑
摘要: redis是单线程,线程安全的 redis可以能够快速执行的原因: (1) 绝大部分请求是纯粹的内存操作(非常快速)(2) 采用单线程,避免了不必要的上下文切换和竞争条件(3) 非阻塞IO - IO多路复用 IO多路复用中有三种方式:select,poll,epoll。需要注意的是,select,p 阅读全文
posted @ 2018-12-18 21:31 撸码识途 阅读(4599) 评论(1) 推荐(1) 编辑
摘要: 1.轮询: 缺省设置就是轮询设置,每个请求会按时间顺序逐一分配到不同的后端服务器; 在轮询中,如果服务器down掉,会自动剔除该服务器; 2.weight: 权重越高分配到需要处理的请求越多。 3.ip_hash: 指定负载均衡器按照基于客户端IP的分配方式,这个方法确保了相同的客户端的请求一直发送 阅读全文
posted @ 2018-12-18 20:53 撸码识途 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 我们在使用dubbo的过程中一定对于下面的配置十分熟悉: <dubbo:reference id="xx" interface="xx" retries="2" timeout="3000"/> 下面来解释一下各参数的含义: 1.timeout="3000" ,服务调用的超时时间,调用服务的过程中如 阅读全文
posted @ 2018-12-18 20:30 撸码识途 阅读(2835) 评论(0) 推荐(0) 编辑
摘要: 系统会通过加载,连接,初始化三个步骤来对该类进行初始化操作: 系统会通过加载,连接,初始化三个步骤来对该类进行初始化操作: ①类的加载: 类加载时指将类的class文件(字节码文件)载入内存中,并为之创建一个java.lang.Class对象,我们称之为字节码对象. 类的加载过程由类加载器(Clas 阅读全文
posted @ 2018-12-17 10:58 撸码识途 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 一:事件分离器 在IO读写时,把 IO请求 与 读写操作 分离调配进行,需要用到事件分离器。根据处理机制的不同,事件分离器又分为:同步的Reactor和异步的Proactor。 Reactor模型: Proactor模型: - 应用程序在事件分离器注册 读完成事件 和 读完成事件处理器,并向操作系统 阅读全文
posted @ 2018-12-15 12:39 撸码识途 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 一个实例通过client端和server端通讯 客户端通过TCP/IP传输资源文件,比如图片,文字,音频,视频等..... 服务端接受到文件存入本地磁盘,返回接受到:“收到来自于"+s.getInetAddress().getHostName()+"的信息” 阅读全文
posted @ 2018-12-15 12:24 撸码识途 阅读(769) 评论(0) 推荐(0) 编辑
摘要: 一个实例通过client端和server端通讯 客户端发送:“我是客户端,请多关照” 服务端回复:“收到来自于"+s.getInetAddress().getHostName()+"的信息” 阅读全文
posted @ 2018-12-15 12:22 撸码识途 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 1.导入依赖包 <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> <version>5.0.0.Alpha1</version> </dependency> 2.netty服务端代码 public 阅读全文
posted @ 2018-12-15 12:17 撸码识途 阅读(2871) 评论(1) 推荐(1) 编辑
摘要: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务? 在Java中可以通过线程池来达到这样的效果。今天我们 阅读全文
posted @ 2018-12-01 15:03 撸码识途 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 一、背景: 线程不安全的HashMap 因为多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap。 效率低下的HashTable容器 HashTable容器使用synchronized来保证线程安全,但在线程竞争激烈的情况下 阅读全文
posted @ 2018-12-01 14:49 撸码识途 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMap的实现原理进行 阅读全文
posted @ 2018-12-01 14:42 撸码识途 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 链表跟数组的区别? 数组静态分配内存,链表动态分配内存;数组在内存中连续,链表不连续;数组利用下标定位,时间复杂度为O(1),链表定位元素时间复杂度O(n);数组插入或删除元素的时间复杂度O(n),链表的时间复杂度O(1)。 根据以上分析可得出数组和链表的优缺点如下: 数组的优点 随机访问性强(通过 阅读全文
posted @ 2018-12-01 14:29 撸码识途 阅读(1561) 评论(0) 推荐(0) 编辑
摘要: <!-- flowchart 箭头图标 勿删 --> 说明 通过阅读源码,了解LinkedBlockingQueue的特性。本文基于JDK1.7源码 正文 通过查询API对LinkedBlockingQueue特点进行简单的了解: LinkedBlockingQueue是一个基于已链接节点的,范围任 阅读全文
posted @ 2018-12-01 14:18 撸码识途 阅读(636) 评论(0) 推荐(0) 编辑
摘要: 版权声明:本文为博主原创文章,未经博主允许不得转载。转载注明出处:Sunzxyong https://blog.csdn.net/u010687392/article/details/50549236 <!-- flowchart 箭头图标 勿删 --> 前言 对于ThreadLocal、Volat 阅读全文
posted @ 2018-12-01 13:34 撸码识途 阅读(741) 评论(0) 推荐(0) 编辑