2013-03-27 27 views
14

Tôi đã được hỏi câu hỏi này một lần tại cuộc phỏng vấn:làm cách nào để xác định lý do khiến trang web chậm?

"Giả sử bạn sở hữu trang web nơi máy chủ ở một số vị trí ở xa. Một ngày, một số người dùng gọi/email bạn cho rằng trang web chậm quá. Ngoài ra, khi bạn tự kiểm tra trang web như bất kỳ người dùng nào (sử dụng trình duyệt của bạn), trang web hoạt động tốt. "

tôi có thể nghĩ đến một điều duy nhất (mà bị bắn rơi):

  • Kiểm tra các bản ghi máy chủ để phân tích lưu lượng đến. Có thể một cuộc tấn công DoS hoặc lưu lượng truy cập đặc biệt cao. Người phỏng vấn nói với tôi giả sử máy chủ có lưu lượng truy cập bình thường và không có DoS.

Tôi đã lạc mất vì chưa bao giờ nghĩ đến vấn đề này. Tôi gần như không biết làm thế nào để chạy một máy chủ/trang web hoạt động. Vì vậy, nếu ai đó có thể làm nổi bật một số phương pháp tiếp cận, nó sẽ là tốt đẹp.

Trong khi googling xung quanh, tôi có thể tìm thấy only this relevant, wonderful article. Bài viết đó là loại kỹ thuật cho tôi bây giờ, nhưng tôi từ từ phá vỡ nó và hiểu nó.

+0

Nếu bạn có quyền truy cập vào nhật ký máy chủ, bạn có thể phân tích điều đó, nếu không, thì đó không phải là vấn đề của bạn, tôi đã yêu cầu người phỏng vấn làm rõ tình huống và chính xác bạn truy cập máy chủ bao nhiêu, và rồi lên trên. – leppie

+0

@leppie, Cách 'top' giúp đỡ như thế nào? Tôi xin lỗi, câu hỏi ban đầu của tôi đã bỏ qua một chi tiết quan trọng. Vui lòng xem câu hỏi phỏng vấn đã chỉnh sửa. –

+0

Bạn có thể sử dụng nó để xem có vấn đề về cpu, bộ nhớ, tải, vv. – leppie

Trả lời

13

Vì bạn đã nói khi bạn tự kiểm tra tốc độ, điều này có nghĩa là (ít nhất là đối với các trang bạn đã chọn) không có gì sai với máy chủ và nó có thể phục vụ các trang đó ở tốc độ tốt. Những gì bạn nên tìm hiểu tại thời điểm này là sự khác biệt giữa bạn và người dùng báo cáo trang web của bạn chậm. Có thể có rất nhiều điều khác nhau:

  • Người dùng có sử dụng kết nối mạng chậm (ví dụ như điện thoại di động) không?
  • Người dùng có gặp phải sự cố tương tự với các trang web khác được lưu trữ trên cùng một webhoster không? Nếu có, điều này có thể cho biết sự cố mạng. Thông thường điều này cũng có thể chỉ ra một vấn đề tài nguyên tại máy chủ web, nhưng trong trường hợp đó trang web cũng sẽ chậm cho bạn.
  • Nếu không có câu nào ở trên dẫn đến câu trả lời, bạn có thể giả định rằng kết nối với máy chủ và chính máy chủ là tốt. Điều này có nghĩa là sự cố phải nằm trong thiết bị của người dùng. Tìm hiểu trình duyệt/hệ điều hành nào anh ấy sử dụng và cố gắng tái tạo sự cố. Nếu điều đó không tìm ra nếu anh ta sử dụng bất kỳ phần mềm diệt virus hoặc phần mềm tương tự nào có thể gây ra sự cố.
3

Đây là một công cụ tuyệt vời để tìm tốc độ của trang web và cho bạn biết những gì làm cho nó chậm: https://developers.google.com/speed/pagespeed/insights

+0

Cảm ơn câu trả lời của bạn! Công cụ tuyệt vời. Điều gì sẽ đẹp hơn nếu ai đó có thể giải thích cách công cụ đó hoạt động. Trong một cuộc phỏng vấn, tôi không nghĩ rằng tôi có thể nói, _ "Ồ. Tôi có thể sử dụng PageSpeed ​​Insights!" _! –

+0

Thật dễ dàng như bạn có thể tưởng tượng. Nhập URL của trang web của bạn và nhấp vào 'phân tích'. Trong 'Tóm tắt đề xuất', nó cho bạn biết những gì cần phải được cải thiện theo mức độ ưu tiên. Nhấp vào tóm tắt để xem giải thích chi tiết về cách cải thiện. – Ovilia

1

Thông thường người dùng mất thời gian tải trang như một biện pháp để tìm ra rằng trang web này là chậm. Nhưng nếu bạn thực sự muốn biết rằng những gì đang dùng thời gian tối đa, bạn có thể mở trình gỡ rối trình duyệt bằng cách nhấn f12. nếu trình duyệt của bạn là chrome, nhấp vào mạng và xem những gì các cuộc gọi ứng dụng của bạn đang thực hiện và đang dùng thời gian tối đa. Nếu bạn đang sử dụng Firefox, bạn cần phải cài đặt firebug. Nếu bạn có điều đó, sau đó nhấn lại f12 và nhấp vào Net.

