![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 75
机智兵
努力到无能为力,拼搏到感动自己!
展开
-
【ElasticSearch】(一)—— 初识ES
目录一、初识ElasticSearch1)了解ES1、elasticsearch的作用2、ELK技术栈3、elasticsearch和lucene4、为什么不是其他搜索技术?5、总结一、初识ElasticSearch1)了解ES1、elasticsearch的作用elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容例如:在百度搜索答案在电商网站中搜索商品在打车软件..原创 2022-05-11 23:12:54 · 432 阅读 · 3 评论 -
【微服务】(六)—— Nacos设计原理
目录一、简介Nacos 起源Nacos 定位Nacos 优势二、Nacos 总体设计1)Nacos 架构1、设计原则2、架构图3、用户层4、业务层5、内核层6、插件2) Nacos 配置模型1、概念介绍2、Nacos 配置模型三、Nacos 内核设计1)Nacos ⼀致性协议1、为什么 Nacos 需要⼀致性协议2、为什么 Nacos 选择了 Raft 以及 Distro3、Nacos 的⼀致性协议层2...原创 2022-04-19 23:06:54 · 2066 阅读 · 6 评论 -
【微服务】(三)—— Eureka
本期介绍🍖目录一、什么是Eureka1、背景(1)netflix公司与AWS的ELB(2)eureka诞生(3)ELB和eureka搭配使用2、eureka优势(1)提供完成的服务注册和服务发现实现(2)与spirngcloud无缝集成(3)采用AP而非CP(4)开源3、eureka和zk作为注册中心比较二、eureka架构设计1、设计理念(1)AP由于CP(2)Peer to Peer设计(3)Zone和region的设计(4)se.原创 2022-04-18 06:42:12 · 1439 阅读 · 7 评论 -
【微服务】(二)—— 服务拆分与远程调用
本期介绍🍖目录一、服务拆分1)拆分时机1、有快速迭代的需求2、提交代码频繁出现大量冲突3、小功能要积累到大版本才能上线4、解决高并发横向扩展问题2)拆分原则3)拆分方法2、需求变化频率3、服务性能要求4、组织架构和团队规模5、安全边界6、技术异构4)服务拆分注意事项二、 远程调用1)RestTemplate简介2)提供者和消费者三、代码实操1)注册RestTemplate2)服务远程调用RestTemplate..原创 2022-04-17 21:50:31 · 1408 阅读 · 4 评论 -
【微服务】(一)—— 初识微服务
一、微服务技术栈原创 2022-04-17 10:58:29 · 2200 阅读 · 11 评论 -
大数据-kafka学习(一)——Kafka简介
kafka原创 2022-03-27 10:38:55 · 2637 阅读 · 1 评论 -
大数据-kafka学习(七)——集成SpringBoot
SpringBoot是一个在JavaEE开发中非常常用的组件。可以用于Kafka的生产者,也可以用于SpringBoot的消费者。一、SpringBoot项目搭建如果Spring Initializr产生如下错误解决方法Custom的URL改为https://start.aliyun.com/SpringBoot项目创建成功二、 生产者代码package com.myself.springboot.springbootkafka.controller;..原创 2022-04-15 22:35:38 · 2903 阅读 · 16 评论 -
剑指offer--网络编程(二)
1、 http响应码301 和 302 代表的是什么?有什么区别?答:301,302 都是HTTP状态的编码,都代表着某个URL发生了转移。区别:301 redirect:301 代表永久性转移(Permanently Moved)。 302 redirect:302 代表暂时性转移(Temporarily Moved )。2、forward 和 redirect 的区别?Forward和Redirect代表了两种请求转发方式:直接转发和间接转发。直接转发方式(Forward原创 2022-04-08 23:53:13 · 127 阅读 · 0 评论 -
剑指offer-异常(一)
1、throw 和 throws 的区别?throws是用来声明一个方法可能抛出的所有异常信息,throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交给谁处理。而throw则是指抛出的一个具体的异常类型。2、final、finally、finalize 有什么区别?final可以修饰类、变量、方法,修饰类表示该类不能被继承、修饰方法表示该方法不能被重写、修饰变量表示该变量是一个常量不能被重新赋值。 finally一般作用在try-catch代码块中,在处理异常的时候,通常我们原创 2022-04-08 23:45:27 · 105 阅读 · 1 评论 -
剑指offer-网络安全(一)
1、什么是XSS攻击,如何避免?XSS攻击又称CSS,全称Cross Site Script(跨站脚本攻击),其原理是攻击者向有XSS漏洞的网站中输入恶意的HTML代码,当用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。XSS攻击类似于 SQL注入攻击,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制,获取用户的一些信息。XSS是Web 程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式。X原创 2022-04-08 23:37:11 · 3349 阅读 · 0 评论 -
剑指offer-网络编程(一)
1、session 和 cookie 有什么区别?由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是Session.典型的场景比如购物车,当你点击下单按钮时,由于HTTP协议无状态,所以并不知道是哪个用户操作的,所以服务端要为特定的用户创建了特定的Session,用用于标识这个用户,并且跟踪用户,这样才知道购物车里面有几本书。这个Session是保存在服务端的,有一个唯一标识。在服务端保存Session的方法很多,内存、数据库、文件都有。集群的原创 2022-04-08 23:29:12 · 117 阅读 · 0 评论 -
剑指offer-锁(一)
1、 ThreadLocal 是什么?有哪些使用场景?线程局部变量是局限于线程内部的变量,属于线程自身所有,不在多个线程间共享。Java提供ThreadLocal类来支持线程局部变量,是一种实现线程安全的方式。但是在管理环境下(如 web服务器)使用线程局部变量的时候要特别小心,在这种情况下,工作线程的生命周期比任何应用变量的生命周期都要长。任何线程局部变量一旦在工作完成后没有释放,Java 应用就存在内存泄露的风险。2、说一下 synchronized 底层实现原理?synchroni.原创 2022-04-08 23:22:31 · 160 阅读 · 0 评论