博客迁移之痛
今天对博客进行的迁移,导致大量博文的丢失,我的心好卵痛,是这样的
博客迁移今天对博客进行的迁移,导致大量博文的丢失,我的心好卵痛,是这样的
特别是以前的博文应为不是Markdown格式导致和现在的博客系统不兼容,在博文的图片使用的是本地服务器存储,图片丢失也导致不得不放弃一部分文章,先让我哭一会。
不过值得高兴的是迁移总算结束了,速度快乐很多呦,你不要试试吗!
Ubuntu18.04修改swap分区大小
查看初始状态查看原先swap大小
12345root@gpu-2:~# free -h 总计 已用 空闲 共享 缓冲/缓存 可用内存: 62G 417M 38G 3.0M 23G 61G交换: 2.0G 0B 2.0Groot@gpu-2:~#
原先swap文件位置
1234root@gpu-2:~# swapon -s文件名 类型 大小 已用 权限/swapfile1 file 12582908 0 -2root@gpu-2:~#
创建一个新的swap文件一般swap分区要大于或等于物理内存(1-1.5倍),最大一般有20G即可,我这里创建12G:
123456789101112131415161718192021222324252627282930313233343536373839 ...
PostgreSQL中jsonb数据格式操作
建表SQL123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105CREATE TABLE "public"."contents_review_log" ( "id" varchar(128) COLLATE "pg_catalog"."default" NOT NULL, "app_id" int4 NOT NULL, "open_id" varchar(128) COLLATE "pg_catalog"."default" NOT NULL, & ...
哪吒的魔童降世豆瓣影评分析
说明今天看豆瓣的时候一不小心看到了哪吒之魔童降世这部动漫,不由自主的滚动鼠标看着影评。突然躁动的小心心想看看所有的影评说的啥(脑子:不,你不想)。
辣么多,想想还是算了,心疼我的电脑一秒,继续让下翻发现有一个比较少影评,只有一万多条,还带有短评,那还等什么,抄家伙。
爬虫的过程就不说了基本就是F12找标签,我把代码上传到了GitHub,有兴趣可以下载看看:
1https://github.com/HWYWL/spring-boot-2.x-examples/tree/master/spring-boot-douban
然后就是等待数据全部落地。
成果接下来就是见证奇迹的时刻,我们来瞅瞅他们在说啥。
我们先使用词频图谱来看一下最直观,唉,可怜的敖丙被哪吒挤在角落瑟瑟发抖。配角就没人权吗,不知道我肩负着整个龙族的命运吗?下次见到导演用冰冻他一天。哈哈开玩笑,除此还有两个比较直观的关键词:国漫、好看,看来大部分人对国漫还是比较乐观的,虽有不足,但能看到努力。
看完词频我们根据不同的纬度来看看,其他数据
这个不由最开始统计出来我是一脸懵逼的,不由是什么鬼,后来我在影评搜了一下才发现, ...
膨胀的我爬了一下链家
说明别问为什么爬的是二手房,问就是买不起,嗯,是的,我连现在爬的二手房也一样买不起。
我们言归正传,我在连接上找一了一下二手房,挺多的,六万多套,就是不知道我的在哪。
听说今年房地产不景气,价格有所下降(一点点),所以我风平浪静的心也开始蠢蠢欲动,啊,春天来了吗!!!
爬虫需要知道几个关键信息,一个是分页,另一个是详情页,我们从链家的地址可以看出https://gz.lianjia.com/ershoufang/pg2/**,pg2应该就是单词page2的缩写,赶紧翻到第三页,果不起然是pg3,分页有了我们来看看详情页,万能的**F12,通过标题直接显示出详情页,连拼接都省了,链家真贴心。
再看看里面的详情页所有数据被安排的整整齐齐,真香。
竟然万事俱备,那我们就上吧,代码撸起来!!!
撸代码爬虫框架用的是 webmagic 通过一个循环生成 pg 页,再把怕下来的数据落到MySQL数据库。别问为啥用 webmagic ,问就是喜欢(简单)。
巴拉巴拉写好代码,代码不复杂,只要会xpath,撸遍天下都不怕,代码地址:
1https://github.com/HWYWL/sp ...
重磅:Redis 5.0 正式版发布了,19 个新特性!
Redis 5.0 GA 正式版发布了!1234下载地址:download.redis.io/releases/redis-5.0.0.tar.gz源码下载:github.com/antirez/redis/releases/tag/5.0.0
先看一下 Redis 5 带来的更新内容:
新的流数据类型(Stream data type) https://redis.io/topics/streams-intro
2.新的 Redis 模块 API:定时器、集群和字典 API(Timers, Cluster and Dictionary APIs)
RDB 现在可存储 LFU 和 LRU 信息
4.redis-cli 中的集群管理器从 Ruby (redis-trib.rb) 移植到了 C 语言代码。执行 redis-cli --- cluster help 命令以了解更多信息
新的有序集合(sorted set)命令:ZPOPMIN/MAX 和阻塞变体(blocking variants)
升级 Active defragmentation 至 ...
使用RedisTemplate访问Redis数据结构
Redis 数据结构简介Redis 可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。
下面来对这5种数据结构类型作简单的介绍:
Redis 5种数据结构的概念大致介绍到这边,下面将结合Spring封装的RedisTemplate来对这5种数据结构的运用进行演示
RedisTemplate介绍spring 封装了 RedisTemplate 对象来进行对redis的各种操作,它支持所有的 redis 原生的 api。
RedisTemplate在spring代码中的结构如下:
1234567org.springframework.data.redis.coreClass RedisTemplate<K,V>java.lang.Object org.springframework.data.redis.core.RedisAccessor org.springframework.data.redis.core.RedisTemplate& ...
RedisTemplate设置过期时间
通过spring boot 中的Redis模板设置数据的过期时间123456789101112131415161718192021222324252627282930313233343536373839//向redis里存入数据和设置缓存时间 stringRedisTemplate.opsForValue().set("baike", "100", 60 * 10, TimeUnit.SECONDS);//val做-1操作 stringRedisTemplate.boundValueOps("baike").increment(-1);//根据key获取缓存中的val stringRedisTemplate.opsForValue().get("baike")//val +1 stringRedisTemplate.boundValueOps("baike").increment(1);//根据key获取过期时间 stringRedisTemplate.getExpire(&q ...
Scala面向对象编程之对象
对象Scala中的objectobject 相当于 class 的单个实例,通常在里面放一些静态的 field 或者 method;
在Scala中没有静态方法和静态字段,但是可以使用object这个语法结构来达到同样的目的。
object作用:
存放工具方法和常量
高效共享单个不可变的实例
单例模式
举例说明:
12345678910111213141516171819202122232425package com.yi.claszclass Session {}object SessionFactory{ //该部分相当于java中的静态块 val session = new Session() //在object中的方法相当于java中的静态方法 def getSession(): Session ={ session }}object SessionDemo{ def main(args: Array[String]): Unit = { //单例对象,不需要new,用【 ...