강의

멘토링

로드맵

BEST
Programming

/

Back-end

Lập trình đồng thời Python : Từ thu thập dữ liệu đến phát triển web (feat. FastAPI, async, await)

Chúng tôi sử dụng lập trình đồng thời/song song trong Python để thu thập dữ liệu, tải dữ liệu vào MongoDB, phân tích và phát triển ứng dụng web trực quan hóa dữ liệu được thu thập bằng FastAPI, một khung web hiện đại. Trong khóa học này, bạn sẽ tìm hiểu và hiểu về lập trình song song/đồng thời Python bằng cách sử dụng coroutine, đa luồng và đa xử lý cũng như cách sử dụng chúng để tăng hiệu suất trong Python. Chúng tôi giúp bạn áp dụng trực tiếp mã song song/đồng thời của Python vào thực hành. Thay vì chỉ phát triển, chúng tôi sẽ hướng dẫn bạn cách triển khai và vận hành một ứng dụng thực tế trên đám mây AWS.

(4.9) 79 đánh giá

1,569 học viên

  • amamov
Q&A의 달인
소통왕
Python
concurrent
FastAPI

Đánh giá từ những học viên đầu tiên

Dịch cái này sang tiếng Việt

  • Nguyên tắc thiết kế mã lập trình đồng thời/song song

  • Coroutine Python, lập trình không đồng bộ

  • Kỹ thuật đa luồng, đa xử lý Python

  • Kiến thức về hệ điều hành về các tiến trình và luồng

  • Đang tải dữ liệu lớn không có cấu trúc bằng MongoDB

  • Phát triển máy chủ bằng FastAPI, sử dụng cổng không đồng bộ Uvicorn

  • Xây dựng máy chủ đám mây AWS

  • Thu thập dữ liệu web, trực quan hóa

Python chậm?
Bay cao với lập trình đồng thời và song song!

Bài giảng
Trước khi bạn bắt đầu

Khóa học này có hai mục tiêu chính: giúp bạn hiểu các khái niệm về đồng thời, song song và lập trình bất đồng bộ, đồng thời hướng dẫn bạn cách sử dụng mã nào trong từng tình huống .
Trong nửa sau của khóa học, chúng ta sẽ làm việc trên một dự án thực tế sử dụng lập trình đồng thời để giúp bạn chuyển từ hiểu biết lý thuyết sang ứng dụng thực tế các khái niệm.

Lập trình đồng thời, không đồng bộ và song song
Với cú pháp Python mới nhất

Kể từ phiên bản Python 3.7, khả năng hỗ trợ lập trình đồng thời, bất đồng bộ và song song đã được mở rộng đáng kể. Khi nhu cầu về các tính năng này tăng lên, nhiều framework và thư viện hỗ trợ lập trình đồng thời, bất đồng bộ và song song đã xuất hiện. Tuy nhiên, nhiều người gặp khó khăn với cú pháp luôn thay đổi của Python. Hơn nữa, nhiều người đã học lý thuyết lại không chắc chắn về cách thức và thời điểm áp dụng cú pháp vào thực tế.
Khóa học này sẽ giúp bạn áp dụng ngay các khái niệm về đồng thời, bất đồng bộ và song song bằng cách cung cấp đào tạo thực tế theo cú pháp Python mới nhất .

Đồng thời và song song
cùng lúc

Bài giảng này đề cập đến cả đồng thời và song song, minh họa các ứng dụng thực tế. Do đó, tiêu đề "Lập trình đồng thời" mang hai nghĩa: đồng thời trong ngữ cảnh đồng thời và song song, và đồng thời theo nghĩa "cùng lúc ". Lý do là vì song song thường được diễn đạt là "đồng thời" hoặc "cùng lúc".

Bài giảng này
Tôi muốn giới thiệu điều này tới những người này

Đồng thời? Song song?
Tất cả những điều này là gì?

Đồng thời và song song
Nó là gì và tại sao nó lại cần thiết
Nếu bạn muốn hiểu

Với cú pháp Python mới nhất
Lập trình đồng thời

Đồng thời, không đồng bộ và song song
Ngữ pháp được cập nhật
Nếu bạn muốn viết

Cú pháp đồng thời của Python
Trong thực tế cũng vậy

Nó cũng có thể được áp dụng trong thực tế
Sự đồng thời có thể được
Lập trình

