摘要: 查找日志,定位错误 cd logs vi …logs 按Esc 敲 / 输入关键字敲回车 如果继续查找关键字,敲字符n 或者N,可以查找上一个或者下一个 如何退出? Esc : q ! 查看内存排行 top -c 我们可以通过大写字母E来切换内存信息区域的... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 一、减少线程持有锁的时间 一个方法中,并不是所有的地方都需要同步。所以,只在需要同步的地方,进行加锁操作。 在代码中,可以把同步方法修改为同步代码块,可以减少线程持有锁的时间,从而提高性能。 public synchron... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 一、手动创建线程的缺点: (1)创建多个线程,会消耗许多内存。 (2)创建多个线程,也非常耗时。 (3)最重要的是,频繁创建线程,在任务执行完毕之后被回收,对GC也有一定的压力。 二、线程池 线... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 11.1.1 视图的含义 视图是一个虚拟的表,它是把数据库中的一张或者多张表中的一些数据列,拼接起来的虚拟的表。 创建视图的信息来自表的部分信息,只取需要的信息。当对通过视图看到的数据进行修改的时候,相应的基本表的数据也要发生... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 一、基本思路 数据库有一张商品表,库存量是100。现在有1000个消费者准备开抢这100个库存。 t_product表维护商品编号与商品库存剩余数量。编号No123321的这种商品的库存量有100个。 t... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 一、基本思路 假设我们有一个"更新用户"的业务,此业务需要花费1秒钟时间。 然后需要为当前系统"记录日志",日志需要记录用户操作的方法名以及模块名称,此操作需要花费3秒。 上述两个步骤在同步情况下(主线程顺... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 一、基本功能 场景一:订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单。 场景二:转账申请提交了,预计2小时内到账。 从上述常见的场景一开始入手。 从下订单(未付款)开始,这个订单,可... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 一、用代码谈加密 相信你已经知道,在实际项目中,用户的密码在数据库中一定是密文。比如你的CSDN帐号的密码是123456,但是在CSDN的数据库表中,可能存放的就是类似"e389b243168cd658ccae899240bf8321"这样的一... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 一、环境准备 Ribbon是一个基于Http和TCP的负载均衡工具,Feign(音:菲恩)是一个声明式的伪Http客户端,它比Ribbon更加的优雅。Feign使用的是接口的方式。Feign默认集成了Ribbon,并和Eureka结合,默认实现... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 一、环境准备 对于Ribbon而言,大宇只能记住:Ribbon是一个基于Http和TCP的负载均衡工具。 在上一小节的代码基础上,开启 Eureka--Server 与 Eureka--Client项目。 Eurek... 阅读全文
posted @ 2022-07-17 12:12 小大宇 阅读(4) 评论(0) 推荐(0) 编辑