Spring

本文全片以问题为导向,阐述Spring的意义 Spring实战Spring的目的简化Java开发问题:很多框架通过强迫应用继承它们的类或实现它们的接口从而导致应用与框架绑死。(侵入式) Spring构建的应用中,它的类通常没有任何痕迹表明你使用了Spring。最坏的场景是,一个类或许会使用Spring注解,但它依旧是POJO。 1.1.2 依赖注入类相互之间进行协作来完成特定的业务逻辑。就会产生依赖 问题:传统的做法,每个对象负责管理与自己相互协作的对象(即它所依赖的对象)的引用,这将会导...

Read More

Netty(一) 之 I/O通信

Netty(一) 之 I/O通信IO类型介绍BIO通信 一个线程负责连接 一请求一应答 缺乏弹性伸缩能力 由于线程是宝贵的资源,会造成宕机。请求来到,由accpter去针对每个请求申请线程 伪异步IO通信 线程池负责连接 M请求N应答 超过线程池会阻塞,由于限制不会宕机 由线程池来处理所有客户端的接入, NIO通信 加入了缓冲区Buffer:所有数据由缓冲区处理,读入缓冲区,写入缓冲区。 通道Channel:是双向的,读写可以同时进行 多路复用器Selector:会不断轮询注册在S...

Read More

【Machine Learning】机器学习:简明入门指南

本文是一篇转载自伯乐在线的译文,英文原文是这里:Machine Learning is Fun! — by Adam Geitgey 在听到人们谈论机器学习的时候,你是不是对它的涵义只有几个模糊的认识呢?你是不是已经厌倦了在和同事交谈时只能一直点头?让我们改变一下吧! 本指南的读者对象是所有对机器学习有求知欲但却不知道如何开头的朋友。我猜很多人已经读过了“机器学习” ——维基百科词条,倍感挫折,以为没人能给出一个高层次的解释。本文就是你们想要的东西。 本文目标在于平易近人,这意味着文中...

Read More

分布式一致性 与 CAP理论、BASE理论

分布式一致性 与 CAP理论、BASE理论转载自 https://www.cnblogs.com/szlbm/p/5588543.html并稍作修改 三种场景1、火车站售票 假如说我们的终端用户是一位经常坐火车的旅行家,通常他是去车站的售票处购买车 票,然后拿着车票去检票口,再坐上火车,开始一段美好的旅行—-一切似乎都是那么和谐。想象一下,如果他选择的目的地是杭州,而某一趟开往杭州的火车 只剩下最后一张车票,可能在同一时刻,不同售票窗口的另一位乘客也购买了同一张车票。假如说售票系统没有进行...

Read More

shuffle()打乱数组的实现

shuffle()打乱数组的实现在做快排时,为了保证快排nlogn,会打乱数组。然后想着怎么实现,用随机数需要一点技巧。 注意:Collection.shuffle()只能打乱集合,没法打乱数组 思路:在数组长度n内生成一个随机数r,复制arr1的r到arr2上。arr1的最后一个数组替换到r上,n–。重复进行 123456789101112131415161718192021222324252627282930313233import java.util.Random;/** * @au...

Read More

java动态代理原理与实现

Java动态代理原理与实现特征:代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。 代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。(有点像dubbo?) 简单的说就是,我们在访问实际对象时,是通过代理对象来访问的,代理模式就是在访问实际对象时引入一定程度的间接性,因为这种间接性,可以附加多种用途。 静态代理1...

Read More

Swwager使用及原理

Swwager使用及原理整理一下,Swagger的使用和原理 Spring Boot 整合Swagger官方文档与下载推荐文档 引入依赖12345678910<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2...

Read More

复习整理————Java WEB

Java WEB与 场景实现大数据 找数,排序,计数,去重思想:MapReduce 分治bitmap位图,用小信息代表大信息。如(2-Bitmap(每个数分配2bit,00表示不存在,01表示出现一次,10表示多次,11无意义)就能代表对象是否存在位图方法:使用位图法判断整形数组是否存在重复判断集合中存在重复是常见编程任务之一,当集合中数据量比较大时我们通常希望少进行几次扫描,这时双重循环法就不可取了。 位图法比较适合于这种情况,它的做法是按照集合中最大元素max创建一个长度为max+1...

Read More

Java生产环境下性能监控与调优

Java生产环境下性能监控与调优用于生产环境硬盘,网络,cpu问题 生产环境问题特点:不好定位,不能重启,不能修改 内存溢出如何处理 给服务器分配多少内存 对垃圾收集器 如何性能调优 CPU负载飙高 应用分配多少线程 不加log如何确定是否执行代码 JVM字节码 字符串:添加,StringBUffer i++与++i 熟练使用各种工具监控和调试工具 熟悉JVM字节码 学会自动内存回收机制,GC调优 JVM参数类型基于JDK 命令行工具 的监控JVM的参数类型标准参数:...

Read More

I/O模型与多路复用

I/O模型与多路复用本文转载自这里,并加上了自身理解,感觉更透彻了 同步、异步、阻塞、非阻塞同步 & 异步同步与异步是针对多个事件(线程/进程)来说的。同步和异步关注的是消息通信机制 如果事件A需要等待事件B的完成才能完成,这种串行执行机制可以说是同步的,这是一种可靠的任务序列,要么都成功,要么都失败。 如果事件B的执行不需要依赖事件A的完成结果,这种并行的执行机制可以说是异步的。事件B不确定事件A是否真正完成,所以是不可靠的任务序列。 同步异步可以理解为多个事件的执行方式和执...

Read More


Powered by Hexo and Hexo-theme-hiker

Copyright © 2017 - 2019 Jae's blog All Rights Reserved.

UV : | PV :