Tôi đã gặp sự cố này lần thứ hai và tôi tự hỏi liệu có giải pháp nào cho vấn đề này hay không. Tôi đang chạy một ứng dụng trên Google App Engine dựa trên việc liên lạc thường xuyên với một trang web thông qua HTTP JSON RPC. Dường như GAE có xu hướng một cách ngẫu nhiên hiển thị một thông điệp như thế này trong các bản ghi:GAE Go - "Yêu cầu này gây ra một quá trình mới để bắt đầu cho ứng dụng của bạn ..."
"Yêu cầu này gây ra một quá trình mới được bắt đầu cho ứng dụng của bạn, và do đó gây ra mã ứng dụng của bạn được nạp cho lần đầu tiên. Yêu cầu này có thể mất nhiều thời gian hơn và sử dụng nhiều CPU hơn yêu cầu điển hình cho đơn đăng ký của bạn. "
Và đặt lại tất cả các biến được lưu trữ trong RAM mà không cảnh báo. Quá trình tương tự xảy ra hơn và hơn bất kể có bao nhiêu lần tôi đặt lại các biến hoặc tải lên mã mới hơn lên GAE, mặc dù việc tăng số phiên bản ứng dụng dường như giải quyết được vấn đề.
Làm cách nào để có thêm thông tin về hành vi này, cách tránh và ngăn chặn mất dữ liệu các ứng dụng Golang của tôi trên Google App Engine?
EDIT:
Các biến được lưu trữ trong RAM có các lớp học nhỏ của chuỗi, byte, bools và con trỏ. Không có gì quá phức tạp hoặc lớn.
Công cụ ứng dụng của Google dường như "bắt đầu một quy trình mới" trong vài giây sử dụng nặng hơn, không đủ thời gian để ứng dụng bị tắt do không được sử dụng. Khoảng thời gian giữa các ứng dụng được tải lên GAE, có bộ biến của nó và một quá trình mới được tạo ra chưa đầy một phút.
Bạn có thể làm rõ về bản chất của các biến được lưu trữ trong RAM không? Bạn có thể cache dữ liệu đó trong Memcache không? – kristianp