Các nhà phát triển phần cuối cũng vậy
FastAPI tò mò

Sử dụng cú pháp không đồng bộ một cách chủ động
FastAPI đã sử dụng
Nếu bạn muốn thử nó

  • Các nhà phân tích dữ liệu và nhà phát triển muốn tăng tốc chương trình Python của họ
  • Những người muốn học ngữ pháp đồng thời, bất đồng bộ và song song theo ngữ pháp Python mới nhất
  • Những người muốn áp dụng ngay lập tức lập trình đồng thời, không đồng bộ và song song của Python vào thực tế.
  • Các nhà phát triển phần mềm muốn tìm hiểu FastAPI, một nền tảng web sử dụng cú pháp không đồng bộ.

Bài giảng này
Điều này cũng sẽ giúp ích cho những người như thế này.

  • Nhà phát triển JavaScript (ngôn ngữ lập trình không đồng bộ) đang học Python

Lập trình đồng thời trong Python:
Từ thu thập dữ liệu đến phát triển web

Lập trình đồng thời

  • Giao tiếp giữa máy khách và máy chủ
  • Đọc/ghi các tập tin đĩa hệ thống
  • Hoạt động truy vấn cơ sở dữ liệu
  • Sử dụng API

Lập trình song song

  • Xử lý video, âm thanh hoặc hình ảnh
  • tầm nhìn máy tính
  • học máy
  • Học sâu

Bài giảng này
Nó diễn ra như thế này

Python Coroutine và Hàm bất đồng bộ

Tìm hiểu về thuật ngữ cơ bản và coroutine của Python.

  • Chúng tôi sẽ giải thích và sắp xếp các thuật ngữ quan trọng nhưng khó hiểu như bind, blocking, synchronous, asynchronous, subroutine và coroutine bằng cách sử dụng sơ đồ tư duy và mã.
  • Cuốn sách này giới thiệu lập trình bất đồng bộ cơ bản trong Python sử dụng coroutine. Nó cũng chứng minh, thông qua các ví dụ thực tế (chẳng hạn như hoạt động I/O mạng và CPU), lý do tại sao lập trình bất đồng bộ lại cần thiết để tăng tốc các tình huống cụ thể.

Đa luồng và đa xử lý Python

Đa luồng? Đa xử lý? Đồng thời? Song song?

  • Chúng ta sẽ triển khai chương trình dựa trên coroutine được phát triển trong Phần 1 bằng các kỹ thuật đa luồng tận dụng tính đồng thời (song song) trên nhiều luồng. Điều này sẽ giúp bạn hiểu cách xử lý mã đồng bộ song song mà không cần sự trợ giúp của mô-đun asyncio. Chúng tôi cũng sẽ giải thích, bằng các ví dụ, tại sao lập trình song song đa luồng trong Python là không thể do Khóa Thông dịch Toàn cục (GIL) của Python.
  • Chúng ta sẽ triển khai một chương trình sử dụng kỹ thuật đa xử lý để xử lý song song. Chương trình này sẽ hướng dẫn bạn cách sử dụng đa xử lý trong Python và giải thích cách thiết kế mã cho xử lý phân tán trong Python, trong những trường hợp nào.

Thu thập dữ liệu bằng lập trình đồng thời

Áp dụng tính đồng thời và bất đồng bộ vào các dự án thực tế

  • Dựa trên các lý thuyết đã học, chúng ta sẽ phát triển một trình thu thập dữ liệu web và một trình thu thập dữ liệu bằng cách sử dụng các API mở. Chúng ta cũng sẽ dành thời gian phát triển các chương trình thực tế và làm quen với lập trình đồng thời.

Dự án thực tế: "Ứng dụng web thu thập dữ liệu" với FastAPI

MongoDB CRUD, trực quan hóa dữ liệu và phát triển web với lập trình đồng thời

  • Dựa trên lý thuyết đã học, chúng ta sẽ phát triển một "ứng dụng web thu thập dữ liệu". Dự án này sử dụng lập trình đồng thời để thu thập dữ liệu trên web và lưu trữ dữ liệu đã thu thập được trong MongoDB. Chúng ta sẽ kết nối MongoDB với FastAPI để phát triển một ứng dụng web có khả năng phân tích và trực quan hóa dữ liệu đã lưu trữ. Dự án này sẽ giúp bạn hiểu và áp dụng lập trình đồng thời và bất đồng bộ vào các tình huống thực tế.

