Tại sao máy chủ Python

Python là một trong những ngôn ngữ lập trình tốt nhất để học với các ứng dụng trong phát triển web back-end, máy học và thống kê, mô hình hóa khoa học, vận hành hệ thống và một số phần mềm dành riêng cho doanh nghiệp. Do cú pháp giống tiếng Anh, kiểu gõ động và nhiều thư viện, nó thường được coi là một trong những ngôn ngữ lập trình dễ tiếp cận hơn

Bài viết này sẽ khám phá Python để lập trình phía máy chủ

Đầu tiên, hãy xem nhanh máy chủ là gì


nguồn hình ảnh. trang web. thứ. giáo dục

Máy chủ là mô hình khách-chủ trong hạ tầng của mạng internet. Bất cứ khi nào trình duyệt máy khách truy cập một trang web, nó sẽ tạo một yêu cầu HTTP đến máy chủ chứa các tệp cần thiết để quản lý trang web. Máy chủ đáp ứng yêu cầu của khách hàng và xử lý yêu cầu đó, phản hồi với thông tin cần thiết để trình bày trang web

Lập trình phía máy chủ được phân loại thành máy chủ web tĩnh và động. Cái trước trả về các tệp như hiện tại trong khi cái sau giới thiệu cơ sở dữ liệu và máy chủ ứng dụng

Ghi chú. ‘Không tìm thấy tệp’ hay 404, mã lỗi máy chủ ‘nổi tiếng’ đôi khi xảy ra khi duyệt internet, là do máy chủ không thể truy cập một số tệp

Bắt đầu một máy chủ web bằng Python

Khởi chạy máy chủ web Python chỉ mất vài phút vì nó nhanh chóng và đơn giản. Chỉ cần một dòng mã là máy chủ cục bộ đơn giản nhất chạy trên hệ thống. Thông qua thử nghiệm cục bộ, hệ thống trở thành máy chủ cho máy khách, là trình duyệt. Các tệp được lưu trữ cục bộ trên hệ thống

Để tạo một máy chủ web, bạn sẽ cần một mô-đun máy chủ Python HTTP có thể được sử dụng làm máy chủ tệp tĩnh. Đối với một máy chủ web động, bạn sẽ cần một khung Python như Django hoặc Flask

Mật mã

python -m http.server

Nhập mã ở trên vào dấu nhắc lệnh hoặc thiết bị đầu cuối, tùy thuộc vào hệ thống của bạn. Thông báo 'máy chủ đã bắt đầu' sẽ xuất hiện. Và bạn đã có nó - máy chủ web Python đầu tiên của bạn

Phải thừa nhận rằng đây là một mã đơn giản không chỉ mở một máy chủ web trên cổng mặc định của hệ thống là 8000. Có thể thay đổi cổng bằng cách chỉ định số cổng ở cuối dòng

python -m http.server 8080

Mã Python


nguồn hình ảnh. bởi tin tặc. io

Máy chủ web động

Các trang web phía máy chủ động cung cấp thông tin tùy chỉnh để đáp ứng các yêu cầu HTTP. Chúng thực hiện nhiều thao tác như truy xuất dữ liệu từ cơ sở dữ liệu, hiển thị dữ liệu trên trang, xác thực dữ liệu do người dùng nhập, lưu dữ liệu vào cơ sở dữ liệu, v.v. Django cực kỳ phổ biến là một khung web động phía máy chủ hoàn toàn nổi bật được viết bằng Python

Xem xét số lượng sản phẩm có sẵn trong các cửa hàng bán lẻ trực tuyến và số lượng bài đăng được viết trên phương tiện truyền thông xã hội. Hiển thị tất cả những thứ này bằng các trang tĩnh khác nhau sẽ không hiệu quả. Vì vậy, thay vì hiển thị các mẫu tĩnh [được tạo bằng HTML, CSS và JavaScript], tốt hơn hết bạn nên cập nhật động dữ liệu được hiển thị bên trong các mẫu đó khi cần, chẳng hạn như khi bạn muốn xem một sản phẩm khác trong cửa hàng bán lẻ

Tổng quan ngắn gọn về Django

Django là một khung web phía máy chủ Python cấp cao cho phép phát triển nhanh các trang web có thể bảo trì và bảo vệ. Khung nguồn mở và miễn phí giúp loại bỏ nhiều rắc rối khi phát triển web. Nó cũng có một cộng đồng tích cực được ghi lại cung cấp nhiều tùy chọn miễn phí

Tính năng Django

- Chắc chắn. Django cung cấp một khung được thiết kế để 'làm những điều đúng đắn' để tự động bảo vệ các trang web. Ví dụ: nó cung cấp một cách an toàn để quản lý tài khoản và mật khẩu người dùng

