クリプト

APIの実行速度を上げてみた ~マルチスレッド編~

がくし's icon'
  • がくし
  • 2018/11/09 15:20


Content image


●著者

Content image

がくしです。






Content image


●目的

繰り返しAPIを呼び出すコードを書くと、実行に長い時間がかかってしまいます。そのため本稿では、実行速度を改善させるマルチスレッドという技術を使ったコードを紹介します。ここではコードと備忘録的なメモを載せる程度に留めますが、マルチスレッドの便利さだけでもお伝えできればと考えています。


Content image


●プログラム概要

最新記事一覧を取得した後、各記事のlike数を取得します。記事の数だけlike数取得APIを叩くことになるので、そこをマルチスレッドで処理しました。


Content image


●下準備

APIで記事一覧取得とlike取得を実行するコード


Content image


●マルチスレッド処理

Content image


●補足

Thred

target:処理内容

args :targetに渡す引数

start :処理開始

join  :処理終了まで待機


Queue

マルチスレッドの入出力を管理


処理イメージ

入力値

worker_queue

↓(各スレッドに振り分け)

マルチスレッド処理

result_queue

↓(順番を決めて処理)

出力値


Content image

●シングルスレッド処理

性能比較のための、マルチスレッドを使わない処理をするコード

Content image


●性能比較

最新記事1000件のlike数の取得にかかる時間を、シングルスレッドとマルチスレッドで比較しています。二倍以上の速さになっていることが分かると思います。


シングルスレッド

Content image

マルチスレッド

Content image


Content image


●最後に

全くの説明不足ではありましたが、マルチスレッドで実行速度が上がったことは伝わったかと思います。実行速度に苛まれている方のお役に立てれば幸いです。


かしこ。

公開日:2018/11/09
獲得ALIS:60.07
がくし's icon'
  • がくし
  • @gaxiiiiiiiiiiii
養蜂家。暇な時にプログラミングをして遊んでる。

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
クリプト

バイナンスの信用取引(マージン取引)を徹底解説~アカウントの開設方法から証拠金計算例まで~

Like token Tip token
3.50 ALIS
Eye catch
クリプト

Polygon(Matic)で、よく使うサイト(DeFi,Dapps)をまとめてみた

Like token Tip token
236.30 ALIS
Eye catch
クリプト

【初心者向け】$MCHCの基本情報と獲得方法

Like token Tip token
32.32 ALIS
Eye catch
クリプト

UNISWAPでALISをETHに交換してみた

Like token Tip token
40.40 ALIS
Eye catch
クリプト

Uniswap(ユニスワップ)で$ALISのイールドファーミング(流動性提供)してみた

Like token Tip token
59.99 ALIS
Eye catch
クリプト

【DeFi】複利でトークンを運用してくれるサイト

Like token Tip token
54.01 ALIS
Eye catch
クリプト

【第8回】あの仮想通貨はいま「テレグラム-TON/Gram」

Like token Tip token
69.90 ALIS
Eye catch
クリプト

Eth2.0のステークによるDeFiへの影響を考える。

Like token Tip token
44.10 ALIS
Eye catch
クリプト

17万円のPCでTwitterやってるのはもったいないのでETHマイニングを始めた話

Like token Tip token
46.60 ALIS
Eye catch
クリプト

2021年1月以降バイナンスに上場した銘柄を140文字以内でざっくりレビュー(Twitter向け情報まとめ)

Like token Tip token
38.10 ALIS
Eye catch
クリプト

ジョークコインとして出発したDogecoin(ドージコイン)の誕生から現在まで。注目される非証券性🐶

Like token Tip token
38.31 ALIS
Eye catch
クリプト

コインチェックに上場が決まったEnjin Coin(エンジンコイン)コインを解説

Like token Tip token
21.49 ALIS