- 博客(55)
- 收藏
- 关注
转载 SpringMvc跨域
pringMvc跨域一、SpringMvc跨域支持 从Spring MVC 4.2 开始增加支持跨域访问二、使用方法 1、某个方法支持跨域访问 在方法上增加@CrossOrigin注解,如下: @RequestMapping(“/crossDomain2”) @ResponseBody @CrossOrigin public String crossDomain2(HttpServle
2017-08-03 18:31:55
589
转载 Elastic-Job 2.2.1
1、[作业的调度]http://www.cnblogs.com/haoxinyue/p/6937768.html
2017-07-31 10:33:47
470
原创 秒杀技术
1、Web系统大规模并发——电商秒杀与抢购2、java实现京东秒杀功能分享3、Java高并发秒杀API读书笔记4、Java高并发秒杀API之web层5、Java高并发秒杀API之业务分析与DAO层6、秒杀系统架构分析与实战7、秒杀系统设计详解
2017-03-27 16:33:46
742
原创 IntelliJ IDEA
点击这里可以查看IntelliJ IDEA开发工具详解!1、IntelliJ IDEA下载安装 1. 下载路径:公司共享路径 \\192.168.10.234\share\idea(建议大家不要去下载其他地址的资源) 2. 破解方式:选择License server,填写http://idea.iteblog.com/key.php破解IntelliJ IDEA,如下图所示:
2017-03-14 11:37:46
1964
原创 Java基础之异常
1. 异常的概述 异常指不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。异常是一个事件,它发生在程序运行期间,干扰了正常的指令流程。Java通 过API中Throwable类的众多子类描述各种不同的异常。因而,Java异常都是对象,是Throwable子类的实例,描述了出现在一段编码中的 错误条件。当条件生成时,错误将引发异常。 Java异常类层次结构图: 在 Java
2017-03-02 16:30:15
419
转载 设计模式的七大原则
看了这篇总结设计模式的七大原则之后,方知融会贯通设计模式必须忘记所有模式,仅仅从设计模式的七大基本原则出发开发高质量代码。 最近几年来,人们踊跃的提倡和使用设计模式,其根本原因就是为了实现代码的复用性,增加代码的可维护性。设计模式的实现遵循了一些原则,从而达到代码的复用性及增加可维护性的目的,设计模式对理解面向对象的三大特征有很好的启发,不看设计模式,很难深层地体会到面向对象开发带来的好处 。
2017-03-01 16:49:52
340
原创 分布式缓存-一致性哈希算法
写此文的目的 自己本来明明很懂一致性哈希算法,可是在一次面试中却表达不清楚自己所知道一切,谨以此文提醒当时想说有不到如何说清楚的瞬间。算法过程 一致性Hash算法通过一个叫做一致性Hash还的数据结构实现KEY到缓存服务器的Hash映射,如下图所示: ①先构造一个长度为0~2^32(2的32次幂)个的整数环(又称:一致性Hash环),根据节点名称的Hash值将缓存服务器节点防置在这个Has
2017-03-01 12:06:55
705
原创 Spring
1、Spring知识点2、spring中自定义Event事件的使用和浅析3、spring事件机制深入理解4、Spring事件处理5、Spring事务管理6、Spring MVC统一异常处理实战7、DispatcherServlet请求处理:最好去DEBUG源码,特别是AnnotationMethodHandlerAdapter容器类。
2017-02-21 18:16:55
280
原创 RabbitMQ
1、RabbitMQ学习总结2、快速入门HelloWorld3、工作队列Work Queue4、发布/订阅 Publish/Subscribe5、路由Routing6、Topic类型的exchange7、RCP(远程过程调用协议)8、持久化机制9、Exchange Queue RoutingKey BindingKey解析10、rabbitmq channel参数详解11、Headers交换类型(j
2017-02-20 19:30:37
272
原创 MySql
1、MySQL行级锁、表级锁、页级锁详细介绍2、mysql 5.6 binlog组提交实现原理 3、MySQL的InnoDB索引原理详解4、MySQL索引背后的数据结构及算法原理
2017-02-20 13:00:32
246
原创 Redis
1、Redis持久化2、AOF日志备份的实现4、有序集合的调表思想3、有序集合的调表实现Redis有三种类型的落地文件1。 数据文件-在配置中可设置其位置及文件名,默认文件名dump。rdb,有RDB快照生成; 2。 日志文件-在配置中也可以配置。当然,在你是以daemon方式运行的时候,这个值就不要设置为stdout了,这么设置会自动被换成/dev/null 3。 AOF文件-他的作用是用
2017-02-19 22:13:04
277
原创 TCP/IP
TCP/IP基础知识这里写链接内容 报文详解 SYN表示建立连接, FIN表示关闭连接, ACK表示响应, PSH表示有 DATA数据传输, RST表示连接重置。建立连接 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文,并分配资源,这样TCP连接就建立了。 断开连接
2017-02-19 21:43:23
233
原创 Socket Java I/O Socket I/O
1、深入分析 Java I/O 的工作机制2、Socket高性能IO模型浅析3、Socket/TCP粘包、多包和少包, 断包4、JAVA 中BIO,NIO,AIO的理解5、使用事件驱动模型实现高效稳定的网络服务器程序
2017-02-19 14:20:35
642
原创 Dubbo
1、原理机制以及实现分析2、给dubbo接口添加白名单请求处理过程 1. client一个线程调用远程接口,生成一个唯一的ID(比如一段随机字符串,UUID等),Dubbo是使用AtomicLong从0开始累计数字的 2. 将打包的方法调用信息(如调用的接口名称,方法名称,参数值列表等),和处理结果的回调对象callback,全部封装在一起,组成一个对象object 3. 向专门存放调用信息的
2017-02-19 10:09:47
440
转载 HTTP
HTTP基础教程这里写链接内容 Http协议格式请点击这里! HTTP协议建立连接、通讯与关闭连接全过程 1.请点击这里! 2.请点击这里!HTTP返回状态代码这里写链接内容当用户试图通过HTTP或FTP协议访问一台运行主机上的内容时,Web服务器返回一个表示该请求的状态的数字代码。该状态代码记录在服务器日志中,同时也可能在 Web 浏览器或 FTP客户端显示。也就是我们打开页面发生错误时浏
2017-02-18 17:53:49
511
原创 Semaphore,CountDownLatch,CyclicBarrier
1、atomic包的原理及分析概论:CountDownLatch是一个计数器闭锁,主要的功能就是通过await()方法来阻塞住当前线程,然后等待计数器减少到0了,再唤起这些线程继续执行。 这个类里主要有两个方法,一个是向下减计数器的方法countdown();Semaphore与CountDownLatch相似,不同的地方在于Semaphore的值被获取到后是可以释放的,并不像CountDown
2017-02-18 10:17:57
305
原创 锁的一些基本概念
公平锁VS非公平锁公平锁(Fair):加锁前检查是否有排队等待的线程,优先排队等待的线程,先来先得,例如每个线程抢占锁的顺序为先后调用lock方法的顺序依次获取锁,类似于排队吃饭。非公平锁(Nonfair):加锁时不考虑排队等待问题,直接尝试获取锁,获取不到自动到队尾等待,例如每个线程抢占锁的顺序不定,谁运气好,谁就获取到锁,和调用lock方法的先后顺序无关,类似于堵车时,加塞的那些XXXX。sy
2017-02-18 09:48:36
349
转载 JVM分代垃圾回收
[垃圾分代回收机制] 垃圾收集器详解串行(Single):单线程的收集器,但它的“单线程”的意义并不仅仅说明它只会使用一个CPU或一条收集线程去完成垃圾收集工作,更重要的是在它进行垃圾收集时,必须暂停其他所有的工作线程,直到它收集结束。“Stop The World”这个名字也许听起来很酷,但这项工作实际上是由虚拟机在后台自动发起和自动完成的,在用户不可见的情况下把用户正常工作的线程全部停掉,这对很
2017-02-18 01:14:08
403
原创 MyBatis
1、MyBatis的架构设计以及实例分析2、MyBatis的工作流程与JDBC工作流对比、3、深入浅出MyBatis-Sqlsession4、Mybatis数据源与连接池MyBatis常用OGNL表达式 e1 or e2 e1 and e2 e1 == e2,e1 eq e2 e1 != e2,e1 neq e2
2017-02-17 17:46:23
447
原创 sleep和wait的区别
Thread.sleep() VS Object.wait()对于sleep()方法,我们首先要知道该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的过程中,线程不会释放对象锁。而当调用wait()方法的
2017-02-16 15:36:23
232
原创 Paxos算法
Paxos算法的作用Paxos一致性算法主要是解决分布式数据一致性问题。当集群中发生某个错误导致数据可能出现不一致,我们有两个问题要解决:1. 集群中任何节点在决议的过程中中段或者失去服务能力的情况下(故障节点不能超过一半),都能让数据保持一致;2. 投票选举多数派能够让数据损失在保证1的情况下达到最小,而Paxos算法能够解决这两个问题。 关于描述paxos算法写的最好的一篇文章应该就是维基百
2017-02-15 13:03:55
478
原创 Spring
1、Spring基础知识相关的25个问题2、Bean的作用域及生命周期3、ModelAndView的理解4、Spring事务管理Spring工作流程 Spring Web MVC 处理Http请求的大致过程: 一旦Http请求到来,DispatcherSevlet将负责将请求分发。 DispatcherServlet可以认为是Spring提供的前端控制器, 所有的请求都有经过它来统一分发。
2017-02-13 15:22:01
433
原创 Http、TCP/IP、UDP
TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定
2017-02-12 17:17:43
268
转载 [转载]王淮:我在Facebook的十点经验分享
【转载】的目的是2017年给自己一个新的定位 我是 2007 年初加入 Facebook,那时大概 150 人。2011 年 9 月底离开,当时 3200 多人。经历了很多稀奇古怪但影响很大的项目, 像 Application Platform, Social Ads, News Feed, Gift Shop, Facebook Credits 等等。碰到的很多的问题都是全新的,规模是互联网历
2017-01-13 18:01:08
581
原创 Git之问题现场
Q: 提交代码的最佳实践是什么? A: 1. git pull {branch} (当远程库与本地库区别很大时,需要这部操作) 2. git add -u 3. git commit -m “descripe” 4. git fetch 5. git merge {branch} 6. git push {branch}Q: 当
2017-01-05 11:38:26
295
转载 Git仓库分支(Branch)和标签(Tag)
Git 仓库分支(Branch)和标签(Tag)规范仓库的分支(Branch)规范,影响到每个团队的工作流的一致性;标签(Tag)便于开发团队、测 试团队和其他团队识别每个项目的版本,特别是在协同处理线上问题的时候,大家可以非常清楚 地知道线上运行版本和代码库的对应关系。因此我们在制作的时候,主要考虑几个因素:一是要有一定的规则,方便持续集成CI(自动化构建、测试、分布等)二是要有一定的自由
2016-12-30 16:01:00
44775
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人