タグ

2017年10月12日のブックマーク (14件)

  • Supervisorで簡単にデーモン化 - Qiita

    やりたいこと 常時起動させたいスクリプトなど、デーモンプロセスとして動かしたいことがあると思います。 しかし例えば/etc/init.dのスクリプトなどを自分で書くとなると・・・ PIDファイルの管理をいちいち書くのが面倒でミスりやすい。 ステータスの取得とかも同様。 そもそもそんなローレベルのツールを使わなくてもよい。もっとユーザレベルに近いもので充分。 一般ユーザで起動停止くらいさせたい。 つまりは、大体同じ様になるはずの 「プロセス管理スクリプト書くのが面倒」 なのと、 サービスとして登録してしまうと 「基はrootで起動停止管理」 になるので、 この2つを避けたいということになります。 systemdを使うとスクリプトを書く必要はなくなりますが、 rootでなければ起動停止ができない、という扱いにしたくない。 stdout/errに色々吐きまくって直したくない。 システムのサービ

    Supervisorで簡単にデーモン化 - Qiita
    oppara
    oppara 2017/10/12
  • Dockerでsupervisorを使う時によくハマる点まとめ

    morimorihoge です。最近格ゲー部に入部してGGXrd REV 2を始めました。高校時代にGGXをやっていたときと感覚が違いすぎてまだ全然ですが、チマチマ練習中です。 Dockerにはinitプロセスがないよ問題とsupervisor さて、Dockerコンテナはそのままではsystemdやsysvstat経由で起動を管理するサービス(nginxとかpostgresqlとかの永続系サービス)がうまく動きません。 これはDockerの設計思想によりinitプロセスがいないことが原因で、この辺りは Docker and the PID 1 zombie reaping problem にいい感じでまとまっています。 もしsystemdが使いたければDockerではなくsystemd-nspawnを使うのが楽でしょう、という話になるのですが、Dockerでinitプロセスを扱う試みもあ

    Dockerでsupervisorを使う時によくハマる点まとめ
    oppara
    oppara 2017/10/12
  • Supervisorのプロセス異常終了をメールで通知 - Qiita

    Supervisorで簡単にデーモン化 上記の続き。 目的 プロセスが落ちてautorestartが頻繁に使われるようなら、それを検知しておきたい。 いくらautorestartを指定していても、異常終了後に即起動できない状態だと デフォルト5回リトライで落ちてしまう。 supervisorでデーモン化したプロセスが終了してしまった場合に、 メールで通知させたい。 supervisorのイベントリスナー 異常終了イベントを検知するイベントリスナーを実装して組み込めばいい。 バージョン3.0からの機能。 公式のドキュメントとしては以下の機能の部分。 メールを送るだけのリスナーなら、 superlance パッケージがリスナーの実装の一つとして存在するので、今回はこれを使う。 superlance pythonのパッケージ。 記述時点でversion 0.11を使用。 インストールは easy

    Supervisorのプロセス異常終了をメールで通知 - Qiita
    oppara
    oppara 2017/10/12
  • Supervisorで簡単にデーモン化 - Qiita

    やりたいこと 常時起動させたいスクリプトなど、デーモンプロセスとして動かしたいことがあると思います。 しかし例えば/etc/init.dのスクリプトなどを自分で書くとなると・・・ PIDファイルの管理をいちいち書くのが面倒でミスりやすい。 ステータスの取得とかも同様。 そもそもそんなローレベルのツールを使わなくてもよい。もっとユーザレベルに近いもので充分。 一般ユーザで起動停止くらいさせたい。 つまりは、大体同じ様になるはずの 「プロセス管理スクリプト書くのが面倒」 なのと、 サービスとして登録してしまうと 「基はrootで起動停止管理」 になるので、 この2つを避けたいということになります。 systemdを使うとスクリプトを書く必要はなくなりますが、 rootでなければ起動停止ができない、という扱いにしたくない。 stdout/errに色々吐きまくって直したくない。 システムのサービ

    Supervisorで簡単にデーモン化 - Qiita
    oppara
    oppara 2017/10/12
  • API Gateway+Lambda+Serverless+TravisでAPI開発のCI/CDパイプラインを構築する - Qiita

    概要 API GatewayLambdaを使ったAPI開発時のCI/CDについての記事です。 僕がnode.jsを普段から使用しているため、解説はnodeがベースになっています。 https://github.com/horike37/serverless-api-integration-test-sample ソースはすべてGitHubに上がってますのでそちらもご確認ください。 CIで実施する内容 以下の内容をCIとして行うことを考えます。 ESLintによる構文チェック Mocha, Chaiを使用したユニットテスト APIAWSへデプロイしてテストを行うインテグレーションテスト CDで実施する内容 以下のようなルールでデプロイのサイクルを回します。 Gitのdevelopmentブランチへのpushをテスト環境へのデプロイと想定。 構文チェックとユニットテストを実施。 ビルドが通

    API Gateway+Lambda+Serverless+TravisでAPI開発のCI/CDパイプラインを構築する - Qiita
    oppara
    oppara 2017/10/12
  • 「型を意識した PHP アプリケーション」を発表しました / PHP カンファレンス 2017 - Shin x Blog

    PHP カンファレンス 2017 にて「型を意識した PHP アプリケーション」を発表してきました。 発表 github.com 型宣言が付いていないコードに、スカラー型の型宣言、ドメインに特化した型の型宣言と型(クラス)の実装を行うライブコーディングをメインにしました。 ライブコーディングの部分は動画を見た方が分かりやすいです。下記の 13:00 頃からコーディングがはじめるので、こちらも合わせてどうぞ。 きっちりまとめられた資料をベースに発表するのも良いのですが、実際にコードを書いていくのを見た方がイメージも伝わりやすいですし、私自身も人がコードを書く様を見るのが好きなので、この構成にしました。 また、質疑応答の時間を長めに取りたかったので、編は少し短めにして時間が余るように調整しました。当初の内容からどんどん引き算していって、内容をシンプルにしたので、結果的には進めやすかったですし

    「型を意識した PHP アプリケーション」を発表しました / PHP カンファレンス 2017 - Shin x Blog
    oppara
    oppara 2017/10/12
  • flowの始め方 - Qiita

    ということで、前回に引き続きReact Confで紹介されてたものを試すシリーズの第二回です。 flowの簡単な設定とeslint/babel/precommitフック/vimとの連携のみです。深い使い方は(今のところは?)書きません。flowは既に色々なところで紹介されてますが、気にせず行きます。 ちなみに今回もReactは出てきません。(追記で少しだけ触れてしまいました) flowとは JavaScript用のtypeチェッカー ファイル単位で適用できるため、既存のプロジェクトにも気軽に導入できる eslintやbabelとも連携できるので既存プロジェクトに導入しやすい 色んなエディタ/IDEでもサポートされている この辺を見る限りFacebookのデベロッパ的にはTypeScriptはあんまり推奨してないっぽい GitHubのstarヒストリーを見る限りはTypeScriptに分があ

    flowの始め方 - Qiita
    oppara
    oppara 2017/10/12
  • flow による型のある世界入門

    FRONTEND CONFERENCE 2017 http://kfug.jp/frontconf2017/Read less

    flow による型のある世界入門
    oppara
    oppara 2017/10/12
  • 私たちはなぜReactではなくVue.jsを選んだのか | POSTD

    Qwintryチームは最近、既存のすべてのプロジェクトフロントエンドVue.jsに移行しはじめました。新しいプロジェクトでもVue.jsを使います。 レガシーなDrupalのシステム(qwintry.com) ゼロから新しく書きなおすqwintry.comのブランチ Yii2で動くb2bシステム(logistics.qwintry.com) その他、比較的小さめのプロジェクト(ほとんどは、PHPとNode.jsでバックエンドを構築しているもの) プロジェクトの規模についていうと、 Qwintry は世界中で約50万人の顧客が使っています。アメリカドイツに倉庫を持っていて、アメリカ国内 最大の郵送先 のひとつで、東欧や中東への出荷に注力しています。Qwintryは、アメリカのオンラインストアでグッズを購入する人たちのためのツールです。私たちの倉庫に届いた荷物をコントロールパネルで管理で

    私たちはなぜReactではなくVue.jsを選んだのか | POSTD
    oppara
    oppara 2017/10/12
  • 他のフレームワークとの比較 - vue.js

    ガイド 基的な使い方 インストール はじめに Vue インスタンス テンプレート構文 算出プロパティとウォッチャ クラスとスタイルのバインディング 条件付きレンダリング リストレンダリング イベントハンドリング フォーム入力バインディング コンポーネントの基 コンポーネントの詳細 コンポーネントの登録 プロパティ カスタムイベント スロット 動的 & 非同期コンポーネント 特別な問題に対処する トランジションとアニメーション Enter/Leave とトランジション一覧 状態のトランジション 再利用と構成 ミックスイン カスタムディレクティブ 描画関数とJSX プラグイン フィルター ツール 単一ファイルコンポーネント テスト TypeScript のサポート プロダクション環境への配信 スケールアップ ルーティング 状態管理 サーバサイドレンダリング セキュリティ 内部 リアクティブ

    他のフレームワークとの比較 - vue.js
    oppara
    oppara 2017/10/12
  • 型なき世界のためのflowtype入門 - Qiita

    http://qiita.com/mizchi/items/3bbb3f466a3b5011b509 で紹介したモダンJSスタックの上に、flowtype を導入して型をボトムアップに追加していくアプローチを紹介します。 なぜflowtypeか、そのゴールは 流行っているライブラリのみを組み合わせて使う場合や、バックエンドとの連携において型が十分に提供される環境なら、正直、flowtypeよりtypescriptでいいと思っています。flowtypeが力を発揮する環境は、既存のJSが大量に存在する環境や、railsなどの動的な型のフレームワーク環境で、静的な定義が抽出できない環境だと思います。 よほど品質が低いライブラリを使わないかぎり、バグはほとんど自分が記述したコードによって発生します。なので、まずは「自分が書いたコードのIFを明確にし、その静的なチェックを行なう」、というのを最初の目

    型なき世界のためのflowtype入門 - Qiita
    oppara
    oppara 2017/10/12
  • 【初心者向け・動画付き】たい焼きクラスで学ぶ、楽しいオブジェクト指向プログラミング入門 - Qiita

    はじめに 先日、こちらのQiita記事を拝見しました。 クラスとオブジェクトの関係性 - Qiita この記事では「たい焼きの型」をクラスと見なして、クラスとオブジェクトの違いを説明しています。 ただ、着眼点は良かったのですが、記事の中で使われているサンプルコードが少しオブジェクト指向プログラミングの面白さを伝え切れていないように感じました。 そこでこの記事では「たい焼き」をお題にして、オブジェクト指向プログラミングの考え方(というか、面白さ)を簡単に説明していきます。 動画がメインです! この記事の内容はYouTubeで解説しています。 というか、動画の方がメインで、この記事はオマケです。 ぜひ最初に動画の方をチェックしてください! 【初心者向け】たい焼きクラスで学ぶ、楽しいオブジェクト指向プログラミング入門 - YouTube ちなみに、動画の長さは30分ちょっとあるので、1.5倍速ぐ

    【初心者向け・動画付き】たい焼きクラスで学ぶ、楽しいオブジェクト指向プログラミング入門 - Qiita
    oppara
    oppara 2017/10/12
  • How to Enable Offload Unused Apps in iOS to Save Storage Space Automatically

    oppara
    oppara 2017/10/12
  • Git LFS 2.3.0 released

    EngineeringGit LFS 2.3.0 releasedGit LFS v2.3.0 is now available with performance improvements to git lfs migrate and git clone, new features, bug fixes, and more. Download Git LFS v2.3.0 git lfs migrate With… Git LFS v2.3.0 is now available with performance improvements to git lfs migrate and git clone, new features, bug fixes, and more. Download Git LFS v2.3.0 git lfs migrate With our latest rel

    Git LFS 2.3.0 released
    oppara
    oppara 2017/10/12