Triển khai dự án với AWS Cloud Computing

Dự án không chỉ dừng lại ở việc phát triển đơn giản. Chúng tôi cũng sẽ hướng dẫn bạn cách triển khai ứng dụng web lên máy chủ bằng công nghệ điện toán đám mây AWS.

Bài giảng thưởng

Bài giảng được cập nhật thông qua các câu hỏi

  • Các bài giảng ngữ pháp Python cần thiết cho khóa học này sẽ được tải lên liên tục.
  • Những câu hỏi quan trọng sẽ được trả lời và tải lên liên tục trong các bài giảng bổ sung.

Câu hỏi bài giảng dự kiến
Hỏi & Đáp

H. Cần có bao nhiêu kiến thức về Python?

Để tham gia khóa học này, bạn cần có kiến thức Python cơ bản về biến, câu lệnh điều kiện, vòng lặp, hàm và cú pháp lớp. Các cú pháp khó hơn mà bạn gặp phải trong suốt khóa học có thể được giải đáp thông qua các bài giảng bổ sung được đăng tải thường xuyên.

H. Có lưu ý nào liên quan đến khóa học không (yêu cầu về môi trường, các biện pháp phòng ngừa khác, v.v.)?

Quá trình này được thực hiện trong môi trường có phiên bản Python là 3.7 trở lên.


Người chia sẻ kiến thức
Những gì tôi muốn nói

Bài giảng sẽ tiếp tục trong tương lai
Nó sẽ được cập nhật liên tục

Công nghệ luôn thay đổi. Người ta nói rằng nếu bạn không thể sửa được mã đã viết trước đây, bạn chẳng học được gì cả. Khi các phiên bản Python được nâng cấp, chúng tôi sẽ cập nhật các khóa học để phản ánh các phiên bản mới, giúp bạn học được những kỹ thuật tốt hơn.

Câu hỏi là
Bạn luôn được chào đón

Nếu bạn gặp bất kỳ thắc mắc nào hoặc cần giải thích thêm trong suốt khóa học, chúng tôi sẽ cung cấp câu trả lời hợp lý, dựa trên tình huống thực tế. Chúng tôi rất mong nhận được câu hỏi của bạn!

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Bất kỳ ai muốn tăng tốc chương trình Python thông qua lập trình đồng thời

  • Bất cứ ai muốn sử dụng lập trình đồng thời Python ngay trong thực tế

  • Bất cứ ai muốn tải và quản lý dữ liệu trong MongoDB

  • Nhà phát triển phụ trợ khởi nghiệp muốn áp dụng FastAPI

  • Bất kỳ ai muốn thu thập dữ liệu hiệu quả thông qua lập trình đồng thời

  • Những người muốn vượt xa sự phát triển và thực sự triển khai và vận hành các ứng dụng web

Cần biết trước khi bắt đầu?

  • Kiến thức cơ bản về Python (biến, câu lệnh điều kiện, vòng lặp, hàm, v.v.)

Xin chào
Đây là

5,893

Học viên

306

Đánh giá

358

Trả lời

4.7

Xếp hạng

4

Các khóa học

안녕하세요. 더 유익하고 본질적인 지식 콘텐츠로 많은 가치를 드릴 수 있도록 노력하겠습니다.

  • AI DT 전문 개발사 (주)하이퍼이지 대표이사

  • M사 금융 AI 모델 개발 및 총괄

  • (사)한국정보통신네트워크협회 AI분과기술위원

  • P사 DT Simulation SW 개발 총괄

  • 前 시리즈 A 스타트업 기술 팀장

     

  • 前 대기업 소프트웨어 엔지니어링 기술 용역 다수

  • 前 소프트웨어 공학 온/오프라인 교육 다수 (스타트업, GS리테일, 삼성 등)

문의사항, 추가질문, 집필, 강의제안 ==> endupfree@gmail.com

Chương trình giảng dạy

Tất cả

