2012-04-30 19 views
5

Tôi đang làm việc trên ứng dụng Azure Web. Mã biên dịch và chạy tốt trên máy cục bộ của tôi. Nhưng khi tôi tải lên gói trong nền tảng Azure, webrole sẽ không bắt đầu và cung cấp trạng thái bận với thông báo: "Đang chờ vai trò khởi động ... Hệ thống đang khởi tạo. [2012-04-30T09: 19: 08Z]"Webrole không bắt đầu và luôn bận rộn

Cả hai Onstart() và Run() không chứa bất kỳ mã nào. Tôi không chặn sự trở lại của OnStart.

Tuy nhiên tôi đang sử dụng window.setInterval trong javascript. Hàm javascript lấy các giá trị từ Cơ sở dữ liệu sau mỗi 10 giây.

Có thể làm gì để giải quyết vấn đề này?

+0

Bạn đang sử dụng phiên bản nào của công cụ (Visual Studio, .NET, Azure Projects, v.v ...)? Bạn có thể triển khai và bắt đầu một dự án rất đơn giản không? – RickNZ

+0

Không có cách nào là javascript ảnh hưởng đến việc khởi động webrole của bạn. – f0x

+0

@RickNZ Tôi đang sử dụng Visual Studio 2010, với .Net 4.0. Có, tôi có thể triển khai và bắt đầu một dự án thử nghiệm đơn giản. –

Trả lời

9

Trong hầu hết các tình huống khi một Role (Web hay Worker) là khó khăn, tôi đã tìm thấy các bước sau rất hữu ích:

  1. Luôn thêm quyền truy cập RDP vào vai trò của bạn vì trong một số trường hợp khi vai trò bị kẹt, bạn vẫn có khả năng RD P ví dụ của bạn và điều tra vấn đề của chính mình. Trong một số trường hợp, bạn không thể sử dụng RDP cho bản thân vì các dịch vụ phụ thuộc chưa sẵn sàng để cho bạn vào. Vì vậy, nếu bạn đã bật RDP hoặc có thể RDP cho thể hiện của bạn, hãy thử đăng nhập bạn. cho ví dụ của bạn. Nhận địa chỉ IP của máy cục bộ và khởi chạy trực tiếp trong trình duyệt. Trong địa chỉ IP nội bộ bắt đầu từ 10.xxx để bạn có thể mở trình duyệt dựa trên của bạn endpoint cấu hình ví dụ http://10.x.x.x:80 hoặc https://10.x.x.x:443

  2. Nếu bạn không thể nhận được vào các trường hợp trên RDP sau đó đặt cược tốt nhất của bạn là để có được các thông tin chẩn đoán để hiểu được vấn đề có thể ở đâu. Thông tin chẩn đoán được thu thập trong trường hợp của bạn và được gửi đến Azure Storage, được cấu hình bởi bạn trong mã WebRole.cs (trong vai trò Web) hoặc WorkerRole.cs (trong vai trò công việc) của bạn. Khi chẩn đoán đang hoạt động trong vai trò của bạn, bạn có thể thu thập dữ liệu Chẩn đoán tại bộ nhớ Azure Blob/Bảng được định cấu hình của mình để hiểu sự cố.

  3. Nếu bạn không có quyền truy cập RDP và không có bất kỳ chẩn đoán Azure nào được định cấu hình (hoặc không thể nhận bất kỳ dữ liệu chẩn đoán nào để hiểu vấn đề), tốt nhất là liên hệ với nhóm Hỗ trợ Azure (24x7 qua web hoặc điện thoại)) tại liên kết bên dưới và họ sẽ có khả năng truy cập vào cá thể của bạn (với sự cho phép của bạn) và cung cấp cho bạn nguyên nhân gốc rễ.

https://support.microsoft.com/oas/default.aspx?gprid=14928&st=1&wfxredirect=1&sd=gn

Khi liên lạc với Azure hỗ trợ, vui lòng cung cấp ID của bạn đăng ký, triển khai ID, Azure Live ID tài khoản và một mô tả nhỏ của vấn đề của bạn.

3

Hai điều cần kiểm tra:

  1. Hãy chắc chắn rằng bạn chẩn đoán chuỗi kết nối được trỏ đến một tài khoản thực, và không dev lưu trữ
  2. Kiểm tra nhà cung cấp trạng thái phiên trong web.config. Theo mặc định, nó trỏ đến SQL Express LocalDB, không tồn tại trong Windows Azure.
0

Lý do cho điều này tôi chạy vào nhiều nhất là thiếu hoặc lắp ráp không hợp lệ. Nhưng có một số bài viết tuyệt vời có thể giúp giải tán vấn đề này vì vậy tôi sẽ không đi sâu vào vấn đề quá sâu sắc.

http://social.msdn.microsoft.com/Forums/en-US/windowsazuretroubleshooting/thread/6c739db9-4f6a-4203-bbec-eba70733ec16

http://blogs.msdn.com/b/tom/archive/2011/02/25/help-with-windows-azure-role-stuck-in-initializing-busy-stopped-state.aspx

http://blogs.staykov.net/2009/12/windows-azure-role-stuck-in.html

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