Django có thể kiểm tra xem mật khẩu đã nhập có chính xác hay không bằng cách chạy nó thông qua hàm băm mật mã và tương tự như đầu ra với giá trị băm được lưu trữ. Do phương pháp 'một chiều' này, ngay cả khi giá trị băm được lưu trữ bị xâm phạm, kẻ tấn công cũng khó có thể tìm ra mật khẩu ban đầu. Theo mặc định, Django cho phép bảo vệ chống lại nhiều lỗ hổng bảo mật, bao gồm SQL injection, cross-site scripting, cross-site request forgery

- Đa năng và đầy đủ. Django tuân theo triết lý 'bao gồm pin' bằng cách cung cấp gần như mọi thứ mà nhà phát triển cần để thực hiện mọi thứ vượt trội. Nó giúp tạo các trang web bao gồm hệ thống thiết kế quản lý nội dung, wiki cho các mạng đặc biệt và trang tin tức. Nó cũng có thể hoạt động trong bất kỳ khung phía máy khách nào và cung cấp nội dung ở hầu hết mọi định dạng, chẳng hạn như HTML, JSON, XML, v.v.

- Có thể mở rộng. Django sử dụng kiến ​​trúc 'không chia sẻ gì' dựa trên thành phần, có nghĩa là mỗi phần của kiến ​​trúc độc lập với các phần khác. Điều này cho phép nó được thay thế hoặc thay đổi theo yêu cầu. Sự tách biệt rõ ràng cho phép nó được mở rộng để tăng lưu lượng truy cập bằng cách thêm phần cứng ở mọi cấp độ, có thể là máy chủ bộ đệm, máy chủ cơ sở dữ liệu hoặc máy chủ ứng dụng

- Có thể bảo trì và di động. Mã Django được viết theo cách có thể tái sử dụng và bảo trì. Nó tuân theo nguyên tắc Don't Repeat Yourself [DRY]. Không có sự trùng lặp không cần thiết, làm giảm số lượng mã. Nó khuyến khích nhóm các chức năng liên quan thành các 'ứng dụng' có thể tái sử dụng và ở cấp độ thấp hơn, nhóm mã liên quan thành các mô-đun cùng với dòng của mẫu trình điều khiển chế độ xem mô hình [MVC]

Vì Django được viết bằng Python và chạy trên nhiều nền tảng nên bạn không bị ràng buộc với bất kỳ nền tảng máy chủ cụ thể nào. Bạn có thể chạy các ứng dụng trên nhiều phiên bản Linux, Windows và Mac OS X. Hơn nữa, nó được hỗ trợ tốt bởi nhiều nhà cung cấp dịch vụ lưu trữ web thường cung cấp cơ sở hạ tầng và tài liệu cụ thể để lưu trữ các trang web Django

quy trình làm việc Django

Các trang web dựa trên dữ liệu truyền thống tuân theo quy trình công việc sau

  1. Các ứng dụng web chờ yêu cầu HTTP từ trình duyệt web

  2. Khi yêu cầu nhận được ứng dụng, họ sẽ tìm ra những gì cần thiết dựa trên URL và có thể là thông tin trong dữ liệu POST hoặc dữ liệu GET. Sau đó, tùy theo yêu cầu mà đọc, ghi dữ liệu từ cơ sở dữ liệu hoặc các tác vụ khác cần đáp ứng yêu cầu.

  3. Các ứng dụng trả về phản hồi cho trình duyệt web dưới dạng các mẫu HTML

thuật ngữ phổ biến

- URL. Trình ánh xạ ánh xạ yêu cầu HTTP từ phía máy khách và chuyển hướng đến chế độ xem thích hợp dựa trên URL yêu cầu. Trình ánh xạ khớp với các mẫu chuỗi và chữ số cụ thể có trong URL.
- Xem. Hoạt động như một chức năng xử lý yêu cầu nhận các yêu cầu HTTP và trả về các phản hồi HTTP.
- Người mẫu. Các đối tượng Python xác định cấu trúc dữ liệu của ứng dụng và cung cấp các cơ chế để quản lý [thêm, sửa đổi, xóa] và truy vấn các bản ghi trong cơ sở dữ liệu.
- Mẫu. Tệp văn bản xác định cấu trúc hoặc bố cục của tệp [chẳng hạn như trang HTML], với các trình giữ chỗ được sử dụng để thể hiện nội dung thực tế. Một chế độ xem có thể tự động tạo một trang HTML bằng cách sử dụng mẫu HTML, điền vào đó dữ liệu từ một mô hình.

