並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 18 件 / 18件

新着順 人気順

AsyncIOの検索結果1 - 18 件 / 18件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

AsyncIOに関するエントリは18件あります。 pythonPython非同期 などが関連タグです。 人気エントリには 『Python multiprocessing vs threading vs asyncio - JX通信社エンジニアブログ』などがあります。
  • Python multiprocessing vs threading vs asyncio - JX通信社エンジニアブログ

    エンジニアの鈴木(泰)です。 今回は、multiprocessingとthreadingとasyncioの違いとはなんだろう?という問に挑戦してみたいと思います。 この問の答えをグーグル先生に聞いてみると、非常にたくさんの情報がヒットします。しかしながら、どの情報も断片的なものばかりで(本記事もそうなのかもしれません)、色々と本を読んだりネットを漁ったりして、情報を補完しなければなりませんでした。 本記事は、僕が調べた限りの情報を集約し、この問に対する結論を1つの記事にまとめたものとなっています。 前提 マルチプロセスとは マルチスレッドとは Pythonにおけるマルチスレッド 本題 マルチプロセス(multiprocessingライブラリ)を利用したほうが良い場合 cpu_sec.py cpu_multiprocessing.py cpu_threading.py cpu_asyncio

      Python multiprocessing vs threading vs asyncio - JX通信社エンジニアブログ
    • [Python] asyncioに入門してみたメモ - Qiita

      asyncioって? asyncio は async/await 構文を使い 並行処理の コードを書くためのライブラリです。 asyncio は、高性能なネットワークとウェブサーバ、データベース接続ライブラリ、分散タスクキューなどの複数の非同期 Python フレームワークの基盤として使われています。 asyncio --- 非同期 I/O — Python 3.9.0 ドキュメント import asyncio async def main(): print('Hello ...') await asyncio.sleep(1) print('... World!') # Python 3.7+ asyncio.run(main()) なにこれ、C#の async/await みたいなノリじゃないですか…。 Python使いなのに、恥ずかしながらこの前まで知りませんでした。 たまにC#の

        [Python] asyncioに入門してみたメモ - Qiita
      • Python Asyncio入門 - Qiita

        Asyncioは、大雑把に言えば、PythonでNodeのような非同期プログラムを行えるようにするモジュールです。Pythonでは、スレッド(concurrent.futures)を用いて並行プログラムを書くことができますが、Asyncioではもう少し軽量の並行プログラムを実現できます。 この辺は「Fluent Python」に詳しいですが、いかんせんAsyncioの箇所は最新のPythonのバージョンで大きく変更されています。以下の公式サイトが貴重な情報源になります。 Asyncio公式サイト ここでは、最も有名なAsyncioライブラリであるaiohttpを使ったソースコードを説明することで、Asyncioの概念を見ていきたいと思います。 aiohttp公式サイト 以下の関連記事を投稿しました (追加 2021/02/13) Django 3.1のAsync Views - Qiita

          Python Asyncio入門 - Qiita
        • Python の asyncio は超便利 - Qiita

          Python の asyncio (公式ページ) は超便利なので紹介します。 ■何が便利? 要するに JavaScript ではもはや当たり前になっている async/await が実現できます。 つまり、非同期(処理をしている間、同期して完了を待つのでなく、次の処理を実行するやり方)を実現します。 非同期により、全体の 処理速度を爆上げ できる場合がよくあります。 例えば、外部サービスリクエストや、ファイル・DBへの読み書きなど、I/O関連は時間がかかる割にCPUは空いてたりするので、そこが有効に活用されるようになるわけです。 多くのシステムはI/Oが大量にあったりするので圧倒的です。 ■それってスレッドでもできるのでは? もちろん可能ですが、コンセプトが異なり、スレッドに比べて 圧倒的にお手軽 です。 スレッドと何が違うのかというと、主な違いは、スレッドは複数の処理が同時に走るというこ

            Python の asyncio は超便利 - Qiita
          • Pythonにasyncioってあるけどよく知らなかったので調べた

            1.はじめに Pythonのasyncioは、async・await構文を利用して並行処理を行うため公式ライブラリです。 筆者はいくつかのライブラリでasync・awaitまたはasyncioなるキーワードを目にしつつも、理解を後回しにしてきました。この度一念発起して情報を整理し、同じような人たちのために情報をまとめました。 まず、asyncioの基本的な使い方を改めて整理しました。 特に、並行処理のタスク遷移と例外周りについて、パッと検索した範囲ではあまり情報が見つからなかったため、深掘りしてまとめました。 執筆当時の検索結果では、asyncioの古い書き方や機能を利用しているものも多くありました。この記事ではなるべく執筆現在の最新バージョン(Python 3.11)で推奨されている書き方でサンプルを作ってあります。 ただし、asyncioについて色々と書いたものの、async・awai

              Pythonにasyncioってあるけどよく知らなかったので調べた
            • 「Django Async Viewって何がおいしいの?」 知ってしまえば怖くない非同期IO処理“asyncio”

              「DjangoCongress JP」は日本で開催されるDjango Webフレームワークのカンファレンスです。参加する全ての人がDjangoについて交流し、出会い、学び、楽しみ、深い理解を得ることを目的にしています。福田氏は、Django 3のASGI対応について発表しました。全2回。前半は、ASGI対応の概要とasyncioの基礎について話しました。 Django 3の目玉の1つ「ASGI対応」 福田隼也氏:「Django 3.2 ASGI対応 - こわくないasyncio基礎とasync viewの使い所」ということで、今日お話しします。福田です、よろしくお願いします。 まずお前誰だよというところで、福田隼也と申します。「Twitter」は@JunyaFffといいます。長野県の会社の株式会社日本システム技研に所属しています。 Webエンジニアをしていて、弊社の運営する「GEEKLAB

                「Django Async Viewって何がおいしいの?」 知ってしまえば怖くない非同期IO処理“asyncio”
              • botterのためのasyncio

                現在ステーブルリリースのPython 3.9を対象にしています。以前のバージョンであると動作しない可能性があります。 環境構築などが分からない方はこちらの記事を参考にしてみてください。 Windows環境だとイベントループに関するRuntimeErrorが発生することがあります。 Windows側の不具合 [1] のようで、以降でasyncio.run(main())と記載されるコードの1行上に下記のコードを追加してください。そうすることでエラーは回避されます。 asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy()) REST API Basic Usage 1 では早速皆さんご存じの取引所 Bybit のREST APIを利用してHTTP通信を行っていきます。 Ticker情報 を取得してみましょう。

                  botterのためのasyncio
                • Python 3.11の新機能:asyncio.TaskGroupを使った予測可能でより安全な非同期処理 | gihyo.jp

                  Python Monthly Topics Python 3.11の新機能:asyncio.TaskGroupを使った予測可能でより安全な非同期処理 こんにちは、福田(@JunyaFff)です。第4回目である10月の「Python Monthly Topics」は、2022年10月24日にリリース予定[1]のPython 3.11に追加されるasyncioの新機能asyncio.TaskGroupを紹介します。 Python 3.11の新機能 高速化が話題のPython 3.11ですが、今回取り上げるのは非同期I/Oで並行処理を実現する標準ライブラリasyncioの新機能asyncio.TaskGroupです。asyncio.TaskGroupは複数のタスクを並行処理する高レベルAPIになります。同様の既存機能(asyncio.gather()やasyncio.wait())と大きく違う2

                    Python 3.11の新機能:asyncio.TaskGroupを使った予測可能でより安全な非同期処理 | gihyo.jp
                  • 図解でわかる asyncio 入門 - Qiita

                    前置き 業務で大量のWeb APIを並行で投げる必要があり、良い方法がないか探したところ、asyncio が良いソリューションだったため勉強した。勉強したことをまとめて、アウトプットするということで情報をここで公開する。これから asyncio を学習する人の役に立つとうれしい。 想定読者 並列・並行処理の概念はわかっているが、asyncio の処理がいまいち理解できてないので理解したい人 検証環境 Python 3.9.4 Jupyter Notebook 上で検証 asyncio とは asyncio (→公式ドキュメント) とはざっくり言ってしまうと、async/await 構文を使ってシングルスレッドで並行処理を行うためのライブラリ。 Python には並列処理・並行処理を行うためのライブラリがいくつかあるが、シングルスレッドで動くのがポイント。下記図のように、あるライブラリではマ

                      図解でわかる asyncio 入門 - Qiita
                    • How Python Asyncio Works: Recreating it from Scratch

                      How Python Asyncio Works: Recreating it from Scratch Posted on May 6, 2024 Right now, asyncio is one of the trendier topics in Python, and rightfully so – It’s a great way to handle I/O-bound programs! When I was learning about asyncio, It took me a while to understand how it actually worked. But later, I came to find out that it’s basically just a really nice layer on top of Python Generators. In

                        How Python Asyncio Works: Recreating it from Scratch
                      • asyncioを使ってみよう - PythonOsaka

                        threadingモジュールは複数のスレッドを生成することで同時実行を実装し、multiprocessingモジュールはシステムプロセスを使用して同時実行を実装します。これに対して、asyncioは、アプリケーションの一部が協力して最適なタイミングでタスクを明示的に切り替えるシングルスレッドのシングルプロセスアプローチを使用します。 ほとんどの場合、このコンテキストスイッチングは、プログラムがデータの読み取りまたは書き込みの待機をブロックするときに発生しますが、asyncioには、システム信号を処理するために、あるコルーチンが別のコルーチンの完了を待機できるように、また、アプリケーションが作業内容を変更する理由となる可能性のある他のイベントを認識するために、特定の将来の時間に実行されるコードのスケジューリングのサポートも含まれています。

                          asyncioを使ってみよう - PythonOsaka
                        • “asyncio”は怖くない! Djangoでも非同期IO/並行処理の恩恵を受けられる

                          「DjangoCongress JP」は日本で開催されるDjango Webフレームワークのカンファレンスです。参加する全ての人がDjangoについて交流し、出会い、学び、楽しみ、深い理解を得ることを目的にしています。福田氏は、Django 3のASGI対応について発表しました。全2回。後半は、Django Async Viewの使い所とAsync ORMについて話しました。前回はこちら。 コルーチンをawaitするだけでは並行処理はできない 福田隼也氏:ここまで並行には処理をしていないので、上のループの中で、もう少しawaitの動きを見ていきたいと思います。 考え中のお客さま3人から注文を受けてみましょう。先ほどのコルーチンです。上のところで注文を受けて、下のところでオーダーを受け付けるというところ。それぞれのコルーチンにawaitを付けて、menuを受け取ってみたいと思います。3人は考

                            “asyncio”は怖くない! Djangoでも非同期IO/並行処理の恩恵を受けられる
                          • Temporal Python 1.0.0 – A Durable, Distributed Asyncio Event Loop

                            We are excited about the GA release of the Temporal Python SDK. Python is now a fully-supported workflow language in Temporal, and our use of native asyncio constructs makes it a perfect fit for Python developers looking to write durable workflows. Here are some links to read more about Temporal Python: Repository Application Development Guide Code Samples API Documentation Like essentially all of

                            • HTTPXとasyncioを利用したPythonの非同期HTTPリクエスト - Qiita

                              asyncioによる非同期リクエストで大切なこと asyncioは外部IOの待ち時間でタスクを切り替えます。 大切なのは、外部のIOを行う処理がasyncioに対応していることです。 asyncioを利用した非同期処理を実装する場合、標準ライブラリであるurllib.requestやrequestsでなく、aiothttpやHTTPXを利用する必要があります。 今回の例ではHTTPアクセスですが、データベースアクセスでも同様です。 postgresの場合、psycpg2ではなく、asyncpgや今年の夏asyncioに対応したベータがリリースされたpsycpg3を利用する必要があります。 HTTPXを利用する httpx.AsyncClient() がasyncio対応のクライアントを返すコンテキストマネージャーです。with文で使います。 アクセスする先は元記事同様、PokemonのAP

                                HTTPXとasyncioを利用したPythonの非同期HTTPリクエスト - Qiita
                              • Guide to Concurrency in Python with Asyncio ⋆ Mark McDonnell

                                integralist Compassionate Listener. Polyglot. Author. Husband. Father. He/Him. This is a quick guide to Python’s asyncio module and is based on Python version 3.8. Introduction Why focus on asyncio? A quick asyncio summary A quick concurrent.futures summary Green Threads? Event Loop Awaitables Coroutines Tasks Futures Running an asyncio program Running Async Code in the REPL Use another Event Loop

                                • asyncioで並行処理すると本当に速くなるのか、実際にベンチマークしてみた

                                  こんにちわ alivelimb です。 FastAPI などで見える機会が増えたasyncioですが、本当に恩恵があるのかベンチマークテストしてみました。 はじめに 「そもそもasyncioって何?」という方のために簡単に紹介してみます。 詳細は公式ドキュメントまたは@JunyaFffさんのスライドが非常にわかりやすいです。 asyncio とは? asyncio はその名の通り非同期(async) I/O の実装に活用できます。 ネットワーク通信を含む Input/Ouput の際は処理待ちが発生し CPU を持て余してしまいます。 File I/O の間 CPU を別の処理に割り当てることで CPU をフル活用させることができます。 フル活用と言ってもasyncio単体では 1 スレッドの CPU 使用率が 100%ということです。 multiprocessing, joblibなどの

                                    asyncioで並行処理すると本当に速くなるのか、実際にベンチマークしてみた
                                  • ASGIアプリケーション入門 - こわくないasyncio基礎と非同期IO

                                    PyConJP2021の登壇資料です。

                                      ASGIアプリケーション入門 - こわくないasyncio基礎と非同期IO
                                    • Python Asyncio: The Complete Guide - Super Fast Python

                                      Last Updated on November 22, 2023 Python Asyncio provides asynchronous programming with coroutines. Asynchronous programming is a popular programming paradigm that allows a large number of lightweight tasks to run concurrently with very little memory overhead, compared to threads. This makes asyncio very attractive and widely used for Python web development, Python APIs that make web calls, and co

                                        Python Asyncio: The Complete Guide - Super Fast Python
                                      1

                                      新着記事