タグ

2018年9月22日のブックマーク (20件)

  • v6プラス利用で輻輳時間帯(夜間等)の通信速度が劇的に改善した - 風柳メモ

    承前と結論 v6プラス導入に伴う、自宅のインターネット接続環境の変遷 1. v6プラス加入以前 2. v6プラス加入(2015/08/18)~最近(2016/10/06)まで 3. 設定見直し後(2016/10/07現在) 独り言 関連記事 余談 承前と結論 以前、ビッグローブ光で、特に夜間(21時~25時頃)、通信速度がものすごく遅い(10Mbps以下、ひどいときには1Mbps未満になることも)という記事を書いた。 furyu.hatenablog.com あれから一年以上経ったが、一向に改善される気配がないため、ISP乗換も視野に入れてあらためて調査し、設定を見直してみたところ……なんと、v6プラス support.biglobe.ne.jp を利用することで、劇的に改善することが判明。 輻輳する時間帯であっても、数十Mbpsで安定して通信できている。2016/10/07現在、データ取

    v6プラス利用で輻輳時間帯(夜間等)の通信速度が劇的に改善した - 風柳メモ
  • リリースタスクの見える化を自動化する - GeekFactory

    ソフトウェアのリリース作業は時間が経つとともに複雑化する傾向があります。どんなに作業の自動化を推し進めても、リリース後の確認やドキュメントの更新などの手作業は残ってしまいます。また、一部の担当者しかリリース作業を知らないと、人がボトルネックになってしまいます。 そこで、リリース作業の内容や状況を見える化しておくことで、誰でも素早くリリースを行えるようになります。たとえ一人ぼっちの開発であっても、一ヶ月後の自分が作業手順を完璧に覚えているとは限らないため、見える化しておく価値はあります。 リリースタスクをIssueに書く もしGitHubでタスクを管理している場合は、リリースタスクをIssueに書くやり方があります。 私がオープンソースで開発しているGradle SSH PluginやGroovy SSHでは、リリースの度に以下のようなIssueを作成しています。 リリースのワークフローは以

    リリースタスクの見える化を自動化する - GeekFactory
  • socket.io が提供してくれているものは何か - from scratch

    現在開発中のシステムにリアルタイムな処理があり、そこで socket.io を使おうかなと思ってて、そういう折にタイムリーにもこの辺りの記事がタイムラインで出てきたのでメモ代わりに自分の意見を残しておく。 blog.jxck.io qiita.com socket.io が提供してくれているもの 「ブラウザとサーバ間のプロトコル」という観点で見ると socket.io は WebSocket を基として繋がらなかった時に XHR Long Polling や polling といった形式の代替手段を提供してくれるもの、という位置づけ。 一方で「ライブラリ」という観点で見ると socket.io はリアルタイムアプリケーションを作る際に必要になる処理をまとめて実装し、クライアントとサーバ間での EventEmitter として抽象化してくれているもの、という風になる。 もう少し噛み砕いて言

    socket.io が提供してくれているものは何か - from scratch
  • TensorFlowOnSparkを動かしてみた

    TensorflowOnSparkを起ち上げてみた Yahoo!がTensorflowOnSparkを公開しました。 Sparkクラスターで動くTensorflowのようです。 GitHub: https://github.com/yahoo/TensorFlowOnSpark 記事: http://yahoohadoop.tumblr.com/ https://techcrunch.com/2017/02/13/yahoo-supercharges-tensorflow-with-apache-spark/ Distributed Tensorflowはすでにありますし、Sparkクラスターでの起動を試している人も見かけましたが、天下のYahoo!がTensorflowをカバーするというので面白い試みです。 Distributed Tensorflow https://www.tenso

    TensorFlowOnSparkを動かしてみた
  • 【動画付き】Rails 5.1で作るVue.jsアプリケーション ~Herokuデプロイからシステムテストまで~ - Qiita

    はじめに Rails 5.1ではJavaScript/index.html.erb周りのサポートが大きく改善されました。 これにより、Vue.jsやReactといったモダンなJSフレームワークをRails内で非常に扱いやすくなっています。 僕も実際に試してみましたが、当にびっくりするぐらい簡単にVue.jsやReactを動かすことができました。 そこでこの記事ではRails 5.1とVue.jsを組み合わせたサンプルアプリケーションの作成方法をチュートリアル形式で、できるだけ詳しく説明します。 また、ローカルで動かしておしまい、ではなく、Herokuにデプロイしたり、テストコードを書いたりするところまでカバーします。 この記事自体は長いですが、実際に手を動かすと(スムーズに進んだ場合)30分以内で終わらせることができるはずです! 今回作成するサンプルアプリケーション 今回は以下のリンク先

    【動画付き】Rails 5.1で作るVue.jsアプリケーション ~Herokuデプロイからシステムテストまで~ - Qiita
  • 長時間快適に作業できる監視環境をつくる - miyalog

    イケてる監視ツールとかではなく、パソコン体のおはなしをします。 こんにちは。とある通信会社の委託でネットワークの監視・保守をやっている作業員です(エンジニアじゃないよ)。24時間365日休むこと無く業務を行っていますが、16時間にもなる夜勤をこなすには、快適な作業環境が必要不可欠です。このエントリでは、2015年に行った監視業務用PC・ディスプレイの更改の実体験を通して得られた知見をご紹介したいと思います。 〜忙しい人向けサマリ〜 PCは遅くとも5年で買い替えた方がいい でも同時期に買った機械は同時期に壊れるので分散して買い替えたほうがいい 最近のミニPCは普通に使えるのでおすすめ 高効率電源ユニット(80 PLUS)にすると消費電力・発熱が大幅ダウン 液体電解コンデンサは低寿命なので、固体コンデンサを使ったPCを選ぼう システムドライブは絶対にSSDにしよう。マジ別世界 液晶は VA

    長時間快適に作業できる監視環境をつくる - miyalog
  • NAT をやめて、透過 SOCKS プロキシを導入した - Cybozu Inside Out | サイボウズエンジニアのブログ

    以下の記事内容について、奥一穂氏(@kazuho)より、「connectのエラーコードが信頼できなくなるといった欠点もあるのに透過 SOCKS プロキシが汎用的に良いように読めてしまう」というご指摘をいただきました。確かに、下記内容は当社が抱えていた複数の課題を短期間で解消できる「ワークアラウンド」として透過 SOCKS プロキシという技法もあることを紹介したものであり、NAT と比較して常に良いという主張をしたかったわけではありません。また、記事内では解説を省きましたが、従来より HTTP(S) 通信は NAT ではなく HTTP プロキシを利用しています。謹んで補足・訂正とさせていただきます。 が好きだけどアレルギーで近寄ることができない山泰宇です。 先日アーキテクチャ刷新プロジェクトNeco」を紹介しましたが、今回はその活動の一環として実施したネットワークアドレス変換(NAT

    NAT をやめて、透過 SOCKS プロキシを導入した - Cybozu Inside Out | サイボウズエンジニアのブログ
  • サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。先日親知らずを抜歯した時、つらすぎたので MySQLJOIN のことを考えて心の平静を保っていました。 サイボウズの製品のひとつである kintone はニーズに応じて自由に業務アプリのようなものを手軽に作ることができ、データの検索条件やソート条件も細かくカスタマイズ可能で、様々なレベルでのアクセス権も設定可能という非常に便利なツールです。 しかしその機能を支える裏側では複雑なクエリが発行され、MySQL に多大な負荷をかけています。サイボウズのクラウドには数十テラバイトに登る MySQL データがあり、数千万件オーダーのテーブルを複数 JOIN するクエリが毎秒のように実行されるという、エンジニア魂が滾る環境です。 現在サイボウズでは性能改善に力を入れており、僕もその業務に従事しています。例えば2018年

    サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 【Riot.js v3対応】Riot.js x Firebase で超お手軽にWebアプリを作ってみる

    まえがき この記事でできること 最近評判のreact風超軽量ライブラリ「Riot.js」と、Googleが買収したMbaasサービス「Firebase」。 この2つのイケてるサービスを使って、超お手軽にWebアプリを作ってみるチュートリアルです。 RiotとFirebaseを組み合わせてる例があまりなかったので試してみました。 この記事ではユーザー登録/認証まわりを実装しています。 またデザインには、Bootstrapよりモダンでイケてると噂のCSSフレームワーク「SemanticUI」を使っています(※当社調べ)。 SemanticUIももっと流行ってほしい。 *** 2016年12月16日追記 *** Riot.jsのv3がリリースされたので、現時点の最新版v3.0.4対応に書き換えました。 v2からけっこう色々変わっていますのでご注意ください。 *** 追記おわり *** 完成版イメ

    【Riot.js v3対応】Riot.js x Firebase で超お手軽にWebアプリを作ってみる
  • 【jQuery】DOM要素の生成 - Qiita

    $("<a>") $("<a></a>") $("<img>") $("<img />") // しかし家サイトでは、互換性の為、中身を取るタグについては、 // 終了タグを付けることを推奨している。 // 中身を取らないタグはどちらでも、OKとしている。 $("<a></a>") $("<img>") $("<img />") 第2引数にオブジェクトを指定すると、そのオブジェクトのプロパティは、HTMLの属性として設定される。 classは予約語のためダブルコートで囲む。

    【jQuery】DOM要素の生成 - Qiita
  • docker-compose コマンドまとめ

    開発環境としてDockerを使ってるのですが、なんとなくコマンドを打っていて、あまりちゃんとコマンドを理解していないので、覚え書きとしてまとめてみようと思います。 dockerコマンドというよりdocker-composeを紹介します。 今回は以下のようなdocker-compose.ymlを参考にします。 web: build: . environment: DISABLE_SPRING: "1" DB_USERNAME: "root" DB_PASSWORD: "root" DB_HOST: "db" ports: - "3000:3000" volumes: - ".:/var/local/rails5_product" links: - "db" db: image: mysql:5.6 environment: MYSQL_ROOT_PASSWORD: "root" # rail

    docker-compose コマンドまとめ
  • Laravelで最適なDocker環境を作る

    ├── docker │   ├── docker-compose.yml │   ├── composer │   │   └── Dockerfile │   ├── data │   │   └── Dockerfile │   ├── fpm │   │   ├── Dockerfile │   │   └── php-fpm.d │   │   ├── docker.conf │   │   ├── www.conf │   │   ├── www.conf.default │   │   └── zz-docker.conf │   ├── gulp │   │   └── Dockerfile │   ├── nginx │   │   ├── Dockerfile │   │   └── config │   │   ├── laravel.conf │   │   ├──

    Laravelで最適なDocker環境を作る
  • DockerfileでSSH鍵認証ができるイメージを作る

    下記のDockerfileでイメージを作ると、コンテナを作る時にSSH公開鍵を変数として渡すことができます。 FROM ubuntu:16.04 RUN apt-get update && apt-get install -y openssh-server openssh-client && \ apt-get clean && mkdir /var/run/sshd RUN mkdir -p /root/.ssh && chmod 700 /root/.ssh && \ echo "echo \$AUTHORIZED_KEYS > /root/.ssh/authorized_keys" > /run.sh && \ echo "chmod 600 /root/.ssh/authorized_keys" >> /run.sh && \ echo "/usr/sbin/sshd -D" >>

    DockerfileでSSH鍵認証ができるイメージを作る
  • セットアップスクリプトでは必ず rbenv exec/rbenv which したほうがいい理由 - Sexually Knowing

    簡単に言うと、rbenv の shims はシェルの `PATH` 探索とは独立して実行ファイルを探索しているため。 以下、単に rbenv としているけれどクローンである plenv なども同様と考えてよい。 shims とは rbenv の README が詳しい。 Shims are lightweight executables that simply pass your command along to rbenv. So with rbenv installed, when you run, say, rake, your operating system will do the following: Search your PATH for an executable file named rake Find the rbenv shim named rake at the

    セットアップスクリプトでは必ず rbenv exec/rbenv which したほうがいい理由 - Sexually Knowing
  • Rails Webook

    RailsのActiveRecordのautosave機能についてソースコードリーディングをしました。 ドキュメント ActiveRecord::AutosaveAssociation ソースコード ActiveRecord::NestedAttributes - Tag 5.2.1 (18/8/8) Autosaveは、親モデルが保存された時に、関連するモデルも一緒に作成/更新する機能を提供します。 また、関連するモデルでmark_for_destricutionメソッドを実行し、削除フラグを立てることで、親モデルを保存時に関連レコードを削除することもできます。 これらのレコードの操作はトランザクション内で実行されるのでDBでデータ不整合が発生しません。 続きを読む JWT(Json Web Token)のRuby実装のruby-jwtのコードリーディングをしました。 JWTの仕様やその

    Rails Webook
  • bundle installしたgemを通常のrubyコードでrequireする方法

    $ bundler -v Bundler version 1.14.6 $ ruby -v ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]

    bundle installしたgemを通常のrubyコードでrequireする方法
  • Ajaxでセレクトボックスの中身が動的に変わるRailsアプリの作り方

    はじめに 親のカテゴリを変更すると、子のカテゴリの中身が動的に変わるセレクトボックスってよくありますよね。 たとえばこんなやつです↓ この動きを実現するごく簡単なサンプルアプリを作ってみたので、今回はそれを紹介します。 対象となるRubyRailsのバージョン 今回のサンプルアプリは以下の環境で動作します。 Rails 4.2.1 Ruby 2.2.1 サンプルアプリのソースコード 今回作ったサンプルアプリはGitHubに置いています。 READMEにセットアップ方法も載せているので、ご自身のローカル環境で動かしてみてください。 ざっくりとした処理の流れ この動きを実現するためにはこういう処理の流れになります。 ユーザーが親カテゴリが変更する JavaScriptのchangeイベントが呼ばれる JavaScriptがサーバーに子カテゴリの一覧を問い合わせる サーバーが子カテゴリの一覧を

    Ajaxでセレクトボックスの中身が動的に変わるRailsアプリの作り方
  • bashのキーバインド(キーボードショートカット) まとめ - readlineとbind、ついでにstty編 - うまいぼうぶろぐ

    復習がてらまとめてみた。今さら感たっぷりでたぶん100番煎じぐらいだけど。きっかけは単語単位でカーソルを移動させる(M-f,M-b)方法が知りたかっただけなんだけど。せっかくなのでどこで、どういう風にキーバインドが割り当てられているかを調べた。 versionはdebian4のbash 3.1.17。 readlineとbind(組み込みコマンド) man bashのreadlineとbindの項目参照。readlineはシェルの入力を処理するライブラリ。bashは組み込みのコマンドでreadlineの割り当て設定確認/設定変更が出来る。 端末ラインのキーバインド さて、さっそくbashのキーバインド…の前に、シェルとは別の端末のキーバインドもまとめておく。bashとは直接関係ないけど、端末をCLIの操作をキーバインドで行うという意味では、ほぼ同じなので。 有名なのはプロセスを割り込むC-

    bashのキーバインド(キーボードショートカット) まとめ - readlineとbind、ついでにstty編 - うまいぼうぶろぐ
  • ローカルポートを食いつぶしていた話 - download_takeshi’s diary

    ここのところ、お仕事で管理しているシステムで、夜中に負荷が急上昇する事象が発生しており、夜な夜な対応に追われていました。 (このブログ書いている今も、負荷がじわじわ上昇中なんですが・・・) で、いろいろと調査した結果、ようやく糸口がわかってきました。 結論から言うと、ローカルポートなどのネットワーク資源をいつぶしていたようです。 以下、調べていってわかったことなどのメモです。 トラブルの事象 運用しているのは Apache2.2 + mod_perl2 なwebサーバで、リスティング広告システムの配信系です。 リスティング広告の配信のシステムって一般的にロジックが複雑でいやーな感じなんですが、このシステムもご他聞に漏れずかなりのひねくれ者で、しかもトラヒックは結構多めです。システム全体で、日に1000万〜2000万クエリくらいかな。幸か不幸か、このご時勢においてもトラヒック的には成長し続

    ローカルポートを食いつぶしていた話 - download_takeshi’s diary
  • linux-sched-history.pdf - Speaker Deck

    多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた / TSKaigi TypeScript Multilingualization

    linux-sched-history.pdf - Speaker Deck