11.21 24课,已经看完
11.23 25课, 已经看完
11.3 27 课 第四节
11.26 28 课 第二节
11.27 29 课 第六节
12.1 30课 第一节
12.2 30 课 第5节
12.3 30 课 第11节
12.8 31课 第一节
12.9 31课 第四节
12.11 32课 第一节 前面学习了,秒杀前端页面的优化思路,使用ngix的缓存,
但是要用到lua和opersit来实现动态的缓存,当页面有数据变化时更及时的更新,还有前端优化当中要实现动静分离,
因为服务器的带宽是有限的,这样把动态资源放在像七牛云这样的平台上,实现静态资源的缓存,这样使响应速度
可以提升。
12.12 32课 第三节
2019.12.15基础部分复盘:
12.15第一期里面 第五节,
前面学习到线程的创建方式,继承thrad类,实现runable接口,等方法来创建线程。
12.17 第一期里面 002 第二节
前面学习了创建线程的方式,内部类的创建方法,线程的几种状态,包括新建 就绪,运行,阻塞 死亡状态,介绍了线程安全问题,
在共享变量的时候,出现多线程操作写变量的时候就出现线程安全问题。
12.18 第一期里面 002 第三节
第二节中讲的是同步方法的问题,使用的是this锁,和同步代码块使用this锁一样,但不是使用object锁
12.19 第一期里面 003 第二节
多线程中,死锁是多线程中两个线程相互等待对方释放锁资源,在同步锁中锁掉的是对象,多线程之间要锁同一个对象,才能做到同步,而且在读的时候也要加上同一个
对象的锁,多线程同步中,wait和notif方法是在object类当中,如果被获取了这个对象锁后,可以用wait和notif方法来实现多线程同步,
wait和notif方法是定义在object类当中的 ,wait一般是和synchronized一起使用的。
12.21 第一期里面004 第一节,前面学习到守护进程,主线程死掉,子线程还是不会死掉的,因为线程之间相互不会受影响,但是如果是线程调用了daemon方法以后的话,当主线程死掉后,
子线程就会死掉的。
12.22 第一期里面004 第四节,前面学习到java内存模型,就是线程和主线程之间的关系,是本地内存和主内存的的模型,简称
jmm,而在jvm中,内存的结构是堆、栈、方法区,这是虚拟机的内存结构。
volatile关键字是实现本地内存和主内存可见性的,但是volatile关键字不具有原子性。
12.23 第一期里面005 第六节,前面学习到线程中join方法,是等到线程执行完后才释放资源,threadlocal保证线程本地内存中
可用,外部不可用,atomicinteger是原子类,可保证线程安全。
12.23 第一期里面006 第一节,前面学习到spring当中ioc容器的原理是怎样实现的,加载过程就是首先读取xml的配置
然后获取到类的class地址,然后通过反射机制,获取到java类并且赋值,这样就创建在容器当中。
12.24 007 第一节 前面学习到,单例模式,懒汉 恶汉模式,还有考虑线程安全的单例模式,工厂模式,代理模式,静态代理,动态代理,
动态代理又分为jdk代理和cjlib代理,spring里面用到cjlib代理模式创造出aop技术。
12.24 009 第5节
12.26 0010 第六节
12.28 前面学习到servlet程序,
12.29 0011 第六节 ,前面学习到cookie和session的知识。
1.5 0012 第五节 前面学习到http的协议。
2020.1.11 0012 学习到重定向的方式,客户端发送请求,服务端收到请求后,返回302,并且返回location内容,当客户端收到返回的数据后,
重新请求,到location所指的地址中,这样重定向是发送两次请求。
转发一般是在一个服务器内部。
2020.01.12 0013 第五节
2020.01.13 0014 第五节
2020.01.15 0014 第8节 前面主要学习到spring里面的一些知识,包括依赖注入和aop技术,依赖注入使用的是反射的技术,而aop是依赖代理模式,
而代理模式,又分为静态代理和动态代理,静态代理是一般的用代理类实现的,动态代理分为jdk代理和cjlib代理.
spring框架中可以用注解的方式来注入容器中,也可以使用xml的方式把对象注入到容器中,可以使用 resouce或者autwrite的方式
来给实体类来创建对象。
spring容器当中,springaop的技术,无非是用注解的方式或者是xml的方式注入到容器当中,把切面类注入到容器当中。
学习到component注解是把类注入到容器当中,就不用自己new了,或者在xml当中定义。
2020.01.16 0015 第六节 前面学习到事务用法分类:
1.编程式事务(理解成开车的手动挡,需要自己编写代码来控制事务)
2.声明式事务(理解成自动当)--
(1)分为xml方式
xml中配置的方式,主要是注入了事务管理器类,并且配置给事务管理器进行
增强,可以配置切面进行拦截。
(2)注解方式
2020.02.9 0016 第四节 前面学习到事务的传播行为,事务的传播行为是指事务中再嵌套事务时,两个事务相互影响的关系,主要是有七种,主要使用的
的是required和requires_new等三种,required支持当前事务,如果当前没有事务,就新建一个事务。
requires_new是新建一个事务,如果当前已经有事务,就把当前事务挂起。
cdn加速,就是地区加速,内容分发. 在不同地区进行重新部署,像七牛云加速,可以做动静分离,把占带宽比较大的
文件资源进行分发,实现网站加速。
学下到分模块开发和分布式的区别,分模块开发用jar之间类建立连接,分布式开发是把应用部署在不同的服务器上
面.
2020.02.14 0017 第18节 前面学习到springboot中,关于springboot的理解,就是简化的微服务开发的,启动类在里面只能有一个,
而且要配置扫包,不然怎么知道是control类。
前面学习到jsp底层是通过servlet过来的,ftl可转换为html,ftl是一种模板引擎,springboot里面的freemarker.
2020.02.14 0017 第23节 前面学习到,springboot中一些便捷的功能,像定时任务,像异步执行等。都可以使用一些注解就能实现。
2020.02.14 0018 第7节 前面学习到redis内存缓存,高并发的方案中常用redis来降低数据库的压力.redis的安装中,要配置密码的。
2020.02.21 0018 第14节 前面学习到在redis中支持的数据类型,包括string(字符串),hash(哈希),list(列表),set(集合),zset(有序集合)
在高并发解决方案中,为了保证redis的高可用性,一般会用几台服务器来做主从复用,读写分离,来实现,比如三台,一台主
服务,两台从服务器,只要在从服务器当中,配置父服务器的地址,有密码的要设置密码,就能实现,主服务器可以读和写,
两台副服务器只能用来读。
2020.02.21 0018 第16节
前面学习到redis的哨兵机制,在redis主节点挂了后,redis集群会有一个选举的机制,选出一个主节点。其主要配置是拷贝sentinel.config
文件到etc目录下,并修改里面的参数,进行配置。
2020.02.23 0018 第19节
前面学习到redis是怎么来做持久化的呢?
1.rdb方式:以数据库的方式保存备份。(默认方式)
2.aof方式:一日志的形式进行保存备份。
2020.02.25 0018 第19节
前面学下到jsp的一些知识, 包括jsp的指令:language,buffer,autoflush,extends
session,iselgnorpage,errorpage,iserrorpage等.
在jsp中的一些输入的格式是<% %>,<%= %>等等,并且在jsp中还可以使用html标签.
2020.03.22 0019 第六节 前面学习到使用redis也可以用做消息系统,但是一般不用redis来做,主要能做发布消息,订阅消息。
前面学习到消息中间件的mq,是实现异步通信的一种机制,是一种生产者和消费者的模式,生产者只有一个,消费者可以有
多个,但是一个消息只能消费一次,消息一旦被消费了,就不能再次被消费了,当生产者生产了消息后,会发布在中间件中,
等待被消费,会存储,可以用来做削峰填谷的作用。
mq的机制是会一个会订阅一个topic,一个会发布一个topic, 订阅了的客户端会接受到发布的消息。
比如说发邮件,发短信,想用异步的方式来处理,可用消息中间件。来发布一个消息(任务),消费者来消费消息,也就是发
短信或者是邮件。
2020.03.23 0019 第九节,前面学习到activemq的安装和使用,在java代码中,学习到消息中间件多个消费者中可能由于网络的原因消息被重复消费(高并发的情况下)。
那么要保证消息的幂等性,mq中是使用手动签收,
转为学习笔记发布在上面。
0021 第一节,开始学习nginx。