Error 503 - Nguyên nhân và cách xử lý (Phần 1)
Bài viết được dịch từ https://www.cpi.ad.jp/column/column01/ Chào các bạn. Tôi là Matsuo – Web rider của team Web Marketing ở Kyoto. tôi sẽ đưa ra những “bí kíp” để thu hút khách hàng tới trang Web dưới con mắt của một Marketer, trong đó tập trung vào những tip để chọn Rental server ...
Bài viết được dịch từ https://www.cpi.ad.jp/column/column01/ Chào các bạn. Tôi là Matsuo – Web rider của team Web Marketing ở Kyoto. tôi sẽ đưa ra những “bí kíp” để thu hút khách hàng tới trang Web dưới con mắt của một Marketer, trong đó tập trung vào những tip để chọn Rental server
Đã bao giờ bạn nhìn thấy error message như「503 Service Unavailable」「Service Temporarily Unavailable」trong khi đang vận hành WebSite chưa? Message trên được gọi là “Lỗi 503”, là 1 HTTP status code trả về từ Rental server. Lỗi này chỉ trạng thái do vượt quá giới hạn cho phép truy cập vào server cùng lúc nên hạn chế quyền xem đối với người dung. Tóm lại, khi có message này thì nghĩa là người dùng không thể xem được trang web. Ví dụ, nếu bạn đang quản lý 1 NetShop, khách hàng của bạn sẽ không thể mua hàng, và đương nhiên dù bạn muốn khách hàng đọc được những gì bạn viết thì cũng không được vì nó đâu hiển thị.
Ở bài viết này, tôi sẽ chỉ cho các bạn cách để giảm tần suất hiển thị error 503, tránh mất đi những cơ hội kinh doanh của bạn. Chìa khóa nằm ở: “Các chọn Rental server phù hợp”.
Khi hiển thị error message 503 thì tạm thời, người dung sẽ không thể nhìn thấy WebSite. Khi không xem được Website thì sẽ có những điểm bất lợi dưới đây:
1. Không xem được nội dung trang Web nên cũng không thể share trên các mạng xã hội như Twitter, Facebook,… 2. Không xem được nội dung trang Web nên cũng không thể mua hàng trên đó (Trường hợp đối với NetShop) 3. Đang mua hàng dở nhưng tự dưng không hiển thị page sản phẩm (Trường hợp đối với NetShop) 4. Không xem được nội dung trang Web nên hiểu lầm rằng “Trang Web này đã bị đóng”, và sẽ không truy cập lại nữa.(Trường hợp xảy ra đối với đa số những người không rõ về Web)
Trong đó, bất lợi lớn nhất có lẽ là “Ảnh hưởng đến thu hút mọi người tới trang Web”. Đặc biệt, khi mình giới thiệu WebSite của mình trên các mạng xã hội như Twitte, Facebook, những người tò mò muốn xem nó thế nào, vào lại gặp lỗi 503 này sẽ không chỉ cảm thấy thất vọng, mà còn vô tình đánh mất đi cơ hội được đưa trang Web đến với nhiều người hơn.(※) (※Ở Twitte có 1 chức năng để giới thiệu thông tin đến với nhiều người hơn.)
Ở xã hội công nghệ thông tin phát triển như ngày nay, lượng thông tin đưa đến người dùng bằng Internet rất lớn, nên nếu 1 lần họ truy cập và không thể vào được thì khó mà quay lại lần thứ 2 Vì vậy, cần làm sao đó vận hành WebSite để hạn chế xuất hiện error 503.
Vậy, tại sao lại sinh ra lỗi 503 này? Chúng ta sẽ cùng xem xét nó dưới phương diện kỹ thuật nhé.
Có 2 nguyên nhân gây ra 503 error.
1. Trong “1 khoảnh khắc” có quá nhiều người truy cập vào trang Web 2. Xét trên mặt cấu tạo trạng Web, do mất rất nhiều thời gian cho đến lúc load xong, nên sẽ xảy ra hiện tượng nhiều người bị “giới hạn quyền truy cập”, nói cách khác là bị “ùn tắc” lại.
◆Nguyên nhân thứ 1
Hầu hết các Rental server đều hạn chế việc nhiều người cùng truy cập vào server cùng lúc. Các công ty server làm điều này để tiến hành hoạt động server 1 cách ổn định. Vậy nên, khi vượt quá giới hạn truy cập trong 1 thời điểm thì các công ty Rental serer sẽ để cho server chặn các try cập đó lại.
◆Nguyên nhân thứ 2
Cũng do cấu tạo của trang Web, đến lúc load xong mất rất nhiều thời gian, nên họ sẽ hạn chế người truy cập. Nói cho cùng, truy cập khi xuất hiện lỗi 503 chính là những truy cập khi WebSite chưa load xong data. Tạm thời, khi WebSite hiển thị thì sẽ không có việc truyền dữ liệu từ server, nên truy cập khi việc load đã xong thì không ảnh hưởng đến số lượng truy cập cùng lúc. (※Tuy nhiên, nếu người dùng lại di chuyển đến 1 WebSite khách thì việc truyền dữ liệu sẽ diễn ra, lúc đó sẽ ảnh hưởng đến số lượng truy cập cùng lúc.) Hãy liên tưởng đến trạm thu phí cao tốc.
Coi những trang Web cấu tạo ổn, không mất nhiều thời gian load data là những Trạm thu phí tự động không người (ETC), những trang Web cấu tạo không tốt, mất nhiều thời gian load data là trạm thu phí có người. Trạm thu phí tự động thì ít khi xảy ra ùn tắc, nhưng trạm thu phí có người thì hay xảy ra, đúng không? Thực tế, tùy vào cấu tạo mà sẽ có 2 loại: “Kiểu ECT” (Những WebSite load data nhanh chóng) và “Kiểu trạm thu phí có người” (Mãi không load xong data). Kiểu “trạm thu phí có người” sẽ phù hợp với những Site chỉ truy cập 1 lần nhưng có thể gọi được nhiều file, chương trình, hoặc các site thường xuyên truy cập vào DB. Một ví dụ khác nổi tiếng, đó là Site được cấu tạo bằng WordPress: Blog System (CMS) CMS mà gọi là WordPress thì sẽ tùy vào truy cập của người dùng mà access vào DB và tự động khởi tạo page. Không chỉ WordPressmà những site tự động khởi tạo page sẽ dễ xảy ra hiện tượng giới hạn truy cập của người dùng, dễ dẫn đến lỗi 503. Để đổi những site đó thành “Kiểu ETC” , có 1 phương pháp sử dụng kĩ thuật mang tên “Cache”, giảm số lần truy cập đến DB. Ví dụ, trường hợp là Site WordPress thì sẽ thêm plugin dùng để cache như 「WP Super Cache」, và sẽ khởi tạo page tĩnh. Ngoài ra, cũng có phương pháp khác, đó là giảm thời gian load data bằng cách giảm số lượng file ảnh sử dụng trên trang Web, giảm dung lượng file ảnh,…
Lỗi 503 không phải là server bị “rớt”
Khi thấy lỗi 503 sẽ có nhiều người nghĩ rằng “Server rớt rồi”, “Server hỏng rồi”, nhưng thật ra lỗi 503 này không phải do server bị lỗi gây ra. Đó chỉ là “Hệ thông tự vệ” của server, để tránh gây gánh nặng cho server khi có quá nhiều truy cập trong 1 lúc nên tạm thời sẽ không cho truy cập. Nghĩa là, dù xảy ra lỗi 503 thì thực tế, server vẫn hoạt động bình thường. Vậy, tại sao Rental server lại phải thiết lập số truy cập cùng lúc, giảm gánh nặng cho server? Đó là vì liên quan nhiều đến Bussiness model của Rental server.
Bussiness Model của Shared server là gì?
Về cơn bản, server hay xảy ra lỗi 503 là “Shared server”. Renal server có 2 plan là Shared server và Dedicated server. Server mà mỗi tháng mất khoảng 500 yên hay 2000 yên là Shared Server. (※Bỏ qua phần liên quan đến server Cloud hay VPS.) Shared server là server sinh ra do từ cách nghĩ “Nhiều người cùng dùng chung 1 server thì sẽ giảm chi phí từng người xuống”. Hay nói cách khác, Server được thiết kế từ quan niệm những người thông thường muốn dùng WebSite 1 cách thoải mái “Nếu có server nào vừa rẻ, vừa có thể dùng nhẹ nhàng thì tốt nhỉ”. Vậy nên, về cơ bản, Shared server không hướng đến những người muốn vận hành 1 WebSite lớn, lượng truy cập nhiều. Và đương nhiên là những WebSite lớn, thu hút đến hàng trăm nghìn, hàng triệu lượt truy cập thì không hề dễ dàng tạo ra chút nào. Tuy nhiên, Tuy nhiên, sự xuất hiện các mạng xã hội như Twitter, Facebook,... làm thay đổi đáng kể tình hình. Có nhiều trường hợp, URL được chia sẻ bằng các mạng xã hội như Twitter, Facebook,... thì sẽ thu hút được khá lớn lượng truy cập trong 1 thời điểm, dù là Website được làm đơn giản, sơ sài. Kể cả những Web site 1 tháng thu hút 1 lượng lớn truy cập, tầm vài trăm nghìn đến vài triệu lượt cũng khó mà có thể kêu gọi 500, 1000 lượt truy cập trong chốc lát. Vậy nên, trước đó chẳng có ai nghĩ rằng, với 1 trang Web level bình thường – tự mình làm sẽ đến 1 ngày có một lượng truy cập khủng trong chốc lát. Đến lúc nó đến rồi thì đó lại trở thành 1 vấn đề. Nói vậy là bởi vì, khi tăng lượng truy cập trong 1 khoảng thời gian ngắn như vậy, phía server sẽ gặp khó khăn trong việc xử lý, ảnh hưởng đến việc hoạt động ổn định của nó. Thêm vào đó, đối với Shared server, chỉ có 1 server nhưng lại nhiều user cùng sử dụng, nên nếu trong 1 lúc những WebSite của người khách cùng sử dụng chung server với mình mà ghi nhận tăng lượng truy cập thì serer đó sẽ lâm vào tình trạng không ổn chút nào. Vậy nên, các công cty Rental sever đã có suy nghĩ như thế này: “Thế này phải giới hạn quyền truy cập cùng lúc thôi...” (Còn nữa)