
笔记记录
Charis Chen
身处戏中角儿,演绎不同人生
展开
-
git代码拉取命令
1、配置姓名和账号git config user.name “45095826”git config user.email “charis.q.p.chen_sp@n.com”2、生成ssh钥匙ssh-keygen -t rsa -C “charis.q.p.chen_sp@n.com”查看.sshcat ~/.ssh/id_rsa.pub3、克隆代码下来git clon...原创 2020-01-20 15:43:01 · 9407 阅读 · 0 评论 -
并发编程和J.U.C并发包
1、J.U.C并发包概述(1)j.u.c是JDK的核心工具包,是JDK1.5之后,由 Doug Lea(撰写)实现并引入。整个java.util.concurrent包,按照功能可以大致划分如下:juc-locks 锁框架juc-atomic 原子类框架juc-sync 同步器框架、工具类juc-collections 集合框架juc-executors 执行器框架2、并发编程...原创 2019-12-21 23:21:15 · 262 阅读 · 0 评论 -
JAVA中集合及遍历
常见集合:1、Collection接口:两个子接口Set:无重复、无索引、无序HashSet、LinkedSet(有序)、TreeSetlist:重复、有索引、有序ArrayLsit、linkedList、Stack、Vector2、Map接口:HashMap、HsahTable、ConcurrentHashMap、TreeMapMap的遍历:1、迭代器: public sta...原创 2019-11-18 23:09:30 · 181 阅读 · 0 评论 -
dubbo和zookeeper挂掉
dubbo:远程调用其他服务的框架,分布式、高性能、透明化的 RPC 服务框架,提供服务自动注册、自动发现等高效服务治理方案zookeeper(注册中心):基于服务的同步协调管理,配置的维护、域名服务、分布式同步等。恢复模式:集群下会恢复崩溃的注册中心数据。广播模式:通过心跳同步其它服务。单机:1、当注册中心(zk)挂掉后,之前的服务提供者和消费者都能正常使用,接口能正常访问,是通...原创 2019-11-15 23:28:50 · 1498 阅读 · 0 评论 -
java中数据结构
什么是数据结构?1、数据结构指的是数据以什么方式组织在一起2、不同的数据结构,增删查的性能是不一样的3、不同的集合底层会采用不同的数据结构,要知道集合的底层是基于哪种数据结构存储和操作数据的常见的数据结构1、队列(queue)先进先出,后进后出。场景:各种排队。叫号系统有很多集合可以实现队列。2、栈(stack)后进先出,先进后出压栈 == 入栈弹栈 == 出栈场景:手枪...原创 2019-11-13 20:53:28 · 178 阅读 · 0 评论 -
网络编程
1、网络端口的三要素:协议: 数据的传输格式 HTTP、FTPIP地址: 网络设备中的计算机编号,通过IP找到对应的设备端口: 进程的唯一标识,可以通过端口号找到对应的程序2、UDP协议和TCP协议各自的特点。UDP协议特点: 面向无连接的协议。 只管发送,不确认对方是否接收到。 基于数据包传输数据:将数据及源和目的封装成数据包中进行发送 每个数据包的大小限制在64K之内。 ...原创 2019-11-09 22:23:12 · 130 阅读 · 0 评论 -
无状态登录原理及加密
登录状态介绍:1、有状态登录有状态服务,即服务端需要记录每次会话的客户端信息,从而识别客户端身份,根据用户身份进行请求的处理,典型的设计如tomcat中的session。例如登录:用户登录后,我们把登录者的信息保存在服务端session中,并且给用户一个cookie值,记录对应的session。然后下次请求,用户携带cookie值来,我们就能识别到对应session,从而找到用户的信息。缺...原创 2019-11-02 22:11:32 · 416 阅读 · 0 评论 -
hashMap和线程安全
hashmap是一个key-value键值对的数据结构:1、从结构上来讲在jdk1.8之前是用数组加链表的方式实现,jdk1.8加了红黑树;2、hashmap数组的默认初始长度是16;3、hashmap数组只允许一个key为null,允许多个value为nullhashmap的内部实现:hashmap是使用数组+链表+红黑树的形式实现的:1、其中数组是一个一个Node[]数组,我们叫他...原创 2019-11-01 15:00:06 · 334 阅读 · 0 评论 -
rabbitMQ介绍及配置
常见MQ产品ActiveMQ:基于JMS, ApacheRabbitMQ:基于AMQP协议,erlang语言开发(c语言开发的),稳定性好RocketMQ:基于JMS,阿里巴巴产品,目前交由Apache基金会Kafka:分布式消息系统,高吞吐量MQ是消息通信的模型,并发具体实现。现在实现MQ的有两种主流方式:AMQP、JMS。两者间的区别和联系:JMS定义了统一的接口,来对消...原创 2019-10-31 17:29:25 · 428 阅读 · 0 评论 -
多线程小知识
线程包含的5种状态:创建,就绪,运行,阻塞,消亡1、new对象时,线程创建2、start()线程进入就绪状态3、当获得cpu执行权时,开始执行run方法4、遇到 wait,sleep时,进入阻塞状态5、run方法执行完毕,线程进入死亡状态Servlet生命周期分成3个阶段:1、加载并时例化:容器启动时,加载servlet 的class ,并new 出这个对象2,初始化阶段:调用i...原创 2019-10-30 11:05:25 · 345 阅读 · 0 评论 -
Thymeleaf页面静态化
思路1:优点:页面加载快,异步处理,用户体验好缺点:会向服务端发起多次数据请求,增加服务端压力思路2:优点:服务端处理页面后返回,用户拿到是最终页面,不会再次向服务端发起数据请求。缺点:在服务端处理页面,服务端压力过大,tomcat并发能力差对于大型电商网站而言,必须要考虑的就是服务的高并发问题,因此要尽可能减少服务端压力,提高服务响应速度,所以这里两个方案都不会用,采用方案3...原创 2019-10-29 10:45:41 · 690 阅读 · 0 评论 -
zookeeper和并发概念
1、高并发问题是怎么解决的1、 数据层a、集群b、分表分库c、 开启索引d、 开启缓存e、 表设计优化f、Sql语句优化g、 缓存服务器(提高查询效率,减轻数据库压力)h、 搜索服务器(提高查询效率,减轻数据库压力)2、 项目层a、采用面向服务分布式架构(分担服务器压力,提高并发能力)b、采用并发访问较高的详情系统采用静态页面c、使用页面缓存d、 用 ActiveM...原创 2019-10-27 10:27:56 · 1280 阅读 · 0 评论