Cloud Tasks でも deferred ライブラリが使いたい
ソフトウェアエンジニアの花岡です。deferred ライブラリとは、GAE/Python 2 SE における非同期処理ライブラリで
import logging
from google.appengine.ext import deferred
def do_something_expensive(a, b, c=None):
logging.info("Doing something expensive!")
# Do your work here
# Somewhere else
deferred.defer(do_something_expensive, "Hello, world!", 42, True)
のように書くことで、関数名の示すような時間のかかるタスクをリクエスト外で実行させることができます。
Task Queue の push queue を利用していて、以下のようにタスクが Task Queue に登録されワーカーがタスクを処理してくれます。
deferred ライブラリにはこのワーカーのための WSGI アプリケーションも実装されていて app.yaml に
- url: /_ah/queue/deferred
script: google.appengine.ext.deferred.deferred.application
login: admin
と書くことで個別にハンドラを実装しなくていいのもお手軽でした。
しかし Task Queue の push queue の移行先である Cloud Tasks では
In some cases where you might need a series of diverse small tasks handled asynchronously but you don’t want to go through the work of setting up individual distinct handlers, the App Engine SDK allows you to use runtime specific libraries to create simple functions to manage these tasks. This feature is not available in Cloud Tasks. Note, though, that normal tasks can be scheduled in the future using Cloud Tasks.
というように deferred ライブラリが提供されていません。
複雑な実装ではないため、Cloud Tasks のライブラリとして提供しないのは理由があるのかもしれませんが、deferred ライブラリのお手軽さはかなり便利だったので Task Queue ではなく Cloud Tasks を利用する deferred ライブラリ cloud-tasks-deferred を作ってみました。
Cloud Tasks ではターゲット(Task Queue でのワーカーに相当)は App Engine でなくてもいいのですが、簡単のために以下のような App Engine ターゲット用になっています。
cloud_tasks_deferred パッケージは deferred モジュールと wsgi モジュールからなります。
from google.appengine.ext import deferred
を
from cloud_tasks_deferred import deferred
に変えるだけで動けばいいなぁという思いで作りました。またタスクハンドラの WSGI アプリケーションとしては
google.appengine.ext.deferred.deferred.application
の代わりに
cloud_tasks_deferred.wsgi.application
が使えるようにしました。google.appengine.ext.deferred.deferred.application は GAE/Python 2 SE で利用可能だった webapp2 で実装されています。cloud_tasks_deferred.wsgi.application でも外部ライブラリに依存しないように PEP 3333 に準拠した application 関数を実装しました。
deferred ライブラリの基本的な仕組みはシンプルで、callable とその引数を pickle したものを含むタスクを作成し、それをハンドラで unpickle して実行するというものです。そのため非同期処理できる callable(と引数)には制限があります。詳しくは google.appengine.ext.deferred.deferred の module docstring に記載されています。
cloud-tasks-deferred では簡単のために実装を省略した部分が多々ありますが、Cloud Tasks を利用した deferred ライブラリの基本的な検証はできました。
以上、やってみた系の記事でした。
その他の記事
Other Articles
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2022/06/20220227-A7401987_TP_V4.jpg)
2022/06/03
拡張子に Web アプリを関連付ける File Handling API の使い方
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2022/03/selectmenu-example.png)
2022/03/22<selectmenu>
タグできる子; <select>
に代わるカスタマイズ可能なドロップダウンリスト
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2022/02/cut61_haiku-1200x801.jpg)
2022/03/02
Java 15 のテキストブロックを横目に C# 11 の生文字列リテラルを眺めて ECMAScript String dedent プロポーザルを想う
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/09/IMG_2691-1024x683.jpg)
2021/10/13
Angularによる開発をできるだけ型安全にするためのKabukuでの取り組み
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/02/cut60_thankyou-2400x1602.jpg)
2021/09/30
さようなら、Node.js
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/06/o521h58ch9dcarkugzmp.png)
2021/09/30
Union 型を含むオブジェクト型を代入するときに遭遇しうるTypeScript型チェックの制限について
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/09/fsharp-pipe-rxjs.png)
2021/09/16
[ECMAScript] Pipe operator 論争まとめ – F# か Hack か両方か
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/06/o521h58ch9dcarkugzmp.png)
2021/07/05
TypeScript v4.3 の機能を使って immutable ライブラリの型付けを頑張る
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/06/deno_city.jpeg)
2021/06/25
Denoでwasmを動かすだけの話
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/05/図形ハンドル.png)
2021/05/18
DOMMatrix: 2D / 3D 変形(アフィン変換)の行列を扱う DOM API
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/03/PXL_20210325_052020431.jpg)
2021/03/29
GoのWASMがライブラリではなくアプリケーションであること
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/03/32566700.jpeg)
2021/03/26
Pythonプロジェクトの共通のひな形を作る
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/03/tailwindcss-classnames.png)
2021/03/25
インラインスタイルと Tailwind CSS と Tailwind CSS 入力補助ライブラリと Tailwind CSS in JS
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/03/internet_earth.png)
2021/03/23
Serverless NEGを使ってApp Engineにカスタムドメインをワイルドカードマッピング
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2021/01/kazukiphotomon05_TP_V4.jpg)
2021/01/07
esbuild の機能が足りないならプラグインを自作すればいいじゃない
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/08/tekkou_chuuzou_.png)
2020/08/26
TypeScriptで関数の部分型を理解しよう
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/06/ビルドツールのビルド時間比較.png)
2020/06/16
[Web フロントエンド] esbuild が爆速すぎて webpack / Rollup にはもう戻れない
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/03/cut1_horagai-1200x801.jpg)
2020/03/19
[Web フロントエンド] Elm に心折れ Mint に癒しを求める
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/02/cut60_thankyou-2400x1602.jpg)
2020/02/28
さようなら、TypeScript enum
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/02/20200213_143456.jpg)
2020/02/14
受付のLooking Glassに加えたひと工夫
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/01/devcamp2020w.jpg)
2020/01/28
カブクエンジニア開発合宿に行ってきました 2020冬
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2020/01/nichinan0I9A2734_TP_V4.jpg)
2020/01/30
Renovateで依存ライブラリをリノベーションしよう 〜 Bitbucket編 〜
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/12/photo-71-1200x800.jpg)
2019/12/25
*, ::before, ::after { flex: none; }
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/12/IMGP0045.jpg)
2019/12/21
Top-level awaitとDual Package Hazard
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/12/KM19322A057.jpg)
2019/12/20
Three.jsからWebGLまで行きて帰りし物語
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/12/Screenshot_20191218-150248_Chrome-Canary.jpg)
2019/12/18
Three.jsに入門+手を検出してAR.jsと組み合わせてみた
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/12/Screenshot_20191204-171058_2.jpg)
2019/12/04
WebXR AR Paint その2
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/11/learning-graphql-book.jpg)
2019/11/06
GraphQLの入門書を翻訳しました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/09/kabuku-connect-immediate-quotes.png)
2019/09/20
Kabuku Connect 即時見積機能のバックエンド開発
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/08/ArTank.jpg)
2019/08/14
Maker Faire Tokyo 2019でARゲームを出展しました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/cut42_wearetheworld-1200x801.jpg)
2019/07/25
夏休みだョ!WebAssembly Proposal全員集合!!
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/07/YUKA_schoolkakaeru15215519_TP_V.jpg)
2019/07/08
鵜呑みにしないで! —— 書籍『クリーンアーキテクチャ』所感 ≪null 篇≫
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/07/IMG_20190702_111616.jpg)
2019/07/03
W3C Workshop on Web Games参加レポート
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/06/IMG_20180923_074534.jpg)
2019/06/28
TypeScriptでObject.assign()に正しい型をつける
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/06/devcamp2019s_cover.jpg)
2019/06/25
カブクエンジニア開発合宿に行ってきました 2019夏
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/06/IMG_0478-2.jpg)
2019/06/21
Hola! KubeCon Europe 2019の参加レポート
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/06/Untitled.png)
2019/06/19
Clean Resume きれいな環境できれいな履歴書を作成する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/05/cut20_bunsin-1200x801.jpg)
2019/05/20
[Web フロントエンド] 状態更新ロジックをフレームワークから独立させる
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/04/bean_paste_heaven.jpg)
2019/04/16
C++のenable_shared_from_thisを使う
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/03/Untitled-4.png)
2019/04/12
OpenAPI 3 ファーストな Web アプリケーション開発(Python で API 編)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/03/スクリーンショット-2019-03-29-18.29.33.png)
2019/04/08
WebGLでレイマーチングを使ったCSGを実現する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/03/nat12_se03.jpg)
2019/03/29
その1 Jetson TX2でk3s(枯山水)を動かしてみた
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/04/saizensen-cover.png)
2019/04/02
『エンジニア採用最前線』に感化されて2週間でエンジニア主導の求人票更新フローを構築した話
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/03/jest-on-browsers-e1553589583488.png)
2019/03/27
任意のブラウザ上でJestで書いたテストを実行する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/02/UVqXGZ6.png)
2019/02/08
TypeScript で “radian” と “degree” を間違えないようにする
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/02/Screen-Shot-2019-02-04-at-18.10.23.png)
2019/02/05
Python3でGoogle Cloud ML Engineをローカルで動作する方法
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/siggraph_asia_2018_bof-1.jpg)
2019/01/18
SIGGRAPH Asia 2018 参加レポート
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/cut42_wearetheworld-1200x801.jpg)
2019/01/08
お正月だョ!ECMAScript Proposal全員集合!!
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/cover.png)
2019/01/08
カブクエンジニア開発合宿に行ってきました 2018秋
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/unnamed-2.jpg)
2018/12/25
OpenAPI 3 ファーストな Web アプリケーション開発(環境編)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/unnamed-1.jpg)
2018/12/23
いまMLKitカスタムモデル(TF Lite)は使えるのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2019/01/unnamed-1.png)
2018/12/21
[IoT] Docker on JetsonでMQTTを使ってCloud IoT Coreと通信する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-12.jpg)
2018/12/11
TypeScriptで実現する型安全な多言語対応(Angularを例に)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-7.png)
2018/12/05
GASでCompute Engineの時間に応じた自動停止/起動ツールを作成する 〜GASで簡単に好きなGoogle APIを叩く方法〜
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/no_image.jpg)
2018/12/02
single quotes な Black を vendoring して packaging
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1-1.png)
2018/11/14
3次元データに2次元データの深層学習の技術(Inception V3, ResNet)を適用
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed.png)
2018/11/04
Node Knockout 2018 に参戦しました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-2.jpg)
2018/10/24
SIGGRAPH 2018参加レポート-後編(VR/AR)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1.png)
2018/10/11
Angular 4アプリケーションをAngular 6に移行する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed.jpg)
2018/10/05
SIGGRAPH 2018参加レポート-特別編(VR@50)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-3.png)
2018/10/03
Three.jsでVRしたい
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-4.png)
2018/10/02
SIGGRAPH 2018参加レポート-前編
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-3.jpg)
2018/09/27
ズーム可能なSVGを実装する方法の解説
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1-2.png)
2018/09/25
Kerasを用いた複数入力モデル精度向上のためのTips
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1-3.png)
2018/09/21
競技プログラミングの勉強会を開催している話
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-2-1.png)
2018/09/19
Ladder Netwoksによる半教師あり学習
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-12.jpg)
2018/08/10
「Maker Faire Tokyo 2018」に出展しました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-6.png)
2018/08/02
Kerasを用いた複数時系列データを1つの深層学習モデルで学習させる方法
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/lNXhMvs.jpg)
2018/07/26
Apollo GraphQLでWebサービスを開発してわかったこと
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-2-2.png)
2018/07/19
【深層学習】時系列データに対する1次元畳み込み層の出力を可視化
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-7.png)
2018/07/11
きたない requirements.txt から Pipenv への移行
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1-4.png)
2018/06/26
CSS Houdiniを味見する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-2-3.png)
2018/06/25
不確実性を考慮した時系列データ予測
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-8.png)
2018/06/20
Google Colaboratory を自分のマシンで走らせる
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1-5.png)
2018/06/18
Go言語でWebAssembly
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-13.jpg)
2018/06/15
カブクエンジニア開発合宿に行ってきました 2018春
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-14.jpg)
2018/06/08
2018 年の tree shaking
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-9.png)
2018/06/07
隠れマルコフモデル 入門
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1-6.png)
2018/05/30
DASKによる探索的データ分析(EDA)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-2-4.png)
2018/05/10
TensorFlowをソースからビルドする方法とその効果
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed.jpg)
2018/04/23
EGLとOpenGLを使用するコードのビルド方法〜libGLからlibOpenGLへ
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1.jpg)
2018/04/23
技術書典4にサークル参加してきました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed.png)
2018/04/13
Python で Cura をバッチ実行するためには
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2.jpg)
2018/04/04
ARCoreで3Dプリント風エフェクトを実現する〜呪文による積層造形映像制作の舞台裏〜
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1.png)
2018/04/02
深層学習を用いた時系列データにおける異常検知
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-3.jpg)
2018/04/01
音声ユーザーインターフェースを用いた新方式積層造形装置の提案
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-6.png)
2018/03/31
Container builderでコンテナイメージをBuildしてSlackで結果を受け取る開発スタイルが捗る
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1.png)
2018/03/23
ngUpgrade を使って AngularJS から Angular に移行
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-1.jpg)
2018/03/14
Three.jsのパフォーマンスTips
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-1.jpg)
2018/02/14
C++17の新機能を試す〜その1「3次元版hypot」
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-1.png)
2018/01/17
時系列データにおける異常検知
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-2.png)
2018/01/11
異常検知の基礎
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-3.png)
2018/01/09
three.ar.jsを使ったスマホAR入門
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-4.jpg)
2017/12/17
Python OpenAPIライブラリ bravado-core の発展的な使い方
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-2.png)
2017/12/15
WebAssembly(wat)を手書きする
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1.png)
2017/12/14
AngularJS を Angular に移行: ng-annotate 相当の機能を TypeScrpt ファイルに適用
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-8.png)
2017/12/08
Android Thingsで4足ロボットを作る ~ Android ThingsとPCA9685でサーボ制御)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-2.jpg)
2017/12/06
Raspberry PIとDialogflow & Google Cloud Platformを利用した、3Dプリンターボット(仮)の開発 (概要編)
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-2.jpg)
2017/11/20
カブクエンジニア開発合宿に行ってきました 2017秋
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-3-1.jpg)
2017/10/19
Android Thingsを使って3Dプリント戦車を作ろう ① ハードウェア準備編
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-4.png)
2017/10/13
第2回 魁!! GPUクラスタ on GKE ~PodからGPUを使う編~
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-5.png)
2017/10/05
第1回 魁!! GPUクラスタ on GKE ~GPUクラスタ構築編~
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-4-1.jpg)
2017/09/13
「Maker Faire Tokyo 2017」に出展しました。
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-5.jpg)
2017/09/11
PyConJP2017に参加しました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-6.jpg)
2017/09/08
bravado-coreによるOpenAPIを利用したPythonアプリケーション開発
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-7.jpg)
2017/08/23
OpenAPIのご紹介
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-3.png)
2017/08/18
EuroPython2017で2名登壇しました。
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-8.jpg)
2017/07/26
3DプリンターでLチカ
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-3-1.png)
2017/07/03
Three.js r86で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-4-1.png)
2017/06/21
3次元データへの深層学習の適用
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-9.jpg)
2017/06/01
カブクエンジニア開発合宿に行ってきました 2017春
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-5-1.png)
2017/05/08
Three.js r85で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-10.jpg)
2017/04/10
GCPのGPUインスタンスでレンダリングを高速化
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-11.jpg)
2017/02/07
Three.js r84で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-6-1.png)
2017/01/27
Google App EngineのFlexible EnvironmentにTmpfsを導入する
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-11.jpg)
2016/12/21
Three.js r83で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-9.png)
2016/12/02
Three.jsでのクリッピング平面の利用
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-11.jpg)
2016/11/08
Three.js r82で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-3.jpg)
2016/12/17
SIGGRAPH 2016 レポート
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-6.png)
2016/11/02
カブクエンジニア開発合宿に行ってきました 2016秋
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-3.jpg)
2016/10/28
PyConJP2016 行きました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-4.png)
2016/10/17
EuroPython2016で登壇しました
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1.png)
2016/10/13
Angular 2.0.0ファイナルへのアップグレード
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-11.jpg)
2016/10/04
Three.js r81で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-3-2.jpg)
2016/09/14
カブクのエンジニアインターンシッププログラムについての詩
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-5-1.jpg)
2016/09/05
カブクのエンジニアインターンとして3ヶ月でやった事 〜高橋知成の場合〜
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-11.jpg)
2016/08/30
Three.js r80で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-11.jpg)
2016/07/15
Three.js r79で何が変わったのか
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-15.jpg)
2016/06/02
Vulkanを試してみた
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-1-4.jpg)
2016/05/20
MakerGoの作り方
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/12/unnamed-2-5.png)
2016/05/08
TensorFlow on DockerでGPUを使えるようにする方法
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-2.png)
2016/04/27
Blenderの3DデータをMinecraftに送りこむ
![](https://www.kabuku.co.jp/wp/wp-content/uploads/2018/11/unnamed-1.jpg)
2016/04/20
Tensorflowを使ったDeep LearningにおけるGPU性能調査
![→](https://www.kabuku.co.jp/wp/wp-content/themes/kabuku2018/images/arrow-right.png)
![←](https://www.kabuku.co.jp/wp/wp-content/themes/kabuku2018/images/arrow-left.png)
関連職種
Recruit
![→](https://www.kabuku.co.jp/wp/wp-content/themes/kabuku2018/images/arrow-right.png)
![←](https://www.kabuku.co.jp/wp/wp-content/themes/kabuku2018/images/arrow-left.png)