Điểm:1

Triển khai ứng dụng PHP gọi tập lệnh python trên AWS

lá cờ in

Tôi đã tạo một trang web PHP gọi một nhóm công nhân python ở chế độ nền (sử dụng hệ thống công nhân xếp hàng trong laravel, nơi công nhân gọi công cụ python thông qua CLI). Mỗi công cụ python đều có thiết lập môi trường conda riêng mà chúng cần chạy chính xác.

Tôi có thể chạy thiết lập này khá tốt trên một máy chủ vì mọi thứ đều được cài đặt trên máy, nhưng tôi muốn triển khai thiết lập này lên đám mây (AWS) một cách mạnh mẽ.

Theo những gì tôi đọc được, Elastic Beanstalk khá đẹp và dễ phân phối mã PHP, với sự hỗ trợ triển khai các phiên bản mới, v.v., nhưng tôi không thể biết cách đưa mã python của mình vào.

Tôi có lẽ nên nhìn vào:

  • tách các công cụ python của tôi khỏi máy chủ PHP (với vấn đề mới là "làm cách nào để tôi gọi chúng sau đó và chờ kết quả của chúng?")
  • đặt mọi thứ vào bộ chứa docker và xây dựng lại mỗi khi một trong các công cụ hoặc PHP cần cập nhật (với vấn đề mới là "làm cách nào để tôi làm cho nó trở nên dư thừa")

Sự khôn ngoan của bạn khi triển khai loại thiết lập này là gì?

Điểm:1
lá cờ cn

Bean Beanalk có hỗ trợ cho các tiện ích mở rộng/cấu hình khác nhau thông qua tiện ích mở rộng eb, vì vậy bạn có thể nén mã python và định cấu hình mã thông qua mã đó.

Để tách chúng ra, bạn đang đi vào khu vực hệ thống phân tán. Một mô hình phổ biến là ghi thông báo vào hàng đợi công việc (ví dụ: PHP -> AWS SQS) và yêu cầu công nhân đăng ký/tiêu thụ từ hàng đợi đó và chạy tác vụ. Kết quả có thể được ghi vào cơ sở dữ liệu để truy xuất. Vì vậy, bạn có thể yêu cầu PHP ghi vào SQS, chuyển đổi các lệnh Python thành Lambdas (tùy thuộc vào những gì chúng cần làm) và ghi kết quả vào DynamoDB. Sau đó, kết quả có thể được truy xuất bởi máy chủ trung tâm PHP ban đầu.

Hoặc, liên quan đến việc làm cho mọi thứ trở nên dư thừa - bạn có thể di chuyển phần trạng thái được lưu trữ của hệ thống sang cơ sở dữ liệu hoặc hệ thống tệp trung tâm như EFS và sử dụng các công cụ như AWS ECS để chạy bộ chứa và kết nối với bộ chứa đó.

Có khả năng có rất nhiều cách để giải quyết nó, tùy thuộc vào yêu cầu/kiến thức về chi phí/khả năng phục hồi, v.v.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.