WHY 機械学習のモデルはできたけど、サービスインするには何らかの形でweb側から動作できる形にする必要があります。 Railsだと重すぎるし、Go言語使いたい。 そのようなモチベーションから私はGo言語でAPIを作成しました。 Go言語のWEBフレームワークは多々ありますが、今回紹介する記事はrevelを用いています。 コンテナとコードを公開しているのですぐに動作を確認することが可能にしています。 Docker: https://hub.docker.com/r/masayaresearch/go_api/ github: https://github.com/SnowMasaya/go_revel_jwt_mysql revelを採用した理由は下記です。 testのための機能が揃っている deployも簡単 必要なサンプルがある WHAT 何をすることを想定しているか - 簡単な認証
bash-oo-framework(Bash Infinity)というものがあります。 ShellScriptを書くときは、これが便利になることがあります。 Bashでフレームワークを使うこと自体にはあまり意味があるとは思えませんが(Bashは速度及び、環境にあまり左右されず使えるため)、しかし、ShellScriptの可読性は向上すると思われます。 $ bash $ which bash /usr/local/bin/bash $ git clone https://github.com/niieani/bash-oo-framework $ cd bash-oo-framework $ vim your-script.sh
追記 (2016/11/09) SERVERLESSフレームワークでのデプロイのデフォルトがLAMBDAからLAMBDA_PROXYに変更されていました。それに伴い文章の修正を行いました。画像の差し替えはできていません。また、この記事を見て注意書きを増やしました。 はじめに ついに、SERVERLESSフレームワークが正式リリースされました!👏 少し反応が遅れてしまい、すでにv1.0.3(2016/10/24現在)になっていましたが、触ってみたのでまとめました。ちなみに前回のRC版の触ってみたの記事はこちらです。 この記事のゴール AWSと組み合わせてAPIをデプロイするところまで使ってみます。 AWSでは、API GatewayとLambdaを組み合わせてWebAPIを作成できます。それをSERVERLESSフレームワークを通してコマンド一つで簡単にデプロイできるようになります。このフ
2. 2Copyright©2016 NTT corp. All Rights Reserved. • 名前:岩塚 卓弥 • 所属:NTT ソフトウェアイノベーションセンタ • NTTの研究所のうちソフトウェアを専門に扱う • 自部署ではソフトウェア工学を研究 • Springベースのグループ共通フレームワークの整備を担当 • Spring関連: • Spring I/O, SpringOne それぞれ2015,2016に参加 • 改訂新版 Spring入門,Spring徹底入門 レビュアー • JSUG幹事 Introduction 3. 3Copyright©2016 NTT corp. All Rights Reserved. • 名前:堅田 淳也 • 所属:NTT ソフトウェアイノベーションセンタ • NTTの研究所のうちソフトウェアを専門に扱う • 自部署ではソフトウェア工学を研
Serverless Frameworkとは 最近巷で騒がれているサーバーレスなアーキテクチャを容易に作成、管理できる一般的なフレームワークというよりツールに近いもの。 Severless FrameworkのAWS環境においては、CloudFormation・Lambda・API Gateway・DynamoDB・S3・IAMなどのサービスを組み合わせてサーバーレスなアーキテクチャを管理・構成している。 今回は、Severless Frameworkを用いてLambda・API Gateway・DynamoDBのアーキテクチャで簡単なREST APIを実装する。 なお、本記事ではv1.0.xを対象としている。 v0.xと大きく構成・設定が変わっているので注意。 環境 今回はAWS上で、Severless Frameworkを用いて簡単なREST APIを作成する。 Severless F
需要は多分ない。 ヘッダオンリーなのでインクルードすれば使えます。 https://github.com/nocotan/otus 依存 Boost cpp-netlib Hello World #include "otus.h" int main() { ots::otus app = ots::otus(); app.route("/", "GET", [](ots::request req){ return "Hello, World!"; }); app.run("localhost", "8080"); return 0; } #include "otus.h" int main() { ots::otus app = ots::otus(); app.route("/", "GET", [](ots::request req){ return ots::render_templ
東京Ruby会議 11(2016年5月28日収録)
UNIXやMacを使用しているユーザーならば誰でも一度はシェルスクリプトを作成した経験があると思います。どんな環境でも使い回せるポータビリティの高さが魅力ですが、プログラミング言語としてみると独特な部分が多く、なんとなく苦手意識を持っている方も多いかもしれません。 本日紹介する「Bash Infinity Framework」はそんなシェルスクリプトの概念を完全に変えてしまうBash用のフレームワークです。 モジュラーかつ軽量で、C#やJava、JavaScriptといった他の言語のコンセプトを取り入れ、プラグ&プレイで必要な機能だけを追加していける特徴を持っています。 主な特徴は以下の通りです: 自動エラーハンドリング 名前付きパラメータ($1、$2ではなくて) 配列とマップをパラメータとして引き渡せる try-catchの実装 独自例外のthrow キーワードのインポート 出力を改善す
Bottle: Python Web Framework¶ Bottle is a fast, simple and lightweight WSGI micro web-framework for Python. It is distributed as a single file module and has no dependencies other than the Python Standard Library. Routing: Requests to function-call mapping with support for clean and dynamic URLs. Templates: Fast and pythonic built-in template engine and support for mako, jinja2 and cheetah templat
Swagger places API specifications such as OpenAPI, AsyncAPI, and JSON Schema at the core of its architecture, which are crucial for guiding teams through the entire lifecycle of API design and documentation. This strategic focus ensures that our suite, including open source tools and SwaggerHub, delivers unparalleled efficiency and a seamless user experience. Explore the API Specifications Discove
JavaScriptでフレームワークを使うという発想は、以前にはあまりなかった。 JavaScriptはライブラリさえあれば十分に機能していたからだ。 しかし、Webアプリケーションが複雑になるにつれてJavaScriptフレームワークも一般的になりつつある。 現在注目を集めているJavaScriptフレームワークに、どのようなものがあるかを今からご紹介していく。 色々なフレームワークがここ数年で登場してきており、それぞれ特徴が大きく違っている。 今人気のJavaScriptフレームワークを知ることで、学習や構築をはじめる際の参考にして頂ければ幸いだ。 JavaScriptフレームワークその1 AngularJS 概要 AngularJSは、もっとも有名なJavaScriptフレームワークのひとつだ。 エンタープライズ系(企業向けのシステムを作る企業の事)のフレームワークとして人気が高く、
すっかり暑くなってきて汗かきな自分につらい季節になってきました。森です。 環境設定するのは大変だ 最近、サーバー構築だの調査だののなんだかんだの都合で同僚のマシンさわって設定やら環境変数やら覗くことが多いのですが、 そのとき.profileやら.bashrcなどシェル(bash)の設定がほぼいじられてないままで使ってたりしてつらいなと思うわけです。 もうちょっと色々設定を弄って楽にしたほうがいいぞよと話をしつつ、 どうせ弄ってないんだし俺の好きに設定していいよねと勝手にalias追加したり環境変数設定したりさせてもらってますが、 そもそも自分のマシンなのだから自分の好みにいじったほうが幸せなはずです。 とはいうものの0から.profileなど弄ったりするのも なにをどう設定すればいいのかわからん というのも事実。 なのでbashの設定をいい感じにしてくれるフレームワーク(でいいのかな…)の
JavaScriptにはむしろもっと抽象化がもたらされるべき - Qiitaという記事で、もう少し踏み込んだ話を書いてみました。 某所でReact.js界隈の人に聞きたいというフレームが発生したのだが、はてなブックマークでコメントしたらIDコールされたので、反論をここに書くことにした。(最近は技術系記事はQiitaにしか書いてないので)。 あくまで僕が考えるなので、JavaScript界の人達が本当はどう思っているかはわからない。そもそもJavaScriptを本格的にさわり始めたのごく最近なので、JavaScript界では異端かもしれない。 元記事では論点(感情)が複数ごちゃまぜになっていたので僕は辛口のブコメを書いたのだが、論点をごちゃ混ぜにするのは意図的にやってるのならばただの詭弁だ。なので、まずは元の記事での論点を整理する。 jQuery (or フレームワーク?) 言語採用 Rea
ここでは軽量・コンパクトをウリにしているPythonのWebアプリケーションフレームワークであるBottle、Flask、Falconについて比較します。これらのフレームワークに対して、同様のリクエストを送り、同様のレスポンスを返させます。 記事を書くにあたり使用したもののバージョンは下記の通りです。 Ubuntu 14.04.2 Python 3.4.0 Bottle 0.12.8 Flask 0.10.1 Falcon 0.2 準備 "/foo"にアクセスすると"Hello foo"と応答するように、各フレームワークで極力同じように書きます。FalconはCythonに公式に対応していますが、今回はCythonを使用していません。 Bottle import bottle app = bottle.Bottle() @app.route('/<name>') def index(nam
PythonのWebフレームワークで間違った選択をすることは非常に困難であると、Pyramidのintroductionページに記載されています。調査した結果まったくもってその通りだという結論に至りました。2015年12月に個人でWebサイトを構築する時に、どのWebフレームワークで構築するかで迷いに迷いました。この記事はそのときの検討メモです。 速度 みんな大好きTechEmpower Web Framework Benchmarksで速度比較。サーバ費用をケチって運用費をとにかく下げたいので、その時点で重大長厚なdjangoは検討対象から外れました。bottleはやはり早い。 Webフレームワーク Yes/Noチャート Yes/Noチャートにまとめてみました。ログイン機能は構築しないためSessionは必要ありません。シンプルで学習コストが低く高速に動作するFlaskで構築することにし
ISUCON の季節ですね。 ISUCON では慣習的に各言語で代表的なマイクロフレームワークが使われるのですが、 Python では今のところ Flask がずっと使われています。 Flask は確かに、簡単なサンプルアプリを書くときの見た目はマイクロフレームワークになっています。 しかし、構造的には沢山のフック、シグナルがあったりしていて、重量級の設計になっています。 Flask 本体と Werkzeug を合わせると数万行のサイズです。単なる Hello World アプリでも、数十の関数呼び出しが裏で動いています。 Bottle も、 Flask と同じくマルチスレッド対応で、スレッドローカルを使ったコンテキストスタックがある、拡張機能もあるフレームワークですが、構造は Flask よりも大分質素です。 ソースコードも1ファイル3000行代で、その分フレームワークのオーバーヘッドも
Lagomとは? LagomはLightbend社(旧Typesafe社)がリリースした新しいマイクロサービス向けのフレームワークです。 www.lightbend.com 元々Scalaの開発元であったLightbend社が開発しているだけあり、PlayやAkka、sbtといったScalaベースの技術基盤上に構築されていますが、現時点ではJava向けのAPIのみ提供されているJava用のフレームワークとなります。*1 これまでもSpring Bootなど手軽に使えるAPIサーバ向けのWebフレームワークは存在したわけですが、Lagomは最初からリアクティブなマイクロサービスの構築を前提に設計されており、いわば「マイクロサービスネイティブ」とも呼ぶべきフレームワークになっています。 実際にLagomを使うかどうかはさておき、新しいコンセプトのフレームワークなので学ぶことも多いのではないかと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く