- 博客(19)
- 收藏
- 关注
原创 nosql的特点
解耦1.方便你扩展(数据之间没有关系,很好扩展)2.大数据量高性能(redis 一秒写8万次,读取11万次,Nosql的缓存记录级,是一种细粒度的缓存,性能会比较高)3.数据类型是多样型的。(不需要事先设计数据库,随取随用。如果是数据量十分大的表,很多人就无法设计了)...
2021-01-10 17:50:10
2678
原创 redis的内存淘汰策略
config配置文件设置memorey内存大小 单位是byte命令 set memorey 内存满了 会报oom。查看内存设置 info memorey由oom引出 内存淘汰策略:redis的过期删除策略:是不是到期之后立即删除?不是的定时删除,拿时间换空间。cpu会一直查询哪些数据需要删除,消耗cpu的性能,同时影响数据的读写操作,但是能腾出大量的内存空间惰性删除,拿空间换时间。提高cpu的运行效率,缺点就是过期的数据还在内存中,直到下次使用的时候判断时间是否过期...
2021-01-08 09:31:31
150
原创 redis的分布式锁
公司实际开发只用redissson。lock 和unlock加锁和解锁。分布式实现及过程出现的问题:模拟超卖问题单机版 synchronizednginx分布式微服务单机锁不行,上redis分布式锁setnx(主要是加锁的过期时间,加了锁,木有释放锁。出异常,无法释放锁,所以再代码层面finally释放锁。)宕机了,根本没有走finally块,没有办法保证解锁,key没有被删除,需要给lockkey加过期时间。->为redis的key增加过期时间,注意setnx和过期时间必须...
2021-01-03 14:35:21
94
原创 redis五大数据类型的应用场景
redis的小细节redis命令不区分大小写,而key是区分大小写string同时获得多个值mset k1 v1 k2 v2 k3 v3mget k1 k2 k3INCR a1//数字递增DECR//递减数字STRLEN key 获取字符串的长度商品编号,订单号,可以用INCR 命令生成。商品右下角的点赞数,喜欢+1 INCR items:001喜欢作者文章数 和阅读数hash 购物车早期使用。全选 hgetall key 获取所有k...
2021-01-02 11:28:13
125
原创 MySQL之索引
索引就是帮助MySQL高校获取数据的数据结构索引的分类:主键索引唯一索引全文索引常规索引索引的使用1.创建表的时候,给指定的字段增加索引2.修改表,增加索引3.create index indexnameon table (Colum)索引原则;1.不是越多越好2.经常变动的数据不需要加索引3.小数据量的表不需要加索引4.索引要加在经常查询的字段上MySQLdump备份数据库文件导出...
2021-01-01 17:40:56
60
原创 mysql之事务
原子性一组操作要么都成功要么都失败一致性事务执行前后的数据完整性要把持一致持久性事务一旦提交则不可逆,被持久化到数据库中隔离性是指多个用户并发访问数据库,数据库为每个用户开启事务,不能被其它事务所干扰。事务之间要相互隔离。事务的隔离级别脏读一个事务读取了另一个事务未提交的数据不可重复读在一个事务内多次读取同一行数据,多次读取结果不同(不一定是错误,只是某些场合不对)虚读(幻读)是指在一个事务内读取到了别的事务插入的数据,导致前后读取的数据不一致...
2020-12-29 09:55:14
52
原创 sql总结
查询字段属于哪张表的多就先from那张表/分析1.先列出查询字段2.查看字段都属于哪张表3.查出这几张表的关联关系。4.如有条件再加where
2020-12-29 09:19:52
46
原创 git常用命令
git config -l //查看配置信息Git config --system --list //查看系统配置信息git config --global --list //查看用户本地配置git的本质都是基本的文件$ git config --global user.name "unsummer"$ git config --global user.email "unsummer88888@163.com"//以上两必须配置,文件位置在C:/Users/LENOVO/.gitconfigg.
2020-12-28 15:58:59
64
原创 mybatis-plus之性能分析插件
性能分析插件我们平时开发过程中,会遇到一些慢的sql,性能分析插件有助于我们了解我们的sql执行时间。 作用:性能分析拦截器,用于输出每条sql语句,及其执行时间。MP也提供性能分析插件,如果超过这个时间就停止运行。配置 /* @Bean @Profile({"dev","test"})// 设置 dev test 环境开启 public PerformanceInterceptor performanceInterceptor() { return new P.
2020-12-27 22:12:34
133
原创 mybatis-plus之逻辑删除
逻辑删除1.数据表中增加deleted字段2.实体类中增加属性@TableLogic//逻辑删除private Integer deleted;3.配置@Beanpublic ISqlInjector sqlInjector() { LogicsqlInjector logicsqlInjector = new LogicsqlInjector(); return logicsqlInjector;}#配置逻辑删除mybatis-plus.global
2020-12-27 09:49:21
101
1
原创 mybatis-plus之分页查询
分页查询分页在网站的应用非常之多:1.原始的limit进行分页2.pagehandler分页插件3.mp其实也内置了分页插件如何使用:1.配置拦截器组件@Beanpublic PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor();}测试@Testpublic void testPage(){ Page<User> pa.
2020-12-26 15:31:52
133
原创 mybatis-plus之乐观锁
mybatis-plus乐观锁实现方式:取出记录时,获取当前version 更新时,带上这个version 执行更新时, set version = newVersion where version = oldVersion 如果version不对,就更新失败1.先查询获取版本号乐观锁:1.先查询获取版本号 version=1.update user set name="周娜" ,version= version+1where id=1342479442894655492...
2020-12-26 14:10:19
91
原创 HBase没有事务怎么解决数据一致性问题
HBase提供了各种锁机制和MVCC机制来保证数据的原子性,一致性等特性。其中使用互斥锁实现的行锁保证了行级的原子性,使用了jdk提高了读写锁实现了store级别,Region级别的数据一致性。同时使用行锁+MVCC机制实现了高性能非锁定读场景下的数据一致性。MVCC(即多版本并发控制技术):它使得事务引擎不再单纯地使用行锁实现数据读写的并发控制,取而代之的是,把行锁与行的多个版本结合起来,经...
2019-10-02 21:45:26
1086
原创 hive取TOP N时,常用函数的介绍
hive一般取top n时,row_number() over(),rank() over(),dense_rank() over()这三个函数即可使用。row_number()的排序不允许并列,即便时两条记录的值相等也不会出现相同的排序值。即排完序总数不变。rank()排序时出现相等的值是会有并列,即值相等的两条数据会有相同的序列值。即排完序总数减少。dense_rank()排序时的...
2019-10-02 21:22:12
1726
原创 hive排序函数四个by的总结
order By(全局排序) :一个reducer,执行一个job。Total Job=1,可以在运行日志中看到:number of reucers=1.用在select语句的后面。sort By(分区内排序):每个reducer内部进行排序,对全局结果集来说不是排序。随机分区,防止数据倾斜。①设置reduce个数。set mapreduce.job.reducers=3;②查看reduce...
2019-10-02 21:05:52
2398
原创 android四大组件(应用程序的组成)是什么,功能分别是?
四大组件是Activity,contentprovider,service,intent.Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。android平台提供了Content Provider使一个应用程序的指定数据集提供给其他应用程序。其他应用可以通过ContentResolver类从该内容提供者中获取或存入数据。service用于在后台完成用户指定的操作。...
2018-03-08 17:27:59
307
原创 Android SDK有几层基础架构组成?各层的主要功能?组成各是什么?
一共有4层架构组成,最底层是基于linux内核实现的。负责硬件驱动,网络管理,电源管理,系统安全,内存管理。第二层是由大多数开源的函数库组成。例如:标准的c函数库Libc.负责 网页浏览器运行,影音视频播放。第三层是应用程序架构,提供软件开发的api.包含了用户ui界面的各种所需要的控件。功能:显示,消息提供,资源管理,提示消息。最上层是应用程序层。如 主屏幕,联系人,电话,浏览器,游戏。...
2018-03-08 17:18:24
630
原创 (1) 为什么Android系统要比ios卡?
1. 后台服务及自动醒 这是最最最主要的原因. Android和iOS在后台服务策略之间的区别极大的影响了系统的表现。2.硬件的参数,品控与损耗 Android手机型号丰富,硬件水准也参差不齐。加上因为成本问题,低中端产品的硬件质量也很难得到保证。并且,因为Android系统后台进程多,发热量大加上系统优化不完善,因此,硬件的损坏速度也大大高于iphone。 3.开发语言 的确...
2018-03-08 17:00:26
113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人