Liu · Blog

记录点滴,成就未来

0%

第一章 redisson框架

Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务

image-20210712143547564

Redisson提供了使用Redis的最简单和最便捷的方法。Redisson的宗旨是促进使用者对Redis的关注分离(Separation of Concern),从而让使用者能够将精力更集中地放在处理业务逻辑上。

更多介绍参考百度百科

源码地址:https://github.com/redisson/redisson/

官方文档:https://github.com/redisson/redisson/wiki/Redisson%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D

阅读全文 »

Java-锁

  • 乐观锁和悲观锁
  • 独占锁和共享锁
  • 互斥锁和读写锁
  • 公平锁和非公平锁
  • 可重入锁
  • 自旋锁
  • 分段锁
  • 锁升级(无锁|偏向锁|轻量级锁|重量级锁)
  • 锁优化技术(锁粗化、锁消除)
阅读全文 »

阿里云OSS

阿里的OSS就是一个文件云存储方案:

1552265269170

简介:

阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。其数据设计持久性不低于99.999999999%,服务设计可用性不低于99.99%。具有与平台无关的RESTful API接口,您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。

您可以使用阿里云提供的API、SDK接口或者OSS迁移工具轻松地将海量数据移入或移出阿里云OSS。数据存储到阿里云OSS以后,您可以选择标准类型(Standard)的阿里云OSS服务作为移动应用、大型网站、图片分享或热点音视频的主要存储方式,也可以选择成本更低、存储期限更长的低频访问类型(Infrequent Access)和归档类型(Archive)的阿里云OSS服务作为不经常访问数据的备份和归档。

阅读全文 »

个人笔记

什么是SaaS平台?它的特点是什么?

SaaS:软件即服务,通过网络提供软件服务,供应商将软件统一部署在服务器上,客户可以根据自己的需求向供应商购买

SaaS典型代表:用友,他主要通过子域名提供OA服务(办公自动化)

特点:

  • 互联网特性:通过SaaS提供在线服务, 这都是基于网络的,客户就不用投入成本在硬件、维护等等之上。
  • 多重租赁特性:通过一套标准软件系统给成百上千客户提供不同服务,用户可以根据自己需求购买软件服务。这要求SaaS服务能够支持不同租户之间数据和配置的隔离(软件共享,数据隔离)
  • 服务特性:SaaS使软件以互联网为载体的服务形式给客户使用
  • 可扩展性:可以最大限度地提高系统的并发性,用户也可以定制服务
阅读全文 »

个人总结

Redis事务机制

Redis支持事务吗?

答案:支持,但没完全支持。因为Redis的事务是基于队列实现的,最后依次执行,如果遇到编译期异常,那么会进行事务回滚;如果遇到运行时异常,事务就失效了,执行成功的命令不会回滚,只会回滚执行出异常的命令。

阅读全文 »

Redis高级(老师讲义)

今日目标:

  • 理解Redis事务机制
  • 掌握Redis持久化机制
  • 理解Redis高可用 — 主从复制、哨兵模式
  • 理解Redis高可扩 — Redis Cluster数据分片
  • 掌握Redis过期删除策略
  • 掌握Redis内存淘汰策略
  • 了解Redis6.X新特性
阅读全文 »

项目笔记该如何记录?

1、今天学到了什么?

备注:模块知识点

2、这个模块实现业务的流程是怎么样的?面试必问

  • 图:

  • 步骤:

    • 1、
    • 2、
    • 3、

3、我做这个业务模块时遇到了什么问题

  • bug:
    • 图:
    • 异常分析:
    • 解决方案:
  • 业务问题:
  • 技术难题:

idea常用插件

Snipaste_2022-03-21_13-42-43

1.SpringSchedule

之前我们学习过Quartz这个定时任务框架,功能非常强大,不过我们有时候也会用到一些其它的定时任务框架。

1.1.常见的定时任务框架

目前常用的定时任务实现:

实现方式cron表达式固定时间执行固定频率执行开发难易程度
JDK 的TimeTask不支持支持支持复杂
Spring Schedule支持支持支持简单
Quartz支持支持支持

从以上表格可以看出,Spring Schedule框架功能完善,简单易用。对于中小型项目需求,Spring Schedule是完全可以胜任的。

阅读全文 »

day18-分布式日志服务、链路追踪

1.分布式日志服务GrayLog

在微服务架构下,微服务被拆分成多个微小的服务,每个微小的服务都部署在不同的服务器实例上,当我们定位问题,检索日志的时候需要依次登录每台服务器进行检索。

这样是不是感觉很繁琐和效率低下。所以我们还需要一个工具来帮助集中收集、存储和搜索这些跟踪信息。

集中化管理日志后,日志的统计和检索又成为一件比较麻烦的事情。以前,我们通过使用grep、awk和wc等Linux命令能实现检索和统计,但是对于要求更高的查询、排序和统计等要求和庞大的机器数量依然使用这样的方法难免有点力不从心。

分布式日志服务就是来帮我们解决上述问题的。其基本思路是:

  • 日志收集器:微服务中引入日志客户端,将记录的日志通过日志服务端发送到对应的收集器,然后以某种方式存储
  • 数据存储:一般使用ElasticSearch分布式存储,把收集器收集到的日志格式化,然后存储到分布式存储中
  • web服务:利用ElasticSearch的统计搜索功能,实现日志查询和报表输出

比较知名的分布式日志服务包括:

  • ELK:elasticsearch、Logstash、Kibana
  • GrayLog:
阅读全文 »