自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java面试准备

5. 服务器可以将存储在 Cookie 上的 SessionID 与存储在内存中或者数据库中的 Session 信息进⾏比较,以验证⽤户的身份,返回给⽤户客户端响应信息的时候会附带⽤户当前的状态。@ComponentScan:扫描被@Component(@Service,@Controller)注解的bean,注解默认会扫描该类所在的包下所有的类。流程:通过匹配规则找到合适的路由,映射到具体的服务,然后请求经过过滤器处理后转发给具体的服务,服务处理后,再经过过滤器处理,最后返回给客户端。

2024-03-22 10:51:07 1229

原创 如何设计一个排行榜?

小数据量可以使用,数据量稍微大点,可以加索引并且限制排序数据量达到优化的效果。100w数据量全部排序大致需要4s,用优化加索引和限制排序量可以达到0.01s。

2024-03-18 21:50:21 239

原创 如何设计一个秒杀系统?

为什么秒杀系统的设计是一个难点?

2024-03-18 21:29:07 164

原创 面试题目

前端 ajax调用后台原理 最核心的依赖是浏览器提供的XMLHttpRequest对象。这个对象为向服务器发送请求和解析服务器响应提供了流畅的接口,使得浏览器可以发出HTTP请求与接收HTTP响应,实现在页面不刷新的情况下和服务端进行数据交互。 后端 列出springcloud的几个组件 Eureka实现服务治理 Ribbon主要提供客户侧的软件负载均衡算法 Hystrix断路器,保护系统,控制故障范围 Zuul,api网关,路由,负载均衡等多种作用 Config配置管理 springBoot

2021-04-13 01:10:51 418

原创 Redis学习

启动redis服务: 使用cmd窗口,cd到redis安装目录下。 (双击目录下的redis-server.exe和下面一样的效果) C:\Users\Administrator>cd c:\java\Redis c:\java\Redis>redis-server.exe redis.windows.conf 启动服务端: 上面cmd窗口不关,另外开一个cmd窗口,也要cd到安装目录下,指定地址和端口。 (双击目录下的redis-cli.exe和下面一样的效果) C:\Users\Admin

2021-04-06 17:42:37 120

原创 GIT错误汇总

Clone failed: Authentication failed for 'http url’ 场景:IDEA创建新的git项目,clone新的代码地址时候报错了 分析:可能是用户验证出了问题。 为何我这么猜想呢,我原先使用的项目git管理平台和账号都与这次要clone的都不同。所以有可能是这次clone的时候,用户验证用的还是保存在本机上旧的用户,导致验证不通过。 解决方法: git上输入命令(删掉原先的用户凭证): git config --system --unset credential..

2021-04-02 16:26:31 273

原创 如何解决高并发问题(秒杀系统)

优化的方向: 将请求尽量拦截在系统上游(不要让锁冲突落到数据库上去) 充分利用缓存,大部分是读多写少的场景 常见秒杀架构 浏览器端 ,最上层,会执行到一些JS代码 站点层 ,这一层会访问后端数据,拼html页面返回给浏览器 服务层 ,向上游屏蔽底层数据细节,提供数据访问 数据层 ,最终的库存是存在这里的,mysql是一个典型(当然还有会缓存) 各层次优化细节 客户端(浏览器层,APP层) 静态化页面(采用html,不用jsp),将页面缓存在用户的浏览器和CDN上 前端限流: 在用户点击按钮后,对

2021-04-01 17:48:05 1220 1

原创 从一个文件中统计每个单词的次数,排序输出

思路: 读取文件并按行输出 用正则表达式去匹配单词,并用TreeMap保存匹配到的数据 转化为List,定义一个比较器,用Collections.sort对其进行排序 TreeMap本身会对Key进行排序,除了Key的类内部已经实现了比较接口外(比如Integer,String),其他类需要自己定义一个比较器,进行排序;没必要再转成List后排序。 public class FileWordCount { public void count() throws IOException{

2021-04-01 15:01:27 685

原创 Java Map 按Key排序和按Value排序

Java Map 按Key排序和按Value排序 按Key排序 使用TreeMap<K,V>,向其构造方法 TreeMap(Comparator<? super K> comparator) 传入我们自定义的比较器即可实现按键排序。 按Value排序 将待排序Map中的所有元素置于一个列表中,接着使用Collections的一个静态方法 sort(List list, Comparator<? super T> c) 来排序列表,同样是用比较器定义比较规则。排序

2021-04-01 14:26:40 246

原创 AJAX

JS AJAX XMLHttpRequest jQuery AJAX Asynchronous JavaScript and XML,意思就是用JavaScript执行异步网络请求。 Web的运作原理:一次HTTP请求对应一个页面。 在现代浏览器上写AJAX主要依靠XMLHttpRequest对象: var request = new XMLHttpRequest(); // 新建XMLHttpRequest对象 request.onreadystatechange = function () { //

2021-03-31 17:44:35 83

原创 Java多线程

多线程学习 Java语言内置了多线程支持:一个Java程序实际上是一个JVM进程,JVM进程用一个主线程来执行main()方法,在main()方法内部,我们又可以启动多个线程。此外,JVM还有负责垃圾回收的其他工作线程等。 进程和线程 进程和线程的关系就是:一个进程可以包含一个或多个线程,但至少会有一个线程。 和多线程相比,多进程的缺点在于: 创建进程比创建线程开销大,尤其是在Windows系统上; 进程间通信比线程间通信要慢,因为线程间通信就是读写同一个变量,速度很快。 而多进程的优点在于:

2021-03-31 15:53:11 97

转载 idea在debug模式下启动项目调试报错

本人IDEA启动项目调试时,发现如下报错: ERROR: transport library not found: dt_socket ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_LOAD(509) JDWP exit error AGENT_ERROR_TRANSPORT_LOAD(196): No transp...

2020-03-11 15:47:30 1168

jq图片预览功能.zip

jquery实现图片预览功能,支撑图片旋转,放大缩小,下载

2021-04-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除