+0

Bạn dường như đã hiểu sai câu hỏi, (có thể tôi đã nói nó mơ hồ). Trong trường hợp này, tôi là chủ sở hữu của trang web nơi _some other_ người dùng báo cáo trang web _my_ bị chậm. –

+0

Câu trả lời của bạn thực sự nhắc tôi về một chi tiết khác trong những gì người phỏng vấn hỏi. Vui lòng xem câu hỏi đã chỉnh sửa ngay bây giờ. –

0

Một lý do có thể là vai trò của người dùng khác với vai trò của bạn. Bạn có thể giả sử đặc quyền của quản trị viên (một số thứ như vai trò người dùng siêu) và mã có thể chỉ cho phép mọi thứ cho vai trò đó có nghĩa là nó không thực sự kiểm tra điều kiện để xem những gì được cho phép hay không. Một số lần, đó là một đáng kể hơn trước để có được tất cả các đặc quyền của người sử dụng và có các điều kiện kiểm tra, làm thế nào tất nhiên phụ thuộc vào cách thức thực hiện ủy quyền. Điều đó có nghĩa, trang có thể thực sự chậm đối với các vai trò cụ thể. Do đó, bạn nên tìm hiểu vai trò của người dùng và xem đó có phải là một lý do hay không.

1

Rõ ràng là sự cố với kết nối của người kết nối với trang web của bạn HOẶC có thể đó là vấn đề tạm thời và vào thời điểm bạn kiểm tra trang web của mình, mọi thứ đều dandy. Bạn có thể kiểm tra nhật ký của mình hoặc hỏi máy chủ của mình nếu có sự cố vào thời điểm xảy ra sự cố chậm.

-1

Đây thường là vấn đề về bộ nhớ và nó có thể được giải quyết bằng cách tăng Kích thước Heap của Máy chủ Web lưu trữ ứng dụng. Trong trường hợp ứng dụng đang chạy trên Máy chủ Weblogic. Kích thước heap có thể được tăng lên trong tập tin "setEnv" nằm trong Application Home. Goodluck! Michael Orebe

1

Tôi nghĩ một trong những điều quan trọng bị thiếu từ câu trả lời ở trên là vị trí máy chủ, có thể đóng vai trò quan trọng trong hiệu suất web.

Khi ai đó nói rằng mất nhiều thời gian hơn để mở trang web có nghĩa là độ trễ cao. Độ trễ cao có thể được gây ra do vị trí máy chủ. Giả sử bạn là chủ sở hữu của trang web thì máy chủ và máy khách được đặt cùng vị trí, vì vậy nó sẽ có độ trễ thấp.

Nhưng bây giờ nếu khách hàng ở bên kia biên giới, thời gian chờ sẽ tăng lên đáng kể. Và do đó một sự thuận lợi chậm.

Một yếu tố khác là bộ nhớ đệm ảnh hưởng đáng kể đến thời gian chờ. Lấy ví dụ về facebook, họ có máy chủ trên toàn thế giới để giảm thời gian trễ (và cũng để cung cấp một số lợi thế khác) và họ sử dụng hệ thống bộ nhớ đệm lớn để lưu trữ dữ liệu nóng của họ (chủ đề thịnh hành) trong khi dữ liệu lạnh (dữ liệu cũ) được lưu trữ trong đĩa cứng vì vậy phải mất nhiều thời gian hơn để tải ảnh hoặc bài đăng cũ hơn. Vì vậy, người dùng có thể đã phàn nàn về điều này khi họ đang cố gắng tải lên một số dữ liệu lạnh.

+0

Cảm ơn câu trả lời của bạn! Vâng, bit bộ nhớ đệm có thể là một nguyên nhân khó khăn của sự chậm chạp. –

0

tôi có thể nghĩ đến những vài lý do (lần đầu tiên hai đã được đề cập ở trên):

  1. trễ cao do vị trí của khách hàng
  2. bộ nhớ máy chủ có thể cần phải được tăng
  3. Số cuộc gọi dịch vụ từ trang.
  4. Nếu một dịch vụ có thể ngừng hoạt động tại thời điểm khiếu nại, nó có thể ngăn tải trang.
  5. Tải máy chủ có thể quá cao tại thời điểm trải nghiệm kém. Máy chủ có thể cần tăng tài nguyên (ví dụ: thêm một máy chủ/máy chủ web khác vào cụm).
  6. Kiểm tra xem có bất kỳ công việc nền nào đang chạy trên máy chủ tại thời điểm đó hay không.

Điều quan trọng là kiểm tra nhật ký và lịch biểu của công việc theo lô để xác định tất cả những gì đang chạy tại thời điểm đó.

Hy vọng trợ giúp này.

Các vấn đề liên quan