Mã Python để triển khai quy trình làm việc của Django

Gửi yêu cầu [url. py]

Thông thường, các url. tệp py được lưu trữ trong trình ánh xạ URL

url_patterns = [
path["admit url"],
path['turing/int. id/', lượt xem. turing_detail, name='turing_detail'],
path['catalogs/', include['catalogs. url']],
re_path[r'^[[0-9]+]/$', lượt xem. tốt nhất],
]

url_patterns là trình ánh xạ xác định danh sách ánh xạ giữa URL_pattern cụ thể và chức năng xem tương ứng. Nếu URL khớp với một mẫu nhất định, chức năng xem được liên kết sẽ được gọi và chuyển yêu cầu

Xử lý yêu cầu [lượt xem. py]

Lượt xem là trung tâm của ứng dụng web, nhận yêu cầu HTTP từ máy khách web và trả về phản hồi HTTP

từ django. http nhập httpResponse

def index_1[request].
# Nhận một HttpRequest - tham số yêu cầu
# thực hiện các thao tác sử dụng thông tin từ yêu cầu.
# Return HttpResponse
return HttpResponse[“Xin chào, chào mừng bạn đến với ture. com”']

Định nghĩa các mô hình dữ liệu [models. py]

Mô hình dữ liệu giúp các ứng dụng web Django xử lý và truy vấn dữ liệu thông qua các đối tượng Python. Các mô hình cung cấp cấu trúc của dữ liệu được lưu trữ, bao gồm các loại trường, kích thước tối đa, giá trị mặc định, tùy chọn danh sách lựa chọn, văn bản cho tài liệu, v.v.

từ django. mô hình nhập khẩu db

nhóm lớp [mô hình. Người mẫu].
team_name = models. Trường ký tự[max_length=40]

TEAM_LEVELS = [                           
    ['U09', 'Under 09s'],                             
    ['U10', 'Under 10s'],                           
    ['U11', 'Under 11s'],                        
    .. #list other team levels                            
]                               
team_level = models.CharField[max_length=3, choices=TEAM_LEVELS, default='U11']                       

Kết xuất dữ liệu [mẫu HTML]

Hệ thống mẫu cho phép bạn xác định cấu trúc của tài liệu đầu ra bằng cách sử dụng trình giữ chỗ cho dữ liệu sẽ được điền vào khi tạo trang. Mẫu thường được sử dụng để tạo HTML nhưng cũng có thể tạo các loại tài liệu khác

##tên tệp. tốt nhất/mẫu/tốt nhất/chỉ mục. html





Home page


{% if youngest_teams %}


    {% for team in youngest_teams %}
  • {{ team.team_name }}

  • {% endfor %}

{% else %}
python -m http.server0
python -m http.server1

Nhiều trang web quy mô lớn sử dụng lập trình phía máy chủ để hiển thị dữ liệu động bất cứ khi nào . Lợi ích lớn nhất của mã phía máy chủ là nó cho phép bạn điều chỉnh nội dung trang web cho nhiều người dùng khác nhau. Nó có toàn quyền truy cập vào hệ điều hành máy chủ và có thể được viết bằng các ngôn ngữ lập trình khác nhau như Python, PHP, Ruby, C# và JavaScript [NodeJS].

Tại sao máy chủ Python

con trăn. Nó là ngôn ngữ có mục đích chung, nhưng nó thường được sử dụng làm ngôn ngữ kịch bản phía máy chủ. Tại sao?

Python là một máy chủ như thế nào?

Chỉ cần một dòng mã là máy chủ cục bộ đơn giản nhất chạy trên hệ thống. Thông qua thử nghiệm cục bộ, hệ thống trở thành máy chủ cho máy khách, là trình duyệt. Các tệp được lưu trữ cục bộ trên hệ thống. Để tạo máy chủ web, bạn sẽ cần mô-đun máy chủ HTTP Python có thể được sử dụng làm máy chủ tệp tĩnh .

Python có cần máy chủ để chạy không?

Chúng có ngôn ngữ phía máy chủ. Các ngôn ngữ phía máy chủ [chẳng hạn như PHP hoặc Python] yêu cầu một máy chủ đặc biệt để diễn giải mã và cung cấp kết quả .

Python có tốt cho máy chủ không?

Python là ngôn ngữ tuyệt vời để phát triển ứng dụng máy chủ và máy tính để bàn , nhưng ngôn ngữ này không lý tưởng cho điện toán di động. Do đó, Python chỉ được sử dụng trong một số ít ứng dụng điện thoại thông minh. Cái nào tốt hơn cho phát triển phụ trợ. Nút.

Chủ Đề