Prompt Engineering là quy trình công phu của việc tạo và điều chỉnh hướng dẫn hoặc truy vấn được cung cấp cho các công cụ trí tuệ nhân tạo để tạo ra nội dung cụ thể.
Hướng dẫn tăng tốc độ tải trang web qua tối ưu code
Làm cách nào để tăng tốc độ tải trang của website với tài nguyên server cùng một cấu hình có thể đáp ứng đồng thời số concurrent user lớn nhất có thể, và thời gian phản hồi nhanh nhất. Vấn đề này bất kỳ một SEOer nào cũng mong muốn để phục vụ trải nghiệm load nhanh nhất cho độc giả của mình.
Trước tiên để thực hiện được việc này bạn cần nhớ 2 điểm quan trọng nhất trong tối ưu:
- Sử dụng gì thì lấy cái đó (tránh dư thừa)
- Tiền xử lý (chuẩn bị sẵn sàng mọi thứ người dùng yêu cầu)
Sử dụng gì thì lấy cái đó: Việc tối ưu từng byte dữ liệu rất quan trọng, đơn giản khi số lượng user đồng thời là 1024 người dùng, 1 byte dữ liệu giảm được 1M dữ liệu truyền qua mạng. Việc làm giảm tối thiểu dung lượng của 1 trang web đặc biệt quan trọng. Giả sử băng thông mạng (con đường) chỉ đáp ứng được 10.000 người 1 lúc, bạn tối ưu size của 1 page giảm một nữa sẽ đáp ứng được gấp đôi là 20.000 người dùng đồng thời. Giờ bạn đã thấy việc tối ưu size của 1 trang web quan trọng tới mức nào.
Tiền xử lý: chuẩn bị sẵn sàng mọi thứ người dùng yêu cầu trước thả vào một vùng nhớ phía server, có thể lưu trữ trong bảng tạm(table) hoặc file lưu trữ (lưu ý là chưa sử dụng tới cache). Người dùng yêu cầu chỉ đọc dữ liệu và không phải lúc yêu cầu mới tính toán, xử lý những thứ người dùng muốn. Ví dụ đơn gian như khách hàng order 1 suất ăn gồm: cơm, rau, thịt, cá, ta sẽ chuẩn bị sẵn và cho vào khay trước khách hàng đến có sử dụng luôn không phải đợi, khác với việc khi khách order mới đi lấy cơm > rau > thịt > cá.
Thời gian load trang tác động trực tiếp tới trải nghiệm người dùng và đây là yếu tố xếp hạng quan trọng, để tăng được sự tín nhiệm của Google bạn cần thực hiện từ gốc: Tổ chức cơ sở dữ liệu, tối ưu câu lệnh query (Index), lưu trữ dữ liệu lớn cần phân mảnh dữ liệu (partition table), …
Tài liệu này dành cho Người phát triển website (Developer, Coder), Seo technique, những người tham gia vào việc tối ưu website từ CSDL, Code ứng dụng. Nhưng nếu bạn chỉ chuyên SEO không code được stored, code phần ứng dụng thì bạn cần trao đổi với đội phát triển code để thực hiện việc này.
Lưu ý: Đây là phương pháp tối ưu hiệu suất từ gốc chưa đề cập tới Cache ứng dụng, Cache server, Cacher Proxy. Tập trung vào tối ưu các truy vấn SQL, và tối ưu cách viết code ứng dụng.
- Vấn đề gặp phải
- Khó khăn
- Mục đích
- Một số nguyên tắc
- Các bước thực hiện tối ưu
- Ai thực hiện việc tối ưu?
- Minh họa Thực tiễn
- Mô hình Servers
- Tài liệu tham khảo
1. Vấn đề gặp phải
- Size dữ liệu tăng lên > 20.000 good > 200.000 fine > 2.000.000 bad
- Concurrent User tăng: 5.000 good > 8.000 fine > 10.000 bad 25.000 (concurrent user) – xoso.com.vn
- Bottleneck nghẽn cổ chai
- Tốn tài nguyền CPU, I/O
- Thời gian phản hồi chậm
2. Khó khăn
Vấn đề hay gặp của các team, member khi thực hiện tối ưu???
- Chỉ viết cho chạy được, chưa quan tâm nhiều đến tối ưu hiệu năng
- Do tốn thời gian, mất nhiều công sức
- Chưa gặp những thực tiễn với User concurrent cao
- Khả năng của team: Team của bạn hoàn toàn giải quyết được vấn đề
- Không tối ưu > SLOW > USER SAD > Bỏ sử dụng
3. Mục đích
- Trải nghiệm sử dụng tốt nhất cho người dùng về thời gian xử lý
- Giảm thiểu chi phí đầu tư servers (Code tệ không tối ưu có thể cần đến 3-10 server sau khi tối ưu chỉ cần 1)
- Tối ưu > Load fast > USER GLAD > có thể sử dụng tiếp
- Đáp ứng được nhiều concurrent user (Scales with concurrency)
4. Một số nguyên tắc
- Đảm bảo tính khả dụng, sẵn sàng (Availability)
- Hiệu năng cao (high Performance) => Page speed load fast
- Độ tin cậy (Reliability)
- Khả năng quản lý: dễ điều khiển và giám sát
- Khả năng mở rộng (Scalability)
- Chi phí giảm chi phí đầu tư phần cứng, tăng chi phí phát triển
5. Các bước thực hiện tối ưu
Tối ưu bắt đầu từ gốc: DB > Code > Cache App > Server/load balancer/cache > Network
- DB Tunning
- Code optimize
- Cấu hình cài đặt
-
Kiến trúc hệ thống
- Các thành phần tham gia hệ thống
- Server DB, App, Cache
-
Mô hình hệ thống – phân tích thiết kế
- Mô hình nghiệp vụ
- Mô hình phân rã chức năng
- Mô hình hoạt động chức năng (mô tả các func quan trọng, từng bước)
- Mô hình Quan hệ thực thể
-
Code mô hình 3 lớp MVC
- Model (Database) - Tập trung vào Tiền xử lý
- Viết query trong DB (ko trong code app)
- Query luôn nhớ sử dụng field nào thì lấy field đó, không dùng all (*)
- Tối ưu các câu lệnh INDEX
- Partition Table cho dữ liệu lớn
- Hạn chế sử dụng các Hàm Func (SUM, COUNT)
- Hạn chế JOIN bảng
- Hạn chế sử dụng ORDER
- Tập trung vào Tiền xử lý dữ liệu (PreLoad)
-
Code – Đảm bảo chạy nhanh nhất, tốn ít tài nguyên nhất có thể
- Tối thiểu truy vấn (query vào CSLD)
- Cách sử dụng biến/func khởi tạo 1 lần sử dụng nhiều lần với tham số không đổi (lỗi hay gặp trên user control viết độc lập)
- Cách sử dụng vòng lặp, sử dụng biến/func trong và ngoài vòng lặp khác nhau?
- Tối ưu HTML, CSS, Javascript (Google pagespeed insight) – tối ưu từng byte
6. Ai thực hiện việc tối ưu?
- DB Admin
- System Admin
- Team Lead
- Developer (Coder)
Những người này thực hiện những gì?
Tối ưu như thế nào???
7. Minh họa Thực tiễn
seothetop.com
- Show CSDL, tables, stored, function
- Tiền xử lý: Stored data in Json, nest object, ưu tiên thực hiện cho first pages bởi 80-90% truy cập vào first pages, load more gọi query động
Ví dụ:
Dữ liệu chuẩn bị tiền xử lý cho chuyên mục: Kiến thức SEO của Seothetop sẽ được xử lý trước và lưu trữ dữ liệu dạng Json vào 1 record của 1 bảng.
Trên code C# sẽ dùng Deserialize để parse chuỗi Json thành List<object> lấy ra để sử dụng. Theo cách này thay vì phải truy cập vào bảng chuyên mục, bảng tin tức để lọc dữ liệu (Filter theo mệnh đề where, order, vv), thì tiền xử lý chỉ cần truy vấn vào bảng lấy 1 record theo ID.
8. Mô hình Servers
- Load Blancer chia tải nhiều server xử lý
- Server Cache Proxy
- Tạo các bản sao CSDL trên nhiều server, đồng bộ dữ liệu
9. Tài liệu tham khảo
- https://www.slideshare.net/rmederer/jax-2011-high-scalability-by-examplemedererbukowskifinalhandout-10521699
- https://www.techempower.com/blog/2016/02/10/think-about-performance-before-building-a-web-application/
- http://baiy.cn/doc/byasp/hpWeb_en.htm
- https://www.nginx.com/blog/10-tips-for-10x-application-performance/
Tóm kết
Việc tối ưu tăng tốc độ tải trang phần view code HTML sử dụng những guide line của Google Pagespeed insight giúp bạn rất nhiều từ cách làm minimize HTML, CSS, Javascript, hình ảnh và nhiều thứ khác nhằm giảm dung lượng tối thiểu, còn bài viết này muốn chia sẻ với các bạn cách server phản hồi nhanh nhất yêu cầu của người dùng, dữ liệu lưu trữ động trong cơ sở dữ liệu (database) cần tiền xử lý tất cả những thông tin người dùng cần và lưu nó vào một bảng nhớ tạm, khi có request đến chỉ lấy ra mà không cần phải tính toán.
Trên đây mới là bài viết tổng quan về tối ưu hiệu năng của hệ thống, do vậy không thể truyền tải hết mà chỉ có thể đưa ra gợi ý và cách thức thực hiện tới bạn và doanh nghiệp của bạn, nếu cần tư vấn và đào tạo trực tiếp về tối ưu code ứng dụng, và chiến lược SEO cho doanh nghiệp (tầm trung đến lớn). Bạn có thể liên hệ với chúng tôi qua email seothetop@gmail.com hoặc số 0916883366
Bạn muốn thực hiện SEO toàn diện cho website của mình một cách chuyên nghiệp:
Chúc bạn thành công!
Dũng Hoàng, admin SeoTheTop
Tin khác
7 Kỹ Năng Cần Thiết cho Nghệ thuật viết Prompt Engineering
Để thiết kế Prompt Engineering tốt bạn cần hiểu biết về nhiều lĩnh vực và tận dụng kỹ năng sáng tạo, giao tiếp, kiến thức chuyên môn về chủ đề, ngôn ngữ, tư duy phản biện và sự sáng tạo.
19 Mẫu Lời nhắc ChatGPT để tạo Content Hữu ích
Khám phá nghệ thuật sử dụng ChatGPT để viết nội dung và copywriting, từ đó nâng cao khả năng sáng tạo của bạn. Seothetop đã thực hiện tạo một số Content sử dụng ChatGPT và cho kết quả khả quan. Hãy cùng khám phá cách sử dụng ChatGPT để tạo nội dung hữu ích.
56 Mẫu Lời nhắc ChatGPT dành cho Chiến lược SEO của bạn
Khám phá gần 60 mẫu lời nhắc ChatGPT dành cho SEO, tìm hiểu cách chúng hoạt động và những lợi ích mà chúng mang lại cho những trang web đang tìm cách cải thiện khả năng hiển thị trực tuyến của mình.
Sử dụng ChatGPT để SEO thống trị cộng cụ tìm kiếm
Khám phá cách sử dụng ChatGPT một cách thông minh trong chiến lược SEO của bạn để thống trị cảnh tìm kiếm. Bài viết này sẽ chỉ bạn cách tận dụng AI để cải thiện hiệu suất SEO của bạn và đạt được kết quả đột phá
Cách Sử dụng ChatGPT để viết Content bài đăng blog/website
Khám phá cách sử dụng ChatGPT, một công cụ trí tuệ nhân tạo, để tạo nội dung sáng tạo và hấp dẫn. Bài viết này hướng dẫn cách tận dụng ChatGPT hiệu quả trong việc viết nội dung cho blog, website, hoặc dự án cá nhân của bạn.
Content AI là gì? Cơ hội và Thách thức của nội dung do AI tạo ra
Ngày nay, Trí tuệ nhân tạo (AI) đã phát triển mạnh mẽ, mang theo nhiều cơ hội và thách thức. AI không chỉ giới hạn trong việc tạo hình ảnh mà còn mở rộng sự ứng dụng đa dạng, từ tạo nội dung văn bản cho đến chatbot thông minh. Tuy nhiên, dù có sự tiến bộ đáng kể, AI vẫn không thể hoàn toàn thay thế
Black Hat SEO: 18 thủ thuật SEO mũ đen rủi ro cần tránh
Hãy cùng Seothetpo khám phá những nhiều liên quan đến SEO Mũ Đen và lý do tại sao hầu hết các chuyên gia SEO nói không với những phương pháp này.
19 Lỗi SEO Kỹ thuật thường gặp và Cách khắc phục
Xem xét 19 lỗi SEO kỹ thuật phổ biến mà ngay cả những người làm chuyên nghiệp cũng thường gặp phải. Hãy khám phá từng lỗi một và khắc phục nó.
Brand Mention là gì? Đề cập thương hiệu có ý nghĩa gì với SEO
Brand mention hay đề cập thương hiệu tích cực có ý nghĩa và mang lại nhiều lợi ích không chỉ riêng SEO nó giúp bạn tăng nhận diện thương hiệu và sự tin tưởng, hãy đọc để tìm cách hưởng lợi nhiều hơn cho cả 2 phía.