4.3 KiB
4.3 KiB
前言
因为个人爱好,购买了云服务器,上面部署了静态博客网站,科学上网服务,内网穿透服务。
上述条件弄完之后,还剩下很多性能。所以决定自己实现一个服务器应用程序,代码比较简单,也可以说就是练练手。
访问统计
/api/v1/visit_analysis
/api/v1/most_viewed_urls
/api/v1/latest_viewed_urls
表名:visit_analysis
字段名 | 数据类型 | 约束条件 | 解释 |
---|---|---|---|
id | INTEGER | NOT NULL,PRIMARY KEY | |
url | TEXT | NOT NULL | |
visitor_uuid | TEXT | NOT NULL | |
last_user_agent | TEXT | NOT NULL | |
last_view_time | INTEGER | NOT NULL | |
page_view_count | INTEGER | NOT NULL |
- 创建table visit_analysis。
- 插入 url,visitor_uuid,last_user_agent ,last_view_time至表中,如果表中已存在url,visitor_uuid 相同的item,则更新last_user_agent ,last_view_time,并将page_view_count加1,否则创建新的item,并将page_view_count赋值为1。
- 根据url 获取 不同的visitor_uuid的个数作为访客数量统计,将所有 page_view_count 累加作为访问次数统计。
- 将 url 的 所有 page_view_count 累加,统计出 n 个最大的记录。
- 将 url 的 last_view_time进行排序,统计出最新的 n 个记录。
- 将所有记录的不同 visitor_uuid 相加作为网站总访客数,将所有page_view_count相加作为网站总访问次数。
Live2D 模型添加
在 XML 配置文件定义Live2dModelsRoot
字段,值默认为 resources/live2d
。
模型相关文件放置在 DocumentRoot/resources/live2d下。
任务清单
字段名 | 数据类型 | 约束条件 | 解释 |
---|---|---|---|
id | INTEGER | NOT NULL,PRIMARY KEY | |
create_time | INTEGER | NOT NULL | |
parent_id | INTEGER | ||
content | VARCHAR(512) | NOT NULL | |
finished | BOOL | ||
finished_time | INTEGER |
Core Dump
通过命令ulimit -a
查看:
real-time non-blocking time (microseconds, -R) unlimited
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 6846
max locked memory (kbytes, -l) 228312
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 6846
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
core file size这一项为0,说明不生成core dump文件。
在/etc/profile
里面加入
ulimit -c unlimited
sysctl -w kernel.core_pattern=core_%t_%s_%d_%e
查看帮助man 5 core
。
微信公众号对接
- 公众号管理网页:设置与开发→基本配置→服务器配置。
- 由于使用的是测试公众号,因此只能够接受消息,微信服务器会将该信息发送至我们的服务器,然后我们可以对该消息进行回复,随后该连接将被关闭。
stateDiagram-v2
[*] --> Idle
Idle --> WaitSetAlarmClock : input 1
WaitSetAlarmClock --> Idle : process input
Idle --> WaitSetText : input 2
WaitSetText --> Idle : process input
Idle --> Idle : not found
修改历史
2025/02/28
- 重新新建项目,只存放服务器业务相关代码和文件。
- 去除Web Toolkit,以后不再使用它了。
2021/09/03
- 通过阿里云申请免费SSL证书放置cert目录中。
- 修改
conf/nginx.conf
文件,使http全部重定向至https。