Nguyên nhân DorewSite ra đời
#TOP
Bài viết này để trả lời cho câu hỏi tạo DorewSite ra làm qq gì 
Wap4.co
- Chắc đã số ae là từ Wap4.co biết sang Dorew nên @Dai sẽ không giới thiệu chi tiết Wap4 là gì

- Wap4 cho phép xây dựng website với TWIG
- Wap4 tương tác với database là Custom Data với các tham số {id, name, data, time}
- data trong Custom Data là NoSQL
TWIG PHP
- Tác giả: Tuankill sử dụng twig symfony
- Tạo ra để selfhost, chạy code Wap4 trên hosting
- Sử dụng PHP và MySQL
- Dữ liệu ở trong 1 table duy nhất là custom_data gồm các cột {id, name, data, time}
- Cấu trúc database là SQL
TWIG PHP Mod (tạm gọi)
- Thêm tính năng cho phiên bản ở TWIG PHP
- Tham gia mod có @Asuna @ʟɪɴʜ ᴆᴀ̃ ᴄᴀ̆ɴɢ
- Thêm quản lý tương tác với database (cái này Dai không tham gia nên không rõ lắm :v)
Nguyên nhân DorewSite ra đời
@Dai và @Asuna backup data và code của Dorew.gq để sử dụng code TWIG PHP ở trên. Nhưng một số vấn về với code wap4 và TWIG
PHP nên @Asuna đã tạo ra TWIG PHP Mod để có thể chạy code Dorew/Jekyll VF.
Cứ tưởng là ngon rồi nhưng vấn đề mới xuất hiện.
Tốc độ load web sử dụng TWIG PHP quá chậm
Sau khi suy nghĩ thì @Dai đã tìm ra lý do: database (.sql) của Dorew nặng 2MB (hơn 8000 entry wap4). Mà cấu trúc của code TWIG PHP khi tương tác với database sẽ duyệt qua toàn bộ database.
Vd1: muốn lấy tất cả chat của thành viên là dai đã đăng thì dữ liệu của TWIG PHP ở trong cột "data" của table "custom_data" là string json đã encode. Muốn lấy ra:
Select toàn bộ cột có name là "chat" => duyệt toàn bộ "data" => decode json => json ra array => lấy "user" từ array.
Nếu chat có 1 100 cái thì TWIG PHP sẽ duyệt 100 lần.
Vd2: Show toàn bộ nội dung chatbox gồm 100 entry
TWIG PHP: database Select 100 cái để php giải mã, mỗi lần giải mã sẽ lại tương tương với database 100 lần => tương tác 10000 lần => Nếu là 1000 entry thì là 1000000 => a*n lần (a là số dữ liệu cần lấy, n là tổng dữ liệu trong table "custom data")=> Hosting gào thét, Database gào thét, người dùng gào thét. Web càng nhiều dữ liệu thì load web càng rùa bò.
Giờ giải quyết như thế nào? @Dai và @Asuna bàn nhau cho một cách giải quyết: Tạo một code mới, thay cách truy vấn tới database MySQL - DorewSite.
TWIG PHP chỉ có 1 table là "custom_data"
DorewSite gồm các table khác do người dùng tùy chỉnh: "user", "forum", "chat"... Giống với cách mà người lập trình khác sử dụng.
Lấy nội dung cũng tương tác database 1 lần không chơi a*n như kia.
DorewSite có gì hấy dẫn?
- Chạy được code twig
- Database dễ đọc, dễ quản lý hơn, có thể sử dụng hàm truy vấn MySQL để thao tác với dữ liệu (TWIG PHP không được)
- Không chạy được code Wap4 - Mở ra lối mới
- Nhiều tính năng, hàm hỗ trợ hơn.
Khuyết điểm của DorewSite?
- Không chạy được code Wap4, các bạn phải viết lại bằng hàm của DorewSite
- Phải học hàm DorewSite:https://dorew.gq/forum/319/cac-ham-xu-ly-trong-dorewsite.html
Bạn có thể giúp gì để phát triển DorewSite?
- Hỡ trợ hoàn thiện DorewSite
- Gợi ý tính năng, hàm cho DorewSite
- Chia sẻ template trên nền DorewSite
- Chia sẻ hosting để mọi người lập trình DorewSite
- Ủng hộ, giới thiệu DorewSite
-...
Ở thời điểm hiện tại thì DorewSite do @Asuna code toàn bộ, @Dai chỉ đề xuất và góp ý.
Về Wap4


Vd như cái bài viết ghim này
Muốn lấy danh sách bài viết được ghim:
- Wap4: Cách 1: duyệt toàn bộ bài viết ở forum, có ghim=true thì show ra (duyệt toàn bộ bài viết). Tạo entry dsghim gồm các id bài viết có ghim. ------- (Thật ra forum, chat... Đều tương tự)
- DorewSite: Select (array) forum where ghim=true => show ra ngoài, ezgame
Wap4 phải dùng vòng lặp để lấy data, DorewSite dùng sức mạnh của SQL. SQL nhiều trò lắm, nhanh nhanh chuyển sang DorewSite nào
Ưu điểm DorewSite với Wap4:

Wap4 lấy 1 dữ liệu lần, buộc phần code ở server phải sử lý (như dùng vòng lập) => chậm, mất công code
DorewSite có sức mạnh của Hệ quản trị cơ sở dữ liệu (DBMS) là MySQL và PHP
Lấy dữ liệu nhẹ nhàng hơn, giảm tải cho hosting
DorewSite có gì hấy dẫn? => lỗi chính tả.(đổi lại = Hấp)
@Chan đọc nội dung bài viết và comment kĩ vào
@Hữu Phương tại tay mình nhanh rồi
@Trùm test hostify xem sao, nếu được tôi tài trợ con host bên đó!
@Trùm test hostify xem sao, nếu được tôi tài trợ con host bên đó!
@Chan đâu có, phải gọi là tay nhanh hơn não
Thật ra mình ấn tượng quả captcha bá cháy vãi đạn