builtins: - deferred: on - appstats: on8 là mã viết tắt mà Google chỉ định dựa trên khu vực bạn chọn khi tạo ứng dụng của mình. Mã này không tương ứng với một quốc gia hoặc tỉnh, mặc dù một số ID khu vực có thể trông giống với mã quốc gia và tỉnh thường được sử dụng. Đối với các ứng dụng được tạo sau tháng 2 năm 2020, builtins: - deferred: on - appstats: on9 được bao gồm trong URL của Máy ứng dụng. Đối với các ứng dụng hiện có được tạo trước ngày này, ID khu vực là tùy chọn trong URL Tìm hiểu thêm VÂNG Bạn định cấu hình cài đặt ứng dụng App Engine của mình trong tệp builtins: - name: on0. Tệp này chỉ định cách đường dẫn URL tương ứng với trình xử lý yêu cầu và tệp tĩnh. Tệp builtins: - name: on0 cũng chứa thông tin về mã ứng dụng của bạn, chẳng hạn như thời gian chạy và số nhận dạng phiên bản mới nhất Mỗi dịch vụ trong ứng dụng của bạn có tệp builtins: - name: on0 riêng, tệp này hoạt động như một bộ mô tả cho việc triển khai của nó. Trước tiên, bạn phải tạo tệp builtins: - name: on0 cho dịch vụ builtins: - name: on4 trước khi có thể tạo và triển khai tệp builtins: - name: on0 cho các dịch vụ bổ sung trong ứng dụng của mình Cấu trúc thư mụcĐể tìm hiểu thêm về cấu trúc nhiều dịch vụ trong ứng dụng của bạn, hãy xem Cấu trúc dịch vụ web trong App EngineThí dụSau đây là một ví dụ về tệp builtins: - name: on0 cho ứng dụng Python 2 runtime: python27 api_version: 1 threadsafe: true handlers: - url: / script: home.app - url: /index\.html script: home.app - url: /stylesheets static_dir: stylesheets - url: /(.*\.(gif|png|jpg))$ static_files: static/\1 upload: static/.*\.(gif|png|jpg)$ - url: /admin/.* script: admin.app login: admin - url: /.* script: not_found.app Lệnh builtins: - name: on7 có thể chứa đường dẫn tệp kết thúc bằng builtins: - name: on8, có nghĩa là tập lệnh sử dụng CGI hoặc đường dẫn mô-đun Python, với các tên gói được phân tách bằng dấu chấm, có nghĩa là tập lệnh sử dụng WSGI cú phápCú pháp của builtins: - name: on0 là định dạng YAML Định dạng YAML hỗ trợ bình luận. Dòng bắt đầu bằng ký tự thăng ( includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/0) bị bỏ qua
Các mẫu đường dẫn tệp và URL sử dụng cú pháp biểu thức chính quy mở rộng POSIX, không bao gồm các phần tử đối chiếu và các lớp đối chiếu. Tham chiếu ngược đến các đối sánh được nhóm (e. g. includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/1) được hỗ trợ, cũng như các tiện ích mở rộng Perl này. includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/2 Thời gian chạy và các yếu tố ứng dụngYếu tốMô tảincludes: - $PYTHON_LIB/google/appengine/ext/builtins/name/3Cảnh báo. Phần tử includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/3 ngoài việc sử dụng công cụ includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/5 đã bị tắt. Xem hướng dẫn sau để chỉ định ứng dụng của bạn bằng công cụ Google Cloud CLI, chẳng hạn như dòng lệnh includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/6 Phương pháp được đề xuất là xóa phần tử includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/3 khỏi tệp builtins: - name: on0 của bạn và thay vào đó, hãy sử dụng cờ dòng lệnh để chỉ định ID ứng dụng của bạn
Để biết thêm thông tin về cách sử dụng các lệnh này, hãy xem Triển khai ứng dụng của bạn ID ứng dụng là ID dự án bảng điều khiển Google Cloud mà bạn đã chỉ định khi tạo ứng dụng trong bảng điều khiển Google Cloud handlers: - url: /.* script: main.app builtins: - appstats: on1 Yêu cầu. Phiên bản API trong môi trường thời gian chạy nhất định được ứng dụng của bạn sử dụng lĩnh vực này là Khi Google thông báo hỗ trợ phiên bản mới của API của môi trường thời gian chạy, ứng dụng đã triển khai của bạn sẽ tiếp tục sử dụng phiên bản được viết cho nó. Để nâng cấp ứng dụng của bạn lên phiên bản API mới, bạn thay đổi giá trị này rồi triển khai lại ứng dụng của mình sang App Engine. Khi bạn chỉ định giá trị handlers: - url: /.* script: main.app builtins: - appstats: on2, môi trường thời gian chạy mới nhất được hỗ trợ sẽ được sử dụng mỗi khi bạn triển khai ứng dụng đó (hiện tại) Tại thời điểm này, App Engine có một phiên bản của môi trường thời gian chạy handlers: - url: /.* script: main.app builtins: - appstats: on3. handlers: - url: /.* script: main.app builtins: - appstats: on2 handlers: - url: /.* script: main.app builtins: - appstats: on5Tùy chọn. Nếu bạn là , bạn có thể thay đổi phương thức được sử dụng bằng cách đặt chính sách ID tự động. Sau đây là các tùy chọn hợp lệ. builtins: - name: on4Mặc định. Sử dụng ID tự động phân tán là số nguyên lớn được phân phối tốt, đủ nhỏ để được biểu thị bằng số float 64 bit. handlers: - url: /.* script: main.app builtins: - appstats: on7Tùy chọn kế thừa sẽ không được dùng trong bản phát hành trong tương lai và cuối cùng sẽ bị xóa. Để biết thêm thông tin, hãy xem bài đăng trên blog thông báo thay đổi này. handlers: - url: /.* script: main.app builtins: - appstats: on8 Không bắt buộc. SDK Python 2 bao gồm một số trình xử lý tích hợp cho các chức năng ứng dụng phổ biến. Chỉ thị handlers: - url: /.* script: main.app builtins: - appstats: on8 cho phép bạn bao gồm các trình xử lý cụ thể trong builtins: - name: on0 lĩnh vực này là Các trình xử lý tích hợp sau đây có sẵn để bạn sử dụng [/_ah/stats, /.*]1Bật Appstats tại [/_ah/stats, /.*]2, mà bạn có thể sử dụng để đo hiệu suất ứng dụng của mình. Để sử dụng Appstats, bạn cũng cần phải. [/_ah/stats, /.*]3Bật trình xử lý hoãn lại tại [/_ah/stats, /.*]4. Nội dung dựng sẵn này cho phép các nhà phát triển sử dụng [/_ah/stats, /.*]5 để đơn giản hóa việc tạo các tác vụ trong Hàng đợi tác vụ. [/_ah/stats, /.*]6Bật bản dựng sẵn tại [/_ah/stats, /.*]8. Nội dung dựng sẵn này cho phép các ứng dụng từ xa có thông tin xác thực phù hợp truy cập kho dữ liệu từ xa. Thí dụ. builtins: - deferred: on - appstats: on Chỉ thị handlers: - url: /.* script: main.app builtins: - appstats: on8 là một ví dụ đặc biệt của chỉ thị includes: - included.yaml0. Mỗi lệnh includes: - included.yaml1 tương đương, trong Python, với lệnh includes: - included.yaml0 với đường dẫn mở rộng. Ví dụ builtins: - name: on Tương đương với includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/ Khi bạn sử dụng handlers: - url: /.* script: main.app builtins: - appstats: on8 trong tệp builtins: - name: on0 của mình, bất kỳ trình xử lý nào được xác định bởi tệp includes: - included.yaml5 tích hợp sẽ thay thế bất kỳ trình xử lý nào bạn xác định trong tệp builtins: - name: on0 của mình. Tuy nhiên, nếu bạn bao gồm một tệp mà sau đó sử dụng handlers: - url: /.* script: main.app builtins: - appstats: on8 hoặc includes: - included.yaml0, thì các trình xử lý sẽ được thêm vào theo thứ tự của hệ thống phân cấp bao gồm. Nói cách khác, các trình xử lý của bao gồm "cha mẹ" được thêm vào trước các nội trang của "con" bao gồm, v.v. Ví dụ: hãy xem xét builtins: - name: on0 sau đây, sử dụng trình xử lý [/_ah/stats, /.*]1 tích hợp sẵn handlers: - url: /.* script: main.app builtins: - appstats: on Danh sách xử lý kết quả là [/_ah/stats, /.*] Nếu builtins: - name: on0 sử dụng chỉ thị includes: - included.yaml0 includes: - included.yaml Và tệp handlers: - url: /.* script: main.app builtins: - appstats: on3 sử dụng handlers: - url: /.* script: main.app builtins: - appstats: on8 handlers: - url: /.* script: main.app builtins: - appstats: on Danh sách xử lý kết quả bây giờ là 0Thứ tự đặt mệnh đề handlers: - url: /.* script: main.app builtins: - appstats: on8 trong tệp handlers: - url: /.* script: main.app builtins: - appstats: on6 không thay đổi hành vi handlers: - url: /.* script: main.app builtins: - appstats: on7 Không bắt buộc. Đặt khoảng thời gian bộ nhớ cache mặc định chung cho tất cả các trình xử lý tệp tĩnh cho một ứng dụng. Bạn cũng có thể cấu hình một. Giá trị là một chuỗi các số và đơn vị, được phân tách bằng dấu cách, trong đó đơn vị có thể là d cho ngày, h cho giờ, m cho phút và s cho giây. Ví dụ: handlers: - url: /.* script: main.app builtins: - appstats: on8 đặt hết hạn bộ đệm thành 4 ngày và 5 giờ sau khi tệp được yêu cầu lần đầu. Nếu bỏ qua, máy chủ sản xuất sẽ đặt thời gian hết hạn là 10 phútThí dụ. 1Để biết thêm thông tin, xem handlers: - url: /.* script: main.app builtins: - appstats: on9 Không bắt buộc. Bạn có thể xác định các biến môi trường trong tệp builtins: - name: on0 của mình để cung cấp chúng cho ứng dụng của bạn. Đảm bảo rằng khóa trong (các) Biến môi trường khớp với biểu thức '[a-zA-Z_][a-zA-Z0-9_]*' (bắt đầu bằng bảng chữ cái hoặc "_", theo sau là bất kỳ chữ và số hoặc "_") Các biến môi trường có tiền tố là 01 được dành riêng cho việc sử dụng hệ thống và không được phép trong tệp builtins: - name: on0Các biến này sẽ có sẵn trong từ điển 03. 2______14_______04Không bắt buộc. Được sử dụng để định cấu hình các trang lỗi tùy chỉnh được trả về cho các loại lỗi khác nhau Phần tử này có thể chứa các phần tử sau 05Tùy chọn. 05 có thể là một trong những điều sau đây. 07Cho biết ứng dụng đã vượt quá hạn ngạch tài nguyên 08Đã phục vụ nếu đến thời hạn trước khi có phản hồi từ ứng dụng của bạnError_code là tùy chọn; 09Mỗi mục nhập tệp cho biết một tệp tĩnh sẽ được cung cấp thay cho phản hồi lỗi chung. Nếu bạn chỉ định phần tử 09 mà không có phần tử 05 tương ứng, thì tệp tĩnh sẽ là trang lỗi mặc định cho ứng dụng của bạn. Cảnh báo. Đảm bảo rằng đường dẫn đến tệp phản hồi lỗi không trùng lặp với đường dẫn trình xử lý tệp tĩnh. Dữ liệu lỗi tùy chỉnh phải nhỏ hơn 10 kilobyte. Ví dụ 3 12Yêu cầu. Danh sách các mẫu URL và mô tả về cách xử lý chúng. Máy ứng dụng có thể xử lý các URL bằng cách thực thi mã ứng dụng hoặc bằng cách cung cấp các tệp tĩnh được tải lên cùng với mã, chẳng hạn như hình ảnh, CSS hoặc JavaScript includes: - included.yaml0 Không bắt buộc. Chỉ thị includes: - included.yaml0 cho phép bạn bao gồm tệp cấu hình cho bất kỳ thư viện hoặc dịch vụ nào trong ứng dụng của bạn. Ví dụ: bạn có thể bao gồm thư viện quản trị người dùng như sau 4Máy ứng dụng giải quyết đường dẫn được bao gồm theo thứ tự sau
Nếu lệnh 15 chỉ định một thư mục, thì App Engine sẽ tìm trong thư mục đó một tệp có tên là includes: - included.yaml5. Nếu lệnh bao gồm là một tệp, thì tệp cụ thể đó được bao gồm. Sử dụng includes: - included.yaml0 chỉ truy xuất các loại lệnh sau từ tệp đích (nếu có) Các mẫu bao gồm 21 được thêm vào các mẫu bao gồm trong builtins: - name: on0 hoặc vào danh sách mặc định nếu không có danh sách rõ ràng trong builtins: - name: on0. Lưu ý rằng 21 so sánh các đường dẫn tuyệt đối 26Không bắt buộc. Các ứng dụng phải kích hoạt các dịch vụ đó trước khi có thể nhận các yêu cầu gửi đến. Bạn có thể kích hoạt dịch vụ cho ứng dụng Python 2 bằng cách bao gồm phần 26 trong tệp builtins: - name: on0 Các dịch vụ trong nước sau đây có sẵn 29Cho phép ứng dụng của bạn nhận thư. 30Bật yêu cầu khởi động. Xem Cấu hình yêu cầu khởi động. Thí dụ. 5 31Không bắt buộc. cho dịch vụ này Các giá trị sau khả dụng tùy thuộc vào dịch vụ của bạn Tự động điều chỉnh tỷ lệ 32, 33, 34, 35Mặc định. 32Tùy chọn sử dụng phần tử để thay đổi cài đặt mặc định cho tự động thay đổi quy mô, chẳng hạn như số lượng phiên bản tối thiểu và tối đa, độ trễ và kết nối đồng thời Ghi chú. Nếu 31 được đặt thành 33 trở lên, bạn có thể tối ưu hóa các phiên bản của mình bằng cách đặt thành giá trị cao hơn giá trị mặc định là 10. Để xác định giá trị tối ưu, hãy tăng dần giá trị đó và theo dõi hiệu suất của ứng dụng của bạnChia tỷ lệ cơ bản và thủ công_______14_______41, 42, 43, 44, 45Mặc định. 42Các lớp thể hiện cơ bản và thủ công yêu cầu bạn chỉ định phần tử hoặc phần tử 49Không bắt buộc. Trăn 2. 7 bao gồm một số thư viện của bên thứ ba. Một số trong số này có sẵn theo mặc định; . Bạn có thể chỉ định phiên bản nào bạn muốn sử dụng bằng cách chỉ định các giá trị 50 và 51lĩnh vực này là 6Lưu ý rằng khi bạn chỉ định 52, SDK sẽ xác định phiên bản thư viện mới nhất tại thời điểm triển khai. Sau khi triển khai, phiên bản thư viện sẽ không thay đổi. Cách duy nhất để có phiên bản khác của thư viện là triển khai lạiNếu bạn đang phát triển một ứng dụng chưa có người dùng. bạn không cần phải theo dõi các phiên bản mới. Nhưng nếu ứng dụng của bạn đang được sử dụng tích cực, hãy cẩn thận. bạn có thể ngạc nhiên khi ứng dụng của bạn bắt đầu sử dụng phiên bản thư viện không tương thích ngược mới Để biết danh sách các thư viện bên thứ ba đi kèm, hãy xem Thư viện bên thứ ba. Bạn có thể sử dụng các thư viện bên thứ ba thuần python bổ sung bằng cách Nếu bạn đang sử dụng môi trường linh hoạt, hãy xem Sử dụng thư viện Python trong môi trường linh hoạt 53Ghi chú. Các mô-đun hiện được đặt tên là Dịch vụ Để quản lý ứng dụng của bạn bằng gcloud CLI, hãy sử dụng phần tử thay thế 54Yêu cầu. Tên của môi trường thời gian chạy được ứng dụng của bạn sử dụng. Ví dụ: để chỉ định Python 2. 7, sử dụng 7_______14_______55Dịch vụ trước đây được gọi là Mô-đun Ví dụ, chỉ được hỗ trợ bởi các plugin dựa trên gcloud CLI hoặc gcloud CLI. includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/9 Bắt buộc nếu tạo dịch vụ. Tùy chọn cho dịch vụ builtins: - name: on4. Mỗi dịch vụ và mỗi phiên bản phải có tên. Tên có thể chứa số, chữ cái và dấu gạch ngang. Độ dài kết hợp của 58, trong đó 59 là tên phiên bản của bạn, 60 là tên dịch vụ của bạn và 61 là ID dự án của bạn, không được dài hơn 63 ký tự và không được bắt đầu hoặc kết thúc bằng dấu gạch nối. Chọn một tên duy nhất cho từng dịch vụ và từng phiên bản. Không sử dụng lại tên giữa các dịch vụ và phiên bảnThí dụ. 8Ghi chú. Lệnh includes: - $PYTHON_LIB/google/appengine/ext/builtins/name/9 tương thích ngược và hỗ trợ các tệp builtins: - name: on0 hiện có bao gồm các dịch vụ được khai báo dưới dạng mô-đun, chẳng hạn 9 64Không bắt buộc. Phần tử 64 cho phép bạn chỉ định tài khoản dịch vụ do người dùng quản lý làm thông tin nhận dạng cho phiên bản. Tài khoản dịch vụ được chỉ định sẽ được sử dụng khi truy cập các dịch vụ Google Cloud khác và thực hiện các tác vụThí dụ. gcloud app deploy --project [YOUR_PROJECT_ID]0 21Không bắt buộc. Phần tử 21 chỉ định tệp nào trong thư mục ứng dụng sẽ không được tải lên App Engine. Giá trị là một biểu thức chính quy hoặc một danh sách các biểu thức chính quy. Bất kỳ tên tệp nào khớp với bất kỳ biểu thức chính quy nào sẽ bị loại khỏi danh sách tệp sẽ tải lên khi ứng dụng được tải lên. Tên tệp có liên quan đến thư mục dự án 21 có mặc định saugcloud app deploy --project [YOUR_PROJECT_ID]1 Mẫu mặc định loại trừ các tệp sao lưu Emacs có tên dạng 69 và 70, tệp 71 và 72, tệp trong thư mục kiểm soát sửa đổi 73 và tệp ẩn Unix có tên bắt đầu bằng dấu chấm ( 74)Để mở rộng danh sách biểu thức chính quy ở trên, hãy sao chép và dán danh sách trên vào builtins: - name: on0 của bạn và thêm biểu thức chính quy của riêng bạn. Ví dụ: để bỏ qua các tệp có tên kết thúc bằng 76 ngoài các mẫu mặc định, hãy thêm một mục nhập như thế này cho 21gcloud app deploy --project [YOUR_PROJECT_ID]2 Để bỏ qua một thư mục đầy đủ, hãy thêm tên thư mục vào danh sách. Ví dụ: để bỏ qua thư mục có tên 78, hãy thêm dòng sau vào các thư mục được mô tả trước đógcloud app deploy --project [YOUR_PROJECT_ID]3 79Yêu cầu. Định cấu hình ứng dụng của bạn để sử dụng các yêu cầu đồng thời. Nếu sử dụng thư viện luồng của Python, dữ liệu luồng cục bộ, như được trả về bởi 80, sẽ bị xóa sau mỗi yêu cầulĩnh vực này là gcloud app deploy --project [YOUR_PROJECT_ID]4 Ghi chú. Chỉ thị 79 là bắt buộc đối với Python 2. 7 ứng dụng. 82 yêu cầu tất cả các trình xử lý tập lệnh phải là WSGI. Nghĩa là, mỗi tập lệnh phải được chỉ định trong một chỉ thị builtins: - name: on7 sử dụng đường dẫn mô-đun Python, với các tên gói được phân tách bằng dấu chấm. Thành phần cuối cùng của lệnh builtins: - name: on7 sử dụng đường dẫn mô-đun Python là tên của một biến toàn cục trong biến đó phải là một ứng dụng WSGI và thường được gọi là 86 theo quy ước 51Phương pháp được khuyến nghị là xóa phần tử 51 khỏi tệp builtins: - name: on0 của bạn và thay vào đó, hãy sử dụng cờ dòng lệnh để chỉ định ID phiên bản của bạn
Để biết thêm thông tin về cách sử dụng lệnh này, hãy xem Triển khai ứng dụng của bạn Mã định danh cho phiên bản mã ứng dụng mà bạn triển khai cho App Engine ID phiên bản có thể chứa chữ thường, chữ số và dấu gạch nối. Nó không thể bắt đầu bằng tiền tố 92 và các tên builtins: - name: on4 và 52 được bảo lưu và không thể sử dụngGhi chú. Tên phiên bản phải bắt đầu bằng một chữ cái, để phân biệt chúng với các phiên bản số luôn được chỉ định bởi một số. Điều này tránh sự mơ hồ với các URL như 95, có thể được diễn giải theo hai cách. Nếu phiên bản "123" tồn tại, mục tiêu sẽ là phiên bản "123" của dịch vụ nhất định. Nếu phiên bản đó không tồn tại, mục tiêu sẽ là phiên bản số 123 của phiên bản dịch vụ mặc địnhMỗi phiên bản của một ứng dụng giữ lại bản sao của riêng nó builtins: - name: on0. Khi một ứng dụng được tải lên, phiên bản được đề cập trong tệp builtins: - name: on0 đang được tải lên là phiên bản được tạo hoặc thay thế bởi bản tải lên. Quản trị viên có thể thay đổi phiên bản nào của ứng dụng đang phân phát lưu lượng truy cập bằng cách sử dụng bảng điều khiển Google Cloud và cũng có thể kiểm tra các phiên bản khác trước khi định cấu hình chúng để nhận lưu lượng truy cập 98Không bắt buộc. Định cấu hình ứng dụng của bạn để sử dụng trình kết nối Truy cập VPC không máy chủ, cho phép ứng dụng gửi yêu cầu đến tài nguyên nội bộ trong mạng VPC của bạn. Để biết thêm thông tin, hãy xem Kết nối với mạng VPC 50Chuỗi ký tự. Chỉ định tên đủ điều kiện của trình kết nối Truy cập VPC không máy chủ của bạn trong dấu ngoặc kép. gcloud app deploy --project [YOUR_PROJECT_ID]6 gcloud app deploy --project [YOUR_PROJECT_ID]00Tùy chọn. Mặc định là gcloud app deploy --project [YOUR_PROJECT_ID]01. gcloud app deploy --project [YOUR_PROJECT_ID]00 có thể là một trong những điều sau đây. gcloud app deploy --project [YOUR_PROJECT_ID]01Mặc định. Các yêu cầu đối với địa chỉ IP nội bộ được gửi qua trình kết nối Truy cập VPC không máy chủ vào mạng VPC được kết nối. Yêu cầu đến địa chỉ IP bên ngoài được gửi đến internet công cộng. gcloud app deploy --project [YOUR_PROJECT_ID]04Tất cả các yêu cầu được gửi qua trình kết nối Truy cập VPC không máy chủ vào mạng VPC được kết nối. Ví dụ gcloud app deploy --project [YOUR_PROJECT_ID]7 yếu tố xử lýPhần tử 12 là phần tử bắt buộc trong tệp cấu hình builtins: - name: on0. Phần tử cung cấp danh sách các mẫu URL và mô tả về cách xử lý chúng. Máy ứng dụng có thể xử lý các URL bằng cách thực thi mã ứng dụng hoặc bằng cách cung cấp các tệp tĩnh được tải lên cùng với mã, chẳng hạn như hình ảnh, CSS hoặc JavaScript Các mẫu được đánh giá theo thứ tự chúng xuất hiện trong tệp builtins: - name: on0, từ trên xuống dưới. Ánh xạ đầu tiên có mẫu khớp với URL là ánh xạ được sử dụng để xử lý yêu cầu Bảng sau đây liệt kê các phần tử con của phần tử 12 kiểm soát hành vi đối với tập lệnh, tệp tĩnh, thư mục tĩnh và các cài đặt khácThành phầnMô tảgcloud app deploy --project [YOUR_PROJECT_ID]09Tùy chọn. Boolean. Theo mặc định, các tệp được khai báo trong trình xử lý tệp tĩnh được tải lên dưới dạng dữ liệu tĩnh và chỉ được cung cấp cho người dùng cuối. Chúng không thể được đọc bởi một ứng dụng. Nếu trường này được đặt thành true, các tệp cũng được tải lên dưới dạng dữ liệu mã để ứng dụng của bạn có thể đọc chúng. Cả hai lần tải lên đều bị tính phí đối với mã và dung lượng lưu trữ dữ liệu tĩnh của bạn lĩnh vực này là gcloud app deploy --project [YOUR_PROJECT_ID]10Tùy chọn. Khoảng thời gian một tệp tĩnh do trình xử lý này cung cấp sẽ được lưu vào bộ nhớ đệm bởi các trình duyệt và proxy web. Giá trị là một chuỗi các số và đơn vị, được phân tách bằng dấu cách, trong đó đơn vị có thể là gcloud app deploy --project [YOUR_PROJECT_ID]11 cho ngày, gcloud app deploy --project [YOUR_PROJECT_ID]12 cho giờ, gcloud app deploy --project [YOUR_PROJECT_ID]13 cho phút và gcloud app deploy --project [YOUR_PROJECT_ID]14 cho giây. Ví dụ: handlers: - url: /.* script: main.app builtins: - appstats: on8 đặt hết hạn bộ đệm thành 4 ngày và 5 giờ sau khi tệp được yêu cầu lần đầu. Nếu bị bỏ qua, ứng dụng handlers: - url: /.* script: main.app builtins: - appstats: on7 được sử dụng. Xem để biết thêm chi tiết. gcloud app deploy --project [YOUR_PROJECT_ID]17 Không bắt buộc. Bạn có thể đặt tiêu đề HTTP cho phản hồi của trình xử lý thư mục hoặc tệp tĩnh của mình. Nếu bạn cần đặt tiêu đề HTTP trong trình xử lý gcloud app deploy --project [YOUR_PROJECT_ID]18 của mình, thay vào đó, bạn nên làm điều đó trong mã ứng dụng của mình. Để biết thông tin về tiêu đề phản hồi nào ảnh hưởng đến bộ nhớ đệm, hãy xemVí dụ gcloud app deploy --project [YOUR_PROJECT_ID]8 Hỗ trợ CORSMột ứng dụng quan trọng của tính năng này là hỗ trợ chia sẻ tài nguyên trên nhiều nguồn gốc (CORS), chẳng hạn như truy cập các tệp được lưu trữ bởi một ứng dụng App Engine khác Ví dụ: bạn có thể có ứng dụng trò chơi gcloud app deploy --project [YOUR_PROJECT_ID]19 truy cập nội dung được lưu trữ bởi gcloud app deploy --project [YOUR_PROJECT_ID]20. Tuy nhiên, nếu gcloud app deploy --project [YOUR_PROJECT_ID]21 cố gắng tạo JavaScript gcloud app deploy --project [YOUR_PROJECT_ID]22 thành gcloud app deploy --project [YOUR_PROJECT_ID]23, nó sẽ không thành công trừ khi trình xử lý cho gcloud app deploy --project [YOUR_PROJECT_ID]23 trả về tiêu đề phản hồi gcloud app deploy --project [YOUR_PROJECT_ID]25 chứa giá trị gcloud app deploy --project [YOUR_PROJECT_ID]26 Đây là cách bạn sẽ làm cho trình xử lý tệp tĩnh của mình trả về giá trị tiêu đề phản hồi được yêu cầu đó gcloud app deploy --project [YOUR_PROJECT_ID]9 Ghi chú. nếu bạn muốn cho phép mọi người truy cập nội dung của mình, bạn có thể sử dụng ký tự đại diện gcloud app deploy --project [YOUR_PROJECT_ID]27, thay vì gcloud app deploy --project [YOUR_PROJECT_ID]28 gcloud app deploy --project [YOUR_PROJECT_ID]29 Không bắt buộc. Nếu được chỉ định, tất cả các tệp do trình xử lý này cung cấp sẽ được cung cấp bằng loại MIME đã chỉ định. Nếu không được chỉ định, loại MIME cho tệp sẽ được lấy từ phần mở rộng tên tệp của tệp. Nếu cùng một tệp được tải lên với nhiều tiện ích mở rộng, thì tiện ích mở rộng kết quả có thể phụ thuộc vào thứ tự tải lên xảy ra Để biết thêm thông tin về các loại phương tiện MIME có thể có, hãy xem trang web Các loại phương tiện MIME của IANA gcloud app deploy --project [YOUR_PROJECT_ID]30 Không bắt buộc. gcloud app deploy --project [YOUR_PROJECT_ID]30 được sử dụng với cài đặt gcloud app deploy --project [YOUR_PROJECT_ID]32 để đặt mã phản hồi HTTP được trả về khi thực hiện chuyển hướng theo yêu cầu của cách cấu hình cài đặt gcloud app deploy --project [YOUR_PROJECT_ID]32. Phần tử gcloud app deploy --project [YOUR_PROJECT_ID]30 có các giá trị có thể có sau đây gcloud app deploy --project [YOUR_PROJECT_ID]35Đã di chuyển Mã phản hồi vĩnh viễn. gcloud app deploy --project [YOUR_PROJECT_ID]36Đã tìm thấy mã phản hồi. gcloud app deploy --project [YOUR_PROJECT_ID]37Xem mã phản hồi khác. gcloud app deploy --project [YOUR_PROJECT_ID]38Mã phản hồi chuyển hướng tạm thời. Ví dụ builtins: - deferred: on - appstats: on0 Khi yêu cầu của người dùng được chuyển hướng, mã trạng thái HTTP sẽ được đặt thành giá trị của tham số gcloud app deploy --project [YOUR_PROJECT_ID]30. Nếu không có tham số, 302 sẽ được trả về gcloud app deploy --project [YOUR_PROJECT_ID]18 Không bắt buộc. Chỉ định đường dẫn đến tập lệnh từ thư mục gốc của ứng dụng builtins: - deferred: on - appstats: on1 Chỉ thị builtins: - name: on7 phải là đường dẫn nhập python, ví dụ: gcloud app deploy --project [YOUR_PROJECT_ID]42 trỏ đến ứng dụng WSGI. Thành phần cuối cùng của lệnh builtins: - name: on7 sử dụng đường dẫn mô-đun Python là tên của một biến toàn cục trong mô-đun. biến đó phải là một ứng dụng WSGI và thường được gọi là 86 theo quy ướcGhi chú. giống như đối với câu lệnh gcloud app deploy --project [YOUR_PROJECT_ID]45 của Python, mỗi thư mục con là một gói phải chứa một tệp có tên Trong thời gian chạy App Engine mới hơn, gcloud app deploy --project [YOUR_PROJECT_ID]32Tùy chọn. Bất kỳ trình xử lý URL nào cũng có thể sử dụng cài đặt gcloud app deploy --project [YOUR_PROJECT_ID]32, bao gồm trình xử lý tập lệnh và trình xử lý tệp tĩnh. Phần tử gcloud app deploy --project [YOUR_PROJECT_ID]32 có các giá trị có thể có sau đây. gcloud app deploy --project [YOUR_PROJECT_ID]50Cả hai yêu cầu HTTP và HTTPS có URL phù hợp với trình xử lý đều thành công mà không cần chuyển hướng. Ứng dụng có thể kiểm tra yêu cầu để xác định giao thức nào đã được sử dụng và phản hồi tương ứng. Đây là giá trị mặc định khi gcloud app deploy --project [YOUR_PROJECT_ID]32 không được cung cấp cho trình xử lý. gcloud app deploy --project [YOUR_PROJECT_ID]52Các yêu cầu về URL phù hợp với trình xử lý sử dụng HTTPS này sẽ tự động được chuyển hướng đến URL tương đương HTTP. Khi yêu cầu HTTPS của người dùng được chuyển hướng thành yêu cầu HTTP, các tham số truy vấn sẽ bị xóa khỏi yêu cầu. Điều này ngăn người dùng vô tình gửi dữ liệu truy vấn qua kết nối không an toàn dành cho kết nối an toàn. gcloud app deploy --project [YOUR_PROJECT_ID]53Yêu cầu URL phù hợp với trình xử lý này không sử dụng HTTPS sẽ tự động được chuyển hướng đến URL HTTPS có cùng đường dẫn. Tham số truy vấn được giữ nguyên cho chuyển hướng. Ví dụ builtins: - deferred: on - appstats: on2 Máy chủ web phát triển không hỗ trợ kết nối HTTPS. Nó bỏ qua tham số gcloud app deploy --project [YOUR_PROJECT_ID]32, vì vậy các đường dẫn dành cho sử dụng với HTTPS có thể được kiểm tra bằng các kết nối HTTP thông thường đến máy chủ web phát triển Để nhắm mục tiêu một phiên bản ứng dụng cụ thể của bạn bằng cách sử dụng miền gcloud app deploy --project [YOUR_PROJECT_ID]55, bạn thay thế các dấu chấm thường phân tách các thành phần miền phụ của URL bằng chuỗi " gcloud app deploy --project [YOUR_PROJECT_ID]56", chẳng hạn gcloud app deploy --project [YOUR_PROJECT_ID]57 Để sử dụng miền tùy chỉnh với HTTPS, trước tiên bạn phải kích hoạt và định cấu hình chứng chỉ SSL cho miền đó Đăng nhập và đăng xuất Tài khoản Google luôn được thực hiện bằng kết nối an toàn, không liên quan đến cách cấu hình URL của ứng dụng gcloud app deploy --project [YOUR_PROJECT_ID]58 Không bắt buộc. Đường dẫn đến thư mục chứa các tệp tĩnh, từ thư mục gốc của ứng dụng. Mọi thứ sau khi kết thúc mẫu gcloud app deploy --project [YOUR_PROJECT_ID]59 phù hợp được thêm vào gcloud app deploy --project [YOUR_PROJECT_ID]58 để tạo thành đường dẫn đầy đủ đến tệp được yêu cầu Mỗi tệp trong thư mục tĩnh được cung cấp bằng loại MIME tương ứng với phần mở rộng tên tệp của nó trừ khi bị ghi đè bởi cài đặt gcloud app deploy --project [YOUR_PROJECT_ID]29 của thư mục. Tất cả các tệp trong thư mục đã cho được tải lên dưới dạng tệp tĩnh và không tệp nào trong số chúng có thể chạy dưới dạng tập lệnh Tất cả các tệp trong thư mục này được tải lên cùng với ứng dụng của bạn dưới dạng tệp tĩnh. App Engine lưu trữ và phân phối các tệp tĩnh riêng biệt với các tệp của ứng dụng của bạn. Các tệp tĩnh không có sẵn trong hệ thống tệp của ứng dụng theo mặc định. Điều này có thể được thay đổi bằng cách đặt tùy chọn thành true Thí dụ.builtins: - deferred: on - appstats: on3 gcloud app deploy --project [YOUR_PROJECT_ID]63 Không bắt buộc. Trình xử lý mẫu tệp tĩnh liên kết mẫu URL với đường dẫn đến tệp tĩnh được tải lên bằng ứng dụng. Biểu thức chính quy của mẫu URL có thể xác định các nhóm biểu thức chính quy sẽ được sử dụng trong việc xây dựng đường dẫn tệp. Bạn có thể sử dụng cái này thay vì gcloud app deploy --project [YOUR_PROJECT_ID]58 để ánh xạ tới các tệp cụ thể trong cấu trúc thư mục mà không ánh xạ toàn bộ thư mụcThí dụ. builtins: - deferred: on - appstats: on4 App Engine lưu trữ và phục vụ các tệp tĩnh riêng biệt với các tệp ứng dụng. Các tệp tĩnh không có sẵn trong hệ thống tệp của ứng dụng theo mặc định. Điều này có thể được thay đổi bằng cách đặt tùy chọn thành true Tệp tĩnh không được giống với tệp mã ứng dụng. Nếu đường dẫn tệp tĩnh khớp với đường dẫn đến tập lệnh được sử dụng trong trình xử lý động, tập lệnh sẽ không khả dụng cho trình xử lý động gcloud app deploy --project [YOUR_PROJECT_ID]66 Không bắt buộc. Một biểu thức chính quy khớp với đường dẫn tệp cho tất cả các tệp sẽ được trình xử lý này tham chiếu. Điều này là cần thiết vì trình xử lý không thể xác định tệp nào trong thư mục ứng dụng của bạn tương ứng với các mẫu gcloud app deploy --project [YOUR_PROJECT_ID]59 và gcloud app deploy --project [YOUR_PROJECT_ID]63 đã cho. Các tệp tĩnh được tải lên và xử lý riêng biệt với các tệp ứng dụng. Ví dụ trên có thể sử dụng mẫu gcloud app deploy --project [YOUR_PROJECT_ID]66 sau. gcloud app deploy --project [YOUR_PROJECT_ID]70 gcloud app deploy --project [YOUR_PROJECT_ID]59 Phần tử bắt buộc theo 12. Mẫu URL, dưới dạng biểu thức chính quy. Biểu thức có thể chứa các nhóm có thể được tham chiếu trong đường dẫn tệp tới tập lệnh với tham chiếu ngược biểu thức chính quy. Ví dụ: gcloud app deploy --project [YOUR_PROJECT_ID]73 sẽ khớp với URL gcloud app deploy --project [YOUR_PROJECT_ID]74 và sử dụng gcloud app deploy --project [YOUR_PROJECT_ID]75 và gcloud app deploy --project [YOUR_PROJECT_ID]76 làm nhóm thứ nhất và thứ hai Mẫu URL có một số khác biệt về hành vi khi được sử dụng với các phần tử sau Sử dụng tiền tố URL. Mẫu biểu thức chính quy không được chứa các nhóm khi được sử dụng với phần tửgcloud app deploy --project [YOUR_PROJECT_ID]58. Tất cả các URL bắt đầu bằng tiền tố này đều được xử lý bởi trình xử lý này, sử dụng phần URL sau tiền tố như một phần của đường dẫn tệp. Trình xử lý mẫu tệp tĩnh liên kết mẫu URL với đường dẫn đến tệp tĩnh được tải lên bằng ứng dụng. Biểu thức chính quy của mẫu URL có thể xác định các nhóm biểu thức chính quy sẽ được sử dụng trong việc xây dựng đường dẫn tệp. Bạn có thể sử dụng cái này thay vì gcloud app deploy --project [YOUR_PROJECT_ID]58 để ánh xạ tới các tệp cụ thể trong cấu trúc thư mục mà không ánh xạ toàn bộ thư mục yếu tố mở rộngCác thành phần trong bảng sau định cấu hình cách ứng dụng của bạn mở rộng. Để tìm hiểu thêm về cách ứng dụng App Engine mở rộng quy mô, hãy xem Yếu tốMô tả 37Không bắt buộc. Chỉ áp dụng cho các ứng dụng sử dụng từ F1 trở lên Chỉ định thành phần này để thay đổi cài đặt mặc định cho tự động thay đổi quy mô, chẳng hạn như đặt mức tối thiểu và tối đa cho số lượng phiên bản, độ trễ và kết nối đồng thời cho một dịch vụ Phần tử này có thể chứa các phần tử sau gcloud app deploy --project [YOUR_PROJECT_ID]82Tùy chọn. Chỉ định một giá trị trong khoảng từ 0 đến 2147483647, trong đó số 0 sẽ tắt cài đặt Tham số này chỉ định số lượng phiên bản tối đa cho Máy ứng dụng để tạo cho phiên bản mô-đun này. Điều này rất hữu ích để hạn chế chi phí của một mô-đun gcloud app deploy --project [YOUR_PROJECT_ID]83Cảnh báo. Để tính năng này hoạt động bình thường, bạn phải đảm bảo rằng các yêu cầu khởi động được bật và ứng dụng của bạn xử lý các yêu cầu khởi động. Ghi chú. Cài đặt này chỉ áp dụng nếu phiên bản của ứng dụng được xác định bởi tệp builtins: - name: on0 này được định cấu hình để nhận lưu lượng truy cập. Để tìm hiểu thêm về định tuyến lưu lượng truy cập đến các phiên bản khác nhau của ứng dụng, hãy xem Chia tách lưu lượng truy cập. Không bắt buộc. Số phiên bản tối thiểu để App Engine tạo cho phiên bản mô-đun này. Các phiên bản này phân phát lưu lượng khi có yêu cầu và tiếp tục phân phát lưu lượng ngay cả khi các phiên bản bổ sung được khởi động theo yêu cầu để xử lý lưu lượng Chỉ định một giá trị từ 0 đến 1000. Bạn có thể đặt tham số thành giá trị 0 để cho phép thay đổi quy mô thành 0 phiên bản nhằm giảm chi phí khi không có yêu cầu nào được phục vụ. Lưu ý rằng bạn bị tính phí cho số lượng phiên bản được chỉ định cho dù chúng có nhận được lưu lượng truy cập hay không gcloud app deploy --project [YOUR_PROJECT_ID]85 Không bắt buộc. Số lượng phiên bản nhàn rỗi tối đa mà App Engine sẽ duy trì cho phiên bản này. Chỉ định giá trị từ 1 đến 1000. Nếu không được chỉ định, giá trị mặc định là gcloud app deploy --project [YOUR_PROJECT_ID]86, có nghĩa là Máy ứng dụng sẽ quản lý số lượng phiên bản nhàn rỗi. Hãy ghi nhớ những điều sau
Ghi chú. Khi trở lại mức bình thường sau khi tải tăng đột biến, số lượng phiên bản không hoạt động có thể tạm thời vượt quá mức tối đa được chỉ định của bạn. Tuy nhiên, bạn sẽ không bị tính phí cho nhiều trường hợp hơn số lượng tối đa mà bạn đã chỉ định gcloud app deploy --project [YOUR_PROJECT_ID]87Cảnh báo. Để tính năng này hoạt động bình thường, bạn phải đảm bảo rằng các yêu cầu khởi động được bật và ứng dụng của bạn xử lý các yêu cầu khởi động. Ghi chú. Cài đặt này chỉ áp dụng nếu phiên bản của ứng dụng được xác định bởi tệp builtins: - name: on0 này được định cấu hình để nhận lưu lượng truy cập. Để tìm hiểu thêm về định tuyến lưu lượng truy cập đến các phiên bản khác nhau của ứng dụng, hãy xem Chia tách lưu lượng truy cập Không bắt buộc. Số phiên bản bổ sung sẽ tiếp tục chạy và sẵn sàng phân phát lưu lượng truy cập cho phiên bản này App Engine tính toán số lượng phiên bản cần thiết để phục vụ lưu lượng truy cập ứng dụng hiện tại của bạn dựa trên các cài đặt chia tỷ lệ, chẳng hạn như gcloud app deploy --project [YOUR_PROJECT_ID]89 và gcloud app deploy --project [YOUR_PROJECT_ID]90. Cài đặt gcloud app deploy --project [YOUR_PROJECT_ID]87 chỉ định số lượng phiên bản sẽ chạy ngoài số lượng được tính toán này. Ví dụ: nếu App Engine tính toán rằng 5 phiên bản là cần thiết để phân phối lưu lượng truy cập và gcloud app deploy --project [YOUR_PROJECT_ID]87 được đặt thành 2, thì App Engine sẽ chạy 7 phiên bản (5, được tính toán dựa trên lưu lượng truy cập, cộng thêm 2 phiên bản cho mỗi gcloud app deploy --project [YOUR_PROJECT_ID]87) Lưu ý rằng bạn bị tính phí cho số lượng phiên bản được chỉ định cho dù chúng có nhận được lưu lượng truy cập hay không. Hãy ghi nhớ những điều sau
gcloud app deploy --project [YOUR_PROJECT_ID]89Tùy chọn. Chỉ định một giá trị giữa 0. 5 và 0. 95. Mặc định là gcloud app deploy --project [YOUR_PROJECT_ID]95 Tham số này chỉ định ngưỡng sử dụng CPU mà tại đó các phiên bản mới sẽ bắt đầu xử lý lưu lượng truy cập, cho phép bạn cân bằng giữa hiệu suất và chi phí, với giá trị thấp hơn sẽ tăng hiệu suất và tăng chi phí, còn giá trị cao hơn sẽ giảm hiệu suất nhưng cũng giảm chi phí. Ví dụ: giá trị 0. 7 có nghĩa là các phiên bản mới sẽ được bắt đầu sau khi mức sử dụng CPU đạt 70 phần trăm gcloud app deploy --project [YOUR_PROJECT_ID]90Tùy chọn. Chỉ định một giá trị từ 0. 5 đến 0. 95. Mặc định là gcloud app deploy --project [YOUR_PROJECT_ID]95 Được sử dụng với 40 để chỉ định thời điểm bắt đầu một phiên bản mới do các yêu cầu đồng thời. Khi số lượng yêu cầu đồng thời đạt đến giá trị bằng 40 lần gcloud app deploy --project [YOUR_PROJECT_ID]90, bộ lập lịch sẽ cố gắng bắt đầu một phiên bản mới 40Không bắt buộc. Số lượng yêu cầu đồng thời mà một phiên bản thay đổi quy mô tự động có thể chấp nhận trước khi bộ lập lịch tạo ra một phiên bản mới (Mặc định. 10, Tối đa. 1000) Được sử dụng với gcloud app deploy --project [YOUR_PROJECT_ID]90 để chỉ định thời điểm bắt đầu một phiên bản mới do các yêu cầu đồng thời. Khi số lượng yêu cầu đồng thời đạt đến giá trị bằng 40 lần gcloud app deploy --project [YOUR_PROJECT_ID]90, bộ lập lịch sẽ cố gắng bắt đầu một phiên bản mới Chúng tôi khuyên bạn không nên đặt 40 thành ít hơn 10 trừ khi bạn cần phân luồng đơn. Giá trị nhỏ hơn 10 có khả năng dẫn đến nhiều phiên bản được tạo hơn mức bạn cần cho một ứng dụng an toàn luồng và điều đó có thể dẫn đến chi phí không cần thiếtNếu cài đặt này quá cao, bạn có thể gặp phải độ trễ API tăng lên. Lưu ý rằng bộ lập lịch có thể sinh ra một phiên bản mới trước khi đạt đến số lượng yêu cầu tối đa thực tế builtins: - deferred: on - appstats: on06 Lượng thời gian tối đa mà Máy ứng dụng sẽ cho phép một yêu cầu đợi trong hàng chờ xử lý trước khi bắt đầu các phiên bản bổ sung để xử lý các yêu cầu để giảm độ trễ chờ xử lý. Khi đạt đến ngưỡng này, đó là tín hiệu để mở rộng quy mô và dẫn đến số lượng phiên bản tăng lên. Nếu không được chỉ định, giá trị mặc định là gcloud app deploy --project [YOUR_PROJECT_ID]86. Điều này có nghĩa là các yêu cầu có thể vẫn ở trong hàng chờ xử lý trong tối đa 10 giây, tối đa trước khi phiên bản mới bắt đầu được kích hoạt Mức tối đa thấp có nghĩa là Máy ứng dụng sẽ bắt đầu các phiên bản mới sớm hơn cho các yêu cầu đang chờ xử lý, cải thiện hiệu suất nhưng tăng chi phí vận hành Mức tối đa cao có nghĩa là người dùng có thể đợi lâu hơn để yêu cầu của họ được phục vụ (nếu có các yêu cầu đang chờ xử lý và không có phiên bản nhàn rỗi nào để phục vụ chúng), nhưng ứng dụng của bạn sẽ tốn ít chi phí hơn để chạy builtins: - deferred: on - appstats: on08 Một thành phần tùy chọn mà bạn có thể đặt để chỉ định khoảng thời gian tối thiểu mà Máy ứng dụng sẽ cho phép một yêu cầu đợi trong hàng chờ xử lý trước khi bắt đầu một phiên bản mới để xử lý yêu cầu đó. Việc chỉ định một giá trị có thể làm giảm chi phí vận hành nhưng tăng thời gian người dùng phải đợi yêu cầu của họ được phục vụ Đối với các ứng dụng miễn phí, giá trị mặc định là builtins: - deferred: on - appstats: on09. Đối với các ứng dụng trả phí, giá trị mặc định là builtins: - deferred: on - appstats: on10 Phần tử này hoạt động cùng với phần tử builtins: - deferred: on - appstats: on06 để xác định thời điểm App Engine tạo phiên bản mới. Nếu các yêu cầu đang chờ xử lý nằm trong hàng đợi
builtins: - deferred: on - appstats: on5 47Các ứng dụng sử dụng điểm B1 trở lên phải chỉ định yếu tố này hoặc builtins: - deferred: on - appstats: on18 Phần tử này cho phép thay đổi quy mô cơ bản của các lớp phiên bản B1 trở lên, có thể chứa các phần tử sau gcloud app deploy --project [YOUR_PROJECT_ID]82Bắt buộc. Số lượng phiên bản tối đa mà App Engine có thể tạo cho phiên bản dịch vụ này. Điều này rất hữu ích để hạn chế chi phí của một dịch vụ. builtins: - deferred: on - appstats: on20Tùy chọn. Phiên bản sẽ bị tắt trong khoảng thời gian này sau khi nhận được yêu cầu cuối cùng của nó. Mặc định là 5 phút ( builtins: - deferred: on - appstats: on21). Ví dụ builtins: - deferred: on - appstats: on6______14_______48 Các ứng dụng sử dụng điểm B1 trở lên phải chỉ định yếu tố này hoặc builtins: - deferred: on - appstats: on23 Phần tử này cho phép thay đổi tỷ lệ thủ công các lớp phiên bản B1 trở lên và có thể chứa phần tử sau |