Một trang web có nhiều dịch vụ công. Mỗi dịch vụ công là một biểu mẫu (form). Trong mỗi form có nhiều trường nhập thông tin (input), và chỉ duy nhất một nút gửi (submit). Dịch vụ công được ghi nhận hoàn thành thành công khi và chỉ khi thông tin được cơ sở dữ liệu (database) chấp nhận và lưu trữ ngay sau khi người dùng submit. Ghi nhận thất bại khi người dùng đã ấn submit trên trình duyệt nhưng thông tin không được chấp nhận vì bất cứ lý do gì.
Như vậy định danh cho mỗi dịch vụ công là ID nút submit. Đo lường hiệu quả mỗi dịch vụ thông qua các thống kê: lượt submit thành công/thất bại, lượt điền form, lượt xem thuần túy, thời gian ở trong dịch vụ.
CREATE TABLE Service_ {
id_submit VARCHAR(255),
task VARCHAR(255),
success INT,
fail INT,
fill INT,
visit INT,
time_onsite INT,
stamp DATETIME,
PRIMARY KEY (id_submit),
};
Sau khi điền đầy đủ thông tin vào form
Đăng ký kết hôn
, người dùng ấn nút submit id=581f0d47
, đã có tổng cộng835
/234
lượt sử dụng dịch vụ thành công/thất bại,1420
lượt điền form mà không submit,2035
lượt xem thuần túy không điền form cũng không submit, tổng cộng thời gian xem form là580212
giây (không phân biệt các trường hợp success/fail/fill/visit), tính từ2022-11-30 13:00:00
và trong 1 giờ tiếp theo.
INSERT INTO Service_ VALUES
('581f0d47', 'Đăng ký kết hôn', 835, 234, 1420, 2035, 580212, 2022-11-30 13:30:00);
Đi vào chi tiết cụ thể hơn, tìm hiểu nguyên nhân làm cho sử dụng dịch vụ khó khăn/thất bại bằng cách thống kê trên các trường input.
CREATE TABLE Input {
id_input VARCHAR(255),
id_submit VARCHAR(255),
title_input VARCHAR(255),
success INT,
fail INT,
stamp DATETIME,
PRIMARY KEY (id_input),
FOREIGN KEY (id_submit) REFERENCES Submit(id_submit),
};
Ô thông tin
Địa chỉ
có id=ca2ffe58
nằm trong dịch vụĐăng ký kết hôn
. Trong số234
lượtĐăng ký kết hôn
thất bại,56
lượt có nguyên nhân đến từ ôĐịa chỉ
bị điền sai, tính từ2022-11-30 13:00:00
và trong 1 giờ tiếp theo.
INSERT INTO Input VALUES
('ca2ffe58', '581f0d47', 'Địa chỉ', 56, 2022-11-30 13:30:00);
Thống kê này cho ta cái nhìn tổng quát về trang web
CREATE TABLE Website {
success INT,
fail INT,
fill INT,
visit INT,
time_onsite INT,
stamp DATETIME,
}
Đã có
10
/24
lượt sử dụng dịch vụ thành công/thất bại,36
lượt điền form mà không submit,124
lượt xem trang thuần túy, tổng cộng thời gian xem trang web là58212
giây (không phân biệt các trường hợp success/fail/fill/visit), tính từ2022-11-30 13:00:00
và trong 1 tuần tiếp theo.
INSERT INTO Website VALUES
('217.76.56.249', 10, 24, 36, 124, 58212, 2022-11-30 13:30:00);
Như vậy ta đã đi qua nghiên cứu 3 cấp thống kê giao diện của trang web dịch vụ công: thống kê trường thông tin làm cơ sở cho thống kê luồng dịch vụ, thống kê về luồng dịch vụ làm cơ sở cho thống kê về tổng thể trang web.
graph LR;
Input-->Service;
Service-->Website;
Dưới đây sẽ tiếp tục nghiên cứu thống kê về hạ tầng, là những thứ đứng sau trang web, người dùng không thể thấy
Hiện nay vấn đề quá tải server không còn đáng lo vì đã có những công cụ giúp tự động mở rộng thuê thêm máy chủ khi tải cao, và tự động thu lại khi tải thấp, cùng với các công cụ cân bằng tải, bộ nhớ đệm... Để có cơ sở trình các cấp lãnh đạo lựa chọn công nghệ phù hợp và dự trù kinh phí tương ứng, ta cần có các thống kê về server và database.
CREATE TABLE Server {
stamp DATETIME,
users INT,
cpu FLOAT,
ram FLOAT,
get_ INT,
put_ INT,
post_ INT,
delete_ INT,
get_respone FLOAT,
put_respone FLOAT,
post_respone FLOAT,
delete_respone FLOAT,
};
Đã có 264 người truy cập vào trang web, tiêu thụ 34% CPU và 21% RAM, tổng cộng
56
/531
/775
/12
lượt GET/PUT/POST/DELETE từ khối Frontend gửi đến khối Backend, thời gian phản hồi trung bình tương ứng của server là243.2
/231.1
/241.4
/204.6
, đơn vị milisecond, tính từ2022-11-30 13:00:00
và trong 1 giờ tiếp theo.
INSERT INTO Infrastructure VALUES
(2022-11-30 13:30:00, 264, 0.34, 0.21,
56, 531, 775, 12, 243.2, 231.1, 241.4, 204.6);
CREATE TABLE Warehouse {
id VARCHAR(255),
name_ VARCHAR(255),
create_ INT,
read_ INT,
update_ INT,
delete_ INT,
create_respone FLOAT,
read_respone FLOAT,
update_respone FLOAT,
delete_respone FLOAT,
stamp DATETIME,
PRIMARY KEY (id),
}
Bảng
Danh bạ điện thoại
trong Database với id=be4e3eec
, tổng cộng56
/531
/775
/12
lượt Create/Read/Update/Delete (CRUD) từ khối Backend gửi đến khối Database, thời gian phản hồi trung bình tương ứng của Database là243.2
/231.1
/241.4
/204.6
, đơn vị milisecond, tính từ2022-11-30 13:00:00
và trong 1 giờ tiếp theo.
INSERT INTO Warehouse VALUES
('be4e3eec', 'Danh bạ điện thoại', 56, 531, 775, 12, 243.2, 231.1, 241.4, 204.6)
Về phần Heatmap như Quyết đã trình bày. Tuy nhiên lưu ý một số điểm sau:
- Heatmap là tổng cộng tích lũy của tất cả session
- Heatmap trực quan với người dùng nhưng không thân thiện với máy tính
- Heatmap không thể làm đầu vào cho các bước tính toán tiếp theo, chỉ dùng mắt thường xem heatmap để đoán hành vi người dùng
- Heatmap liên hệ chặt chẽ với cây HTML
- Đầu ra của heatmap là file ảnh jpeg, nó screenshot trang web rồi tô màu lên