Older/Readme.md
2025-02-28 16:44:54 +00:00

121 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 前言
因为个人爱好,购买了云服务器,上面部署了静态博客网站,科学上网服务,内网穿透服务。
上述条件弄完之后,还剩下很多性能。所以决定自己实现一个服务器应用程序,代码比较简单,也可以说就是练练手。
## 访问统计
`/api/v1/visit_analysis`
`/api/v1/most_viewed_urls`
`/api/v1/latest_viewed_urls`
表名visit_analysis
| 字段名 | 数据类型 | 约束条件 | 解释 |
| --------------- | -------- | --------------------- | ---- |
| id | INTEGER | NOT NULLPRIMARY 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 | |
1. 创建table visit_analysis。
2. 插入 urlvisitor_uuidlast_user_agent last_view_time至表中如果表中已存在urlvisitor_uuid 相同的item则更新last_user_agent last_view_time并将page_view_count加1否则创建新的item并将page_view_count赋值为1。
3. 根据url 获取 不同的visitor_uuid的个数作为访客数量统计将所有 page_view_count 累加作为访问次数统计。
4. 将 url 的 所有 page_view_count 累加,统计出 n 个最大的记录。
5. 将 url 的 last_view_time进行排序统计出最新的 n 个记录。
6. 将所有记录的不同 visitor_uuid 相加作为网站总访客数将所有page_view_count相加作为网站总访问次数。
## Live2D 模型添加
在 XML 配置文件定义`Live2dModelsRoot` 字段,值默认为 `resources/live2d`
模型相关文件放置在 DocumentRoot/resources/live2d下。
## 任务清单
| 字段名 | 数据类型 | 约束条件 | 解释 |
| ------------- | ------------ | --------------------- | ---- |
| id | INTEGER | NOT NULLPRIMARY 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`
## 微信公众号对接
1. 公众号管理网页:设置与开发→基本配置→服务器配置。
2. 由于使用的是测试公众号,因此只能够接受消息,微信服务器会将该信息发送至我们的服务器,然后我们可以对该消息进行回复,随后该连接将被关闭。
```mermaid
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
1. 重新新建项目,只存放服务器业务相关代码和文件。
2. 去除Web Toolkit以后不再使用它了。
### 2021/09/03
1. 通过阿里云申请免费SSL证书放置cert目录中。
2. 修改`conf/nginx.conf`文件使http全部重定向至https。