TangGodBlogs

TangGodBlogs

Slash Youth

TreeMap1.6
前言今天来介绍下TreeMap,TreeMap是基于红黑树结构实现的一种Map,要分析TreeMap的实现首先就要对红黑树有所了解。 构造图如下: 蓝色线条:继承 绿色线条:接口实现 正文TreeMap底层是基于红黑树(Red-Black tree)实现,所以在学习TreeMap之前我们先来了解下红黑树。 红黑树又称红-黑二叉树,它首先是一颗二叉树,它具体二叉树所有的特性。同时红黑树更是一颗自平衡的排序二叉树。 我们知道一颗基本的二叉树他们都需要满足一个基本性质–即树中的任何节点的值大于它的左子节点,且小于它的右子节点。按照这个基本性质使得树的检索效率大大提高。我们知道在生成二叉树的过...
java中方法传参
1).方法传参中调用者传的对象与使用者得到的对象,指向的是同一个内存地址,所以修改的是同一个对象。(不做clone操作的情况下)例: 1.图中所有调用list对象的方法,引用的都是同一个list内存对象。 2.图中 ref2的user(从list中取出的)与main中的user1指向的是同一个对象,所以当调用完,返回main方法时,再修改user1仍然修改了list中的user对象的值。 3.图中ref2中的user如果是重新new出的话,返回到main方法时,再修改user1则不对list中user对象的值生效,因为他们指向的不是同一...
nginx
NGINX以高性能的负载均衡器,缓存,和web服务器闻名,驱动了全球超过 40% 最繁忙的网站。在大多数场景下,默认的 NGINX 和 Linux 设置可以很好的工作,但要达到最佳性能,有些时候必须做些调整。首先我们先了解其工作原理。 1. Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。 Nginx的模块从结...
layim+springBoot+netty+(dubbo__cloud)搭建web聊天系统(学习高并发)
问题概览: 1.使用springBoot的 jdbc组件,启动时,不加载datasource,出问题 . 解决方案:更换成spring的 jdbc组件 (好像还报错) 解决方案:@SpringBootApplication(exclude={DataSourceAutoConfiguration.class}) 启动类增加注解属性 2.springBoot中不可用application.xml来命名spring配置文件,会引起冲突: 文档根元素 “beans” 必须匹配 DOCTYPE 根 “null” 3.springBoot中 spring的配置文件 会不加载?? 解决方案...
redis安装
linux 阿里阿里的CentOS 7+ 版本的系统 :wget http://download.redis.io/releases/redis-4.0.1.tar.gz tar zxvf redis-4.0.1.tar.gz cd redis-4.0.1 yum install -y tcl make & make test (出错则换为:make MALLOC=libc vi redis.cnf 修改为守护进程的方式运行: daemonize yes 设置Redis 密码: requirepass 密码 设置Redis 端口号: port 9000 密码...
session共享
http://blog.csdn.net/zcyhappy1314/article/details/71270937 http://www.cnblogs.com/jiangkuan/p/6189136.html http://www.jianshu.com/p/ece9ac8e2f81
shiro基本使用
本篇内容大多总结自张开涛的《跟我学Shiro》原文地址:http://jinnianshilongnian.iteye.com/blog/2018936 我并没有全部看完,只是选择了一部分对我来说急需在项目中使用的知识加以学习。并且对于大多数第一次接触Shiro的同学来说,掌握这些也应该足够了。 一、架构 要学习如何使用Shiro必须先从它的架构谈起,作为一款安全框架Shiro的设计相当精妙。Shiro的应用不依赖任何容器,它也可以在JavaSE下使用。但是最常用的环境还是JavaEE。下面以用户登录为例: (1)使用用户的登录信息创建令牌 1UsernamePasswordToken...
《Netty实战4.1.16》
第一部分–第一章: 使用Selector 的非阻塞I/O总体来看,与阻塞I/O 模型相比,这种模型提供了更好的资源管理: a、使用较少的线程便可以处理许多连接,因此也减少了内存管理和上下文切换所带来开销; b、当没有I/O 操作需要处理的时候,线程也可以被用于其他任务。尽管已经有许多直接使用Java NIO API 的应用程序被构建了,但是要做到如此正确和安全并不容易。特别是,在高负载下可靠和高效地处理和调度I/O 操作是一项繁琐而且容易出错的任务,最好留给高性能的网络编程专家——Netty。 异步和可伸缩性之间的联系又是什么呢? 1.非阻塞网络调用使得我们可以不必等待一个操作的完成。完...
TangGod
酒精无法麻痹我的愁绪