- 史上最简单的 SpringCloud 教程
- Spring Cloud 从入门到精通
- tomcat常用配置详解和优化方法">tomcat常用配置详解和优化方法
- tomcat 性能优化(主要)
- JVM调优总结">JVM调优总结
- 深入浅出JVM调优,看完你就懂
- 反向代理和正向代理
- 多线程
- Nginx可以做什么?看完这篇你就懂了
- RabbitMQ教程
- Dubbo
- ES(ElasticSearch)分布式全文搜索引擎介绍及使用方式
- 序列化、反序列化和transient关键字的作用">序列化、反序列化和transient关键字的作用
- Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释
- 缓存穿透、缓存击穿、缓存雪崩区别和解决方案
- 关于“约定大于配置“的理解
- 开发原则&设计模式">开发原则&设计模式
- 拜托!面试不要再问我Spring Cloud底层原理
TCP 三次握手和四次挥手
多线程 线程池
JVM 垃圾回收
列表 队列 集合 树
mycat中间件 shiro WebService Quartz Solr RabbitMQ ActiveMQ FastDFS
富文本编辑器 Dubbo
excel读写工具- POI 报表工具 Highcharts easyUI thyemleaf springSecurity mybatis+ zookeeper
jsnop nginx FreeMarker httpclient
EBS SOA
高并发 微服务 分布式 消息队列 工作流 定时任务
SSO单点登录技术-CAS统一身份认证服务
ELasticJob分布式任务调度
史上最简单的 SpringCloud 教程
https://blog.csdn.net/forezp/article/details/81040925
Spring Cloud 从入门到精通
http://blog.didispace.com/spring-cloud-learning/
tomcat常用配置详解和优化方法
tomcat 性能优化(主要)
https://blog.csdn.net/u010195563/article/details/80966025
JVM调优总结
深入浅出JVM调优,看完你就懂
https://blog.csdn.net/Javazhoumou/article/details/99298624
反向代理和正向代理
https://www.zhihu.com/question/24723688
正向代理代理的对象是客户端,反向代理代理的对象是服务端
多线程
多线程就是指一个进程中同时有多个执行路径(线程)正在执行
优点
1. 在一个程序中,有很多的操作是非常耗时的,如数据库读写操作,IO操作等,如果使用单线程,那么程序就必须等待这些操作执行完成之后才能执行其他操作。使用多线程,可以在将耗时任务放在后台继续执行的同时,同时执行其他操作。
2. 可以提高程序的效率。
3. 在一些等待的任务上,如用户输入,文件读取等,多线程就非常有用了。
缺点
1. 使用太多线程,是很耗系统资源,因为线程需要开辟内存。更多线程需要更多内存。
2. 影响系统性能,因为操作系统需要在线程之间来回切换。
3. 需要考虑线程操作对程序的影响,如线程挂起,中止等操作对程序的影响。
4. 线程使用不当会发生很多问题。
Nginx可以做什么?看完这篇你就懂了
https://blog.csdn.net/qq_36125138/article/details/84144932
Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。
fair 和 url_hash(为第三方)
RabbitMQ教程
https://blog.csdn.net/zpcandzhj/article/details/81436980
消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已。
其主要用途:不同进程Process/线程Thread之间通信。
为什么会产生消息队列?有几个原因:
不同进程(process)之间传递消息时,两个进程之间耦合程度过高,改动一个进程,引发必须修改另一个进程,为了隔离这两个进程,在两进程间抽离出一层(一个模块),所有两进程之间传递的消息,都必须通过消息队列来传递,单独修改某一个进程,不会影响另一个;
不同进程(process)之间传递消息时,为了实现标准化,将消息的格式规范化了,并且,某一个进程接受的消息太多,一下子无法处理完,并且也有先后顺序,必须对收到的消息进行排队,因此诞生了事实上的消息队列;
MQ框架非常之多,比较流行的有RabbitMq、ActiveMq、ZeroMq、kafka,以及阿里开源的RocketMQ。
Dubbo
https://baike.baidu.com/item/Dubbo/18907815?fr=aladdin
ES(ElasticSearch)分布式全文搜索引擎介绍及使用方式
https://blog.csdn.net/john_person/article/details/83753818
https://88250.b3log.org/full-text-search-elasticsearch
学习ES
https://my.oschina.net/JKOPERA/blog/2049518
序列化、反序列化和transient关键字的作用
Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释
https://blog.csdn.net/u013870094/article/details/82765907
序列化:把对象转换为字节序列的过程称为对象的序列化。
反序列化:把字节序列恢复为对象的过程称为对象的反序列化。
什么情况下需要序列化
当你想把的内存中的对象状态保存到一个文件中或者数据库中时候;
当你想用套接字在网络上传送对象的时候;
当你想通过RMI传输对象的时候;
(老实说,上面的几种,我可能就用过个存数据库的)
如何实现序列化
实现Serializable接口即可
Transient 关键字的作用是控制变量的序列化,在变量声明前加上该关键字,可以阻止该变量被序列化到文件中,
缓存穿透、缓存击穿、缓存雪崩区别和解决方案
https://blog.csdn.net/kongtiao5/article/details/82771694
关于“约定大于配置“的理解
https://blog.csdn.net/tmdcda/article/details/80797891
https://www.cnblogs.com/doit8791/p/5724294.html
开发原则&设计模式
https://www.cnblogs.com/dxxdsw/p/10645056.html