32 bài giảng ∙ (5giờ 40phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

79 đánh giá

4.9

79 đánh giá

  • wkdrmfmt님의 프로필 이미지
    wkdrmfmt

    Đánh giá 7

    Đánh giá trung bình 5.0

    5

    97% đã tham gia

    I would like to recommend this to those who are familiar with Python grammar and have some experience using Python. I only roughly understood the asynchronous method with my eyes, but I have never properly understood it and used it. It was refreshing and fun to actually implement some actions using the asynchronous method. The lecture did not just teach the core parts, but it was good that it explained the necessary contents first before explaining the core contents of the lecture in a way that felt like a beginning, development, turn, and conclusion(?). (Before explaining concurrency and parallelism, it explained basic concepts such as CPU, process, and thread.) Although this seems basic, there are many lectures that do not follow it well. If you upload lectures on Python or Python frameworks in the future, I would like to listen to them all. Thank you for the great lecture.

    • amamov
      Giảng viên

      I'm so happy haha Thank you! I'll plan a better lecture.

  • kukaeden님의 프로필 이미지
    kukaeden

    Đánh giá 484

    Đánh giá trung bình 5.0

    5

    88% đã tham gia

    Thank you for informing me about FastAPI and concurrent programming~!

    • iambyunghyun님의 프로필 이미지
      iambyunghyun

      Đánh giá 8

      Đánh giá trung bình 4.9

      5

      100% đã tham gia

      This is one of the best lectures among the best lectures. First of all, I came here because I wanted to use fast API, but while learning asynchronous programming, I realized that I am still a person who is lacking in many ways. However, the instructor explained it in detail and in an easy-to-understand manner, so it was a very satisfying lecture. I would pay and listen even if it cost more than 100,000 won, adding a little exaggeration... This lecture covers everything from back-end to front-end and server deployment. After listening to this lecture, you will be able to expand your horizons by gaining similar experience before doing something difficult like Spring framework, and it will be a good specification for those who have never done server deployment before. I will diligently review the contents that the instructor taught me and develop them into projects to make them my knowledge. Thank you again ㅎㅎㅎ Can I ask you to teach Spring Framework next time.. ㅠㅠ You really teach so well, thank you!!

      • amamov
        Giảng viên

        Thank you for the good review. I am proud :) I don't have any plans for Spring right now, but I will definitely remember it! Reviews like this give me the strength to prepare for the next lecture.

    • insightp님의 프로필 이미지
      insightp

      Đánh giá 4

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      It seems like a really informative and well-made lecture. I've taken a variety of lectures, but this lecture was really refreshing in many ways. I came to know about this lecture because I was interested in FastAPI and was looking for it... After taking this lecture, I realized that the important thing was not to learn the framework uniformly, but the async concept underlying the framework. I was moved three times in total: once because I could quickly taste FastAPI, once because I learned the important concepts underlying it, and once again because I got a sense of how to study on my own in the future...ㅠㅠ I'm currently taking the instructor's OOP lecture, and the common elements are: 1. Choosing concepts and frameworks that are trendy and important in the industry, 2. Breaking the concept (topic) into one lecture unit (+ each lecture is independent of each other), 3. A method that allows you to quickly understand and apply only the key points (is this true microlearning?), 4. A moderately fast pace that is not boring, 5. Friendly explanations in between so that no one gets lost, 6. Appropriate lecture length (I think the shorter the time it takes to convey the same knowledge, the better) 7. Structure of interesting practical content These are some of the elements that I really liked. I was very satisfied with the lecture, and please continue to make good lectures (faster) (more) in the future! :D Thank you! You worked hard~

      • amamov
        Giảng viên

        Thank you so much for the detailed course review!! Congratulations on completing the course! :) We are working on a follow-up lecture. We will repay you with a better lecture. ✨

    • bw1208112727님의 프로필 이미지
      bw1208112727

      Đánh giá 1

      Đánh giá trung bình 5.0

      5

      100% đã tham gia

      It's the best!!! After crawling while crying and eating mustard, the speed was too slow, so I was thinking of a solution and wanted to improve my understanding of Python, and then I happened to find Inflearn and this lecture. Although it's an appendix, it was a curriculum that I really needed because I could see AWS being used in practice. (I'm studying Python, backend, and AWS intensively.) You also explained the basic principles concisely, so I gained a lot of knowledge. I also purchased the lectures on classes and object orientation!! I will keep watching the lectures and diligently make them mine. Please continue to provide great content in the future!!

      • amamov
        Giảng viên

        I'm so glad it helped! Thank you!

    983.518 ₫

    Khóa học khác của amamov

    Hãy khám phá các khóa học khác của giảng viên!

    Khóa học tương tự

    Khám phá các khóa học khác trong cùng lĩnh vực!