自建busuanzi网站计数服务
前言 不蒜子(busuanzi) 是一个广受欢迎的免费网页计数服务,能够轻松实现网站的页面浏览量(PV)和独立访客数(UV)统计。许多基于Hexo的网站都在使用busuanzi来实现访问统计功能,我的博客当前使用的主题是Butterfly,这个主题也是通过集成busuanzi计数器来实现网页计数。 然而,随着使用人数的不断增多,这个由作者为爱发电的免费服务开始出现稳定性问题,访问速度也变得起伏不定。 因此,我决定自己开发一个服务来代替busuanzi,为我的网站提供稳定的计数服务。 技术栈选择我简单分析了一下,发现busuanzi这个网页计数服务实现起来并不复杂,主要是通过获取访问请求的来源地址来实现PV和UV的计数增长,因此服务的核心就是一个统计接口。 基于这个分析,技术栈的选择也相对明确: 接口开发:由于我最熟悉Java,所以选择使用SpringBoot3和Java17来实现这个接口。(只实现一个接口的话,用SpringBoot感觉有些重,后续有时间可以考虑用Go重写一遍) 数据存储:数据库选择很多,但考虑到服务需要记录的数据主要是网站的PV和UV,对于请求IP等信息并非...
Java图片处理
最近经常接触Java的图片处理,所以特地来记录一下。
开发环境配置
一些服务器软件的安装
MybatisPlus常用方法
一些MybatisPlus常见的使用方法。
2022年度总结
2022年度总结
SpringBoot部署启动
前述记录一下比较常用的服务部署方式。 简单粗暴的脚本这种是本地启动的方式,所以需要自行配置服务器的Java环境。 这个是最简单粗暴的方式了,直接使用java -jar命令,修改服务名和运行jar包的位置就可以使用了。 1234567891011121314151617181920#!/bin/bashJAVAHOME=$JAVA_HOMEecho "--------start--------"PID=$(ps -ef|grep app-1.0.0.jar |grep -v grep|awk '{print $2}')if [ ! $PID ]; then nohup java -jar -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -Xms512m -Xmn768m -Xmx1024m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC app-1.0.0.jar > app.log 2>&...
RabbitMQ
RabbitMQ的学习笔记。
SpringCloud
SpringCloud的学习笔记。
lambda表达式与Stream流
Java8的新特性,优化代码。
异常处理
常用的全局异常处理。
分布式session的解决方案
Session主要的目的是会话控制,但是在分布式环境下,Session就会出现一些问题,接下来就来探讨一下会出现的问题以及解决方案。
MySQL必知必会
阅读MySQL必知必会的笔记,并记录一下书中的SQL语句,用于加深一下印象。