You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
welcome Welcome to perp, aka "the perpetrator": a persistent process supervisor and service managment framework for un!x. Quick, grab the latest release now: perp-2.07.tar.gz, 2013.01.11. Then check out what else you can do here: download the latest sources browse the manual online skim the README and INSTALL notes from the distribution big CHANGES! check out the links for more information oh, and
What is it ? s6 is a small suite of programs for UNIX, designed to allow process supervision (a.k.a service supervision), in the line of daemontools and runit, as well as various operations on processes and daemons. It is meant to be a toolbox for low-level process and service administration, providing different sets of independent tools that can be used within or without the framework, and that c
YOUR DOCKER IMAGE MIGHT BE BROKEN without you knowing it Learn the right way to build your Dockerfile. You learned about Docker. It's awesome and you're excited. You go and create a Dockerfile: FROM ubuntu:16.04 RUN apt-get install all_my_dependencies ADD my_app_files /my_app CMD ["/my_app/start.sh"] Cool, it seems to work. Pretty easy, right? Not so fast. You just built a container which contains
Like most, I've always appreciated a software package that lets me hot-reload the configuration without having to restart. Nginx immediately comes to mind, as does Postgresql (not for all settings, but most). This is something I've never done; so I was pretty happy when the opportunity presented itself. I'm not sure how anyone else does this, but it's pretty basic stuff. When you get past the mean
h2o の詳しいことや、その内部構造やら 多分他の日の誰かが書いてくれると思いますので、私はユーザ目線でまったり触ってみる系のエントリを書きます。 h2o を一般的なリバースプロキシ、静的ファイル配信サーバとして使いたい これをお読みの方の多くは Nginx や Apache を使っているかなと思います。 h2o を使ってみようかなと考えるとき、まず考える用途はこれを置き換えることでしょう。 よくあるユースケースとして “静的ファイルを h2o でホストし、アプリケーションをバックエンドの app サーバに投げる” という設定をやってみます。 h2o をすぐ試したい h2o の性能を余す所なく体験するには、オーバーヘッドのない環境でビルドして動かすのが一番ですが、まずは運用に乗るかどうか設定や取り回しを検証するのをやりたいと思うのは当然の所かと思います。 そんなわけで、 h2o をすぐお使
ゲームの仕様書を初めて作成する人のための足掛かりのスライド ゲームの仕様書を書こう1 仕様書作成の分業とリストの作成 https://www.slideshare.net/ChizuruSugimoto/ss-173331109 ゲームの仕様書を書こう2 仕様書に記載する機能内容 https://www.slideshare.net/ChizuruSugimoto/ss-173332578 ゲームの仕様書を書こう3 仕様書に記載するデータと画面 https://www.slideshare.net/ChizuruSugimoto/ss-173333150 ゲームの仕様書を書こう4 仕様書作成で楽をするconfluenceの活用 https://www.slideshare.net/ChizuruSugimoto/confluence-173333413
この記事はPHP Advent Calendar 2014の7日目です。 僕は先日のPHPカンファレンス2014でPHP7に関するLTをしました(参照:「PHPNGの動向」)。ただ、時間が限られていたこともあり、あまり踏み込んだ内容には触れませんでした。 本稿ではLTの内容から深掘りし、zvalという内部的な構造体がどう変わるのか、性能面のメリットにフォーカスして解説してみます。 PHPをとりまく状況 まず最近のPHPの話題をおさらいしておきましょう。 これまでPHPには実用レベルの別実装が存在しない状態が続いていましたが、HHVMの登場で状況が変わってきました。HHVMはFacebookが開発しているPHP実行環境で、PHPより高速で互換性も高いのが特徴です。Facebookで実際に利用されているだけでなく、他の企業でも商用サービスで利用する事例が増えてきています。 そんな中、2014年
この記事ははてなエンジニアアドベントカレンダー2014の8日目です。 今回は、Go言語でサーバ管理ツール Mackerel のコマンドラインツールmkr を作るときに調べたこと、考えたこと、やったことについて紹介します。(mkr は現時点では開発版での提供になります。) コマンドラインツールについて コマンドラインツールを作るにあたって、@deeeet さんの YAPC Asia 2014 での発表資料が非常に参考になります。 書籍 UNIXという考え方ーその思想と哲学 の内容をベースに、コマンドラインツールはどうあるべきかということが丁寧に説明されています。 上記資料から引用させていただくと、コマンドラインツールにおいて重要なポイントは以下の7つであるとされています。 1つのことに集中している 直感的に使える 他のツールと連携できる 利用を助けてくれる 適切なデフォルト値を持ち設定もでき
Your terminal can display color, but most diff tools don't make good use of it. By highlighting changes, icdiff can show you the differences between similar files without getting in the way. This is especially helpful for identifying and understanding small changes within existing lines. Instead of trying to be a diff replacement for all circumstances, the goal of icdiff is to be a tool you can re
昨日GoCon2014がありまして、発表の機会を頂いたのですが発表後に @rui314さんから指摘のあったグローバル変数への読み込み・書き込みの競合の問題、これに関してはsync.RWMutexを使うのがいいので、使ってみました。 RLockとLock 通常のsync.MutexはLockのみしか提供しない。これをRead, Write双方で使ってみると非常に効率が悪くなります。そこでsync.RWMutexはRLockというもう一つのLockを提供しています。 この2つの違いは、 RLock: Read向けのLock。RLock同士はブロックせず、Lockのみがブロックされる。解除時はUnlockではなくRUnlockする。 Lock: いわゆる普通のLock。RLock, Lock双方をブロックする。 上記を使い分けることで効率よくLockを行えるようです。 使ってみる 実際にどう動く
ドワンゴがニコ動の画像配信向けにFPGAエンジニアを募集したり、マイクロソフトはBingをFPGA実装したり、Baiduもディープラーニングの高速化にFPGAを導入したりと、なんだか世の中急にハードウェアくさくなってきた。IoTとは違う意味で。 金融分野ではすでにCPUでは遅すぎてFPGAによるナノ秒単位の株取引が行われているって記事を書いたのは2年前だけど、ここ数年はIntelのCPUのクロックもあまり上がらなくなってきたし、Fusion-ioやNetezzaといった大手御用達のハイエンド鬼速ストレージも、フタを開ければ中身はすでにFPGAに移行済み。IBMが最近出したData Engine for NoSQLという製品ではPOWER8プロセッサにFPGAを直付けしてRedisを高速化したり。いよいよデータセンターにも、先の見えないCPUに代わってFPGAやGPUを導入する波が押し寄せつ
先週、httpvshttps.com というウェブサイトが公開されました。このウェブサイトでは、HTTP と HTTPS を用いてアクセスした場合のウェブページのダウンロード完了までにかかる時間の比較ができるのですが、多くの環境で HTTPS の方が HTTP よりも高速なことに驚きの声が上がっていました。 HTTP が TCP 上で平文を送受信するのに対し、HTTPS は TCP 上で TLS (SSL) という暗号化技術を用いて通信を行います。ならば、TLS のオーバーヘッドのぶん HTTPS のほうが遅いはずだ、という予測に反する結果になったのですから、驚くのも無理はありません。 実は、この結果にはからくりがありました。 Google Chrome、Mozilla Firefox、最近のSafari注1は、Google が開発した通信プロトコル「SPDY」に対応しており、HTTPS
プロファイラ好きなモニタの前の皆さんこんにちは。@sonots です。この記事では、Ruby コードのどの行がどのぐらいメモリを消費しているか調べる方法を紹介します。 オブジェクトの数を数える Ruby には ObjectSpace というオブジェクトの情報を集めたり操作したりする module があります。 このモジュールの each_object メソッドを使用すると、RubyVM 上の全てのオブジェクトを取り出すことができます。 このメソッドを使って、以下のようなコードを書くと、実行した地点で、RubyVM 中にどのクラスのオブジェクトが何個存在しているのかカウントできたりするわけです。興味深いですね! ObjectSpace.each_object.inject(Hash.new 0) {|h,o| h[o.class]+=1; h } #=> {Class=>241, Strin
はじめに Goの開発版などを手軽に試すことができる環境が欲しいと思い、Dockerコンテナを利用したSangoboxというサイトを作ってみました。 少し調べてみたところ、Dockerを利用したオンラインコンパイラはすでにいくつか存在するようです。ソースが公開されているものもありますが、Sangoboxを作る上では特に参考にはしていません。 paiza.io codecube.io grounds.io ただし、インターフェースはWandboxの影響を受けています。 Sangobox 作ってみたサイトがこちらです。まだ実験段階なので対応している言語は少ないです。 http://35.h2so5.net/ https://github.com/h2so5/sango ソースコードのライセンスはAGPLです。 特徴 JSON形式のREST API(https://github.com/h2so5
先日、CoreOS がRocketというコンテナ実行エンジンを発表して話題になりますた。 Rocketを少し触ってみたので簡単なまとめを書いておこうと思います。 チュートリアル 簡単にRocketでコンテナ起動までをやってみましょう。 簡単にREADMEに目を通しておくことをすすめます。 今回はfilesetを作るのがめんどいのでDockerコンテナを流用します。 そのためDockerをインストールしておきます。 インストール 早速Rocketをインストールしてみましょう。 ビルドするには以下のものが必要です。 cpio squashfs-(util) go-bindana (他にもあるかな?) 少し前までgo-bindataがらみでメモリが足りずにビルドによく失敗していましたが、今は修正されています。 (8Gでもビルドできない) bin以下にrktなどが作成されるはずです。 App Co
README.md Talk2Docker Talk2Docker is a simple Docker client to talk to a Docker daemon. Contributions and suggestions would be appreciated, though it's aimed at my learning Go and Docker Remote API. Requirments go godep References https://docs.docker.com/reference/api/docker_remote_api/ https://github.com/samalba/dockerclient https://github.com/codegangsta/cli https://github.com/olekukonko/tablewr
golang の fmt.Fprintf/Sprintf には、 フォーマット文字列の解釈を最適化することで、 速くする余地があると推測されます。 その推測が正しいか、お手軽な実験を行ってみました。 この記事は Go Advent Calendar 2014 の6日目の記事です。 fmt.Fprintf および Sprint は、実行時にフォーマット文字列を毎回解析するという性質上、パフォーマンスに余計なオーバーヘッドが発生すると言えます。よって、その解析処理をコンパイル時に行えば、大幅にパフォーマンスが改善することは、C言語において kazuho さん(h2oプロジェクト)の h2o/qprintf が証明しています。 今回は qprintf にインスパイアされて、同様のことを golang で行ったらどの程度速くできるのかを、簡単な実験(koron/qfmt)で確認してみました。 方式
この投稿は 「Git Advent Calendar 2014 - Qiita」 の 2日目の記事です。 2年前の 「Git Advent Calendar 2012 - Qiita」 では、「Gitコマンド総選挙」と題して、本当に使える Git コマンドのベストテン発表というネタを書いたのですが、今振り返ってみても、Git コマンドって、よく使うものから普段あまり使わないものまで様々なコマンドが取り揃えられていて至れり尽くせり感がある一方で、Git 初心者が覚えるにはぶっちゃけ 数が多過ぎて辛い ですよね。 そこで今回は、Git 初心者がプルリクできる ようになるまでに覚えるべきコマンドを絞りに絞って、9つだけ紹介したいと思います(9つでも多いよ!というツッコミは受け付けません!)。 【コマンド その1】 git clone 【コマンド その2】 git log 【コマンド その3】 g
See GCC options for minimizing code footprint. Full lowmem uses "pointer compression" and ROM-based strings/objects. ROM-based strings/objects can also be used without other low memory options. Current status Stable Support Duktape Wiki: wiki.duktape.org User community Q&A: Stack Overflow duktape tag Bugs and feature requests: GitHub issues General discussion: IRC #duktape on chat.freenode.net (we
ちわす。11月にサーバサイドエンジニアとしてジョインした佐野です。前職ではウェブサービスやソーシャルゲームのサーバ管理、DBA、運用ツール開発など主にインフラ面を担当していました。入社一ヶ月のペーペーでございます。 「ブログ書けやー」とのお達しが出たのですが、ノリがイマイチわからんので、軽い記事(恵比寿のメシと酒)と真面目な記事(トレタのシステム)を両方書きます。真面目な話の合間にメシの話でもしながら...。真面目な記事はエンジニア職向けの内容になります。 ではよろしくお願いします。 トレタのシステムは種々のクラウドサービスで成り立っています。この一ヶ月で僕がシステムに手を加えた部分としては、監視周りの整備(Pingdom, PagerDuty導入, 監視用hubotを書く)、ログ解析基盤の構築(fluentd -> BigQuery連携)、ちょっとした負荷分散(リバースプロキシを少々)を
5日目担当の@cubicdaiyaです。先月末のGoConではGoのカンファレンスなのにほぼnginxをビルドする話しかしてなかったので今日はちゃんとGoの話をします。 Goで書くサーバプログラム Goではサーバプログラムを書くためのユーティリティが豊富に揃ってる上に、ゴルーチンやチャネルを利用することで高いパフォーマンスが要求される環境でも十分な性能を発揮することができます。いつだったか「あれはHTTPサーバ書くための言語ですよ」なんて話をとあるエンジニアから聞いたことがあるくらいです。 例えば「Hello, World!」を返すだけのHTTPサーバであれば標準ライブラリのnet/httpを利用することで以下のように書くことが出来ます。 package main import ( "fmt" "net/http" ) func handler(w http.ResponseWriter,
Bufferopen:Bufferでは、モバイルマーケティング、Facebook、SEOなど、さまざまなオンラインツールを活用しています。 私たちの仕事哲学は「ハードではなくスマートに働く」ですが、オンラインツールはその中核に位置するものです。また、新しいツールを探すこと自体も楽しみのひとつです。 そういうわけで、『Product Hunt』のツール探索チームから、リモートワーカーやモバイワーカーのためのベストツールをまとめて欲しいと依頼されたとき、私たちは大喜びで引き受けました。 以下はそのときリストした17のツールです。リモートワーカーやデジタルノマド必携のものばかりですよ! Bufferのリモートチームが毎日使っている17のツール 1. Trello ─ なんでもオーガナイズできる 『Trello』はBufferチーム御用達のToDoリストです。エンジニアは仕様作成に、サポートチーム
米Googleは11月18日、Webアプリケーション向けのセキュリティスキャンツール「Firing Range」をオープンソースで公開した。さまざまなXSS攻撃やWeb脆弱性を大規模にテストでき、社内でも継続的テストなどに用いているという。 Firing Rangeは、社内で開発したWebアプリケーションのセキュリティスキャンツール「Inquisition」をオープンソースプロジェクトにしたもの。ライセンスはApache License 2。 Google App Engine上に構築したJavaアプリケーションで、Chrome、Google Cloud PlatformなどのGoogleが持つ技術で構築されている。XSSの解析技術「XSS Peeker」など、一部ミラノ工科大学の研究者の支援を受けた。低い誤検知率、使い勝手の良さなどを特徴とする。 ほかのXSSスキャナなどの脆弱性テストと
docomoが提供している雑談対話APIを利用し、docomoruというライブラリを使いながらBOTと雑談する方法について説明します。後半では、Rubotyを使ってチャットサービス上でBOTと雑談する方法について説明します。 docomoru docomoruは、docomoのAPIを利用することを目的として作られたRuby製のライブラリです。gem install docomoru でインストールできます。docomoのAPIキーが必要なので、予め https://dev.smt.docomo.ne.jp/ からアプリ登録申請を済ませてAPIキーを発行してもらいましょう。 使い方 docomoruはCLI経由で利用でき、APIキーと文字列を与えると雑談対話APIにリクエストを送り、レスポンスをJSON形式で標準出力します。APIキーは、--api-keyオプションか、環境変数DOCOMO
この記事はLinux Advent Calendar 2014の6日目の記事です。 今回は前回の続きではなくて(といっても流れ的には続きになるんですが)slab objectの作成部分です。 slab objectの作成はnew_slab_objects()にて行います。この関数の呼び出し元は__slab_alloc()からになります。 objectの作成と言ってもこの関数はそこまでの処理はなくてメインなのはnew_slab()の方です。自分が主に知りたいのは処理の流れではなくてデータ構造がどうなってるかというところなのでその辺を意識して読んでいきたいという心意気です。なので読み方が処理の流れに沿わないかも。 まず呼び出し元がどのように呼んでいるかというと↓で、freelistという名前の変数に戻り値を入れているので何かしらのリストが欲しいとわかります。 2260 static void
2023年12月 (1) 2023年11月 (116) 2023年10月 (79) 2023年9月 (28) 2023年8月 (7) 2023年7月 (6) 2023年6月 (101) 2023年5月 (229) 2023年4月 (201) 2023年3月 (206) 2023年2月 (147) 2023年1月 (193) 2022年12月 (146) 2022年11月 (54) 2022年10月 (1) 2022年9月 (1) 2022年8月 (1) 2022年7月 (3) 2022年6月 (1) 2021年9月 (1) 2021年8月 (8) 2021年6月 (3) 2021年4月 (4) 2021年3月 (6) 2021年2月 (1) 2021年1月 (3) 2020年12月 (2) 2020年11月 (2) 2020年10月 (5) 2020年9月 (12) 2020年8月 (40
Automatic Version Control & Backup Pixelapse automatically keeps track and securely backs up your files every time you save.
HDD(ハードディスクドライブ)に比べると高価なこともあり普及が進まなかったSDD(ソリッドステートドライブ)だが、ここにきて利用が広がりつつある。磁気ディスクの回転によりデータを記録するHDDとは異なり、NANDベースのフラッシュメモリを利用するSSDは高速なアクセス、静音・省電力、衝撃に強いなどのメリットがある。だが、もちろん欠点もある。 MakeTechEasierが「SSDでやってはいけない3つのこと(原題:3 Things You Shouldn't Do with Solid-State Drives)」として、SSDを利用するうえでの注意点を挙げているので紹介しよう。 (1)Windowsのインデックス機能は使わない Windowsが提供するインデックス機能は、コンピュータ上のファイルやフォルダを高速に検索してくれる便利な機能だ。インデックス機能はバックグラウンドで処理され、
I ranted about this on Twitter a few days ago when we discovered it the hard way but I want to write it down here and then cover why what Intel did is a terrible idea. The simple and short version is this: Intel switched one of their 'datacenter' SSDs from reporting 512 byte 'physical sectors' to reporting 4096 byte physical sectors in a firmware update. Specifically, we have the Intel DC S3500 80
Products and services *Non-Regional East US East US 2 Central US North Central US South Central US West Central US West US West US 2 ‡West US 3 Canada East Canada Central Brazil South Brazil Southeast Mexico Central Products and services *Non-Regional North Europe West Europe France Central France South UK West UK South Switzerland North Switzerland West Norway East Norway West Germany North Germa
iOSとの比較つき!Androidでこんなアプリ,こんな機能を作りたかったらこれを見ろ!作りたいアプリに対応するクラス、ライブラリのまとめ!iPhoneAndroidiOS by @mixiappwchr 最近Androidのほうも久しぶりがっつりやっているため、簡単ですがまとめてみました。 環境編 IDEは何を使えばいいの? 今から始めるにはnatvieのコードとかを書かない限りAndroid Studioを使いましょう 最近ようやく1.0が出ました。 Android Studio http://developer.android.com/sdk/index.html 検証用のエミュレータが遅いよ! iOSと違う点ですが、Androidはエミュレータの遅さに定評があります。Intel HAXMでの高速なエミュレータか、Androidの仮想環境を提供してくれるGenymotionを使いまし
こんにちは、いっちーです。 一年とちょっと前にRedis::FastというモジュールをCPANizeしました。 PurePerlなRedisクライアントであるRedis.pmのXS版です。 Redis.pmとある程度互換性があり、Redisと書かれている部分をRedis::Fastに置換するだけで動きます。 はじめてのCPANizeでXSを使ったモジュールを公開するという暴挙にでたために、 公開後のバグ修正に頭を悩ませることになりました。 1年経って色々と溜まってきたので、この場を借りてまとめておきます。 minillaでXS&submodule Redis::FastはPurePerlなRedis.pmをフォークして、 バックエンドをhiredisに置き換えたものです。 CPANモジュールの作り方を調べてminillaを使うとよさそうというのがわかったので、 フォークするさいにminil
AWS Advent Calendar 2014の7日目です。あと、全部俺Advent Calendarも開催中です。 運用絡みで何か書くと宣言したので、AWSのアカウント運用について書いてみます。テクニックや技術より、考え方の面での整理です。 AWSのアカウントの種類 AWSで利用するアカウントは2種類あります。AWSアカウントとIAMアカウントです。AWSアカウントは、マスターアカウントと呼ぶこともあって大元のアカウントになります。AWSにサインアップ時に作るものが、AWSアカウントで1つだけ存在します。それに対して、IAMアカウントはユーザアカウントです。AWSの管理コンソールから、個々のユーザ向けなどに作成します。 AWSアカウントの取扱について AWSアカウントは、全権限を持っています。強力すぎるアカウントで、日常の運用に利用するには危険すぎます。日常の運用には使わないというのが
PHP Nightrain is a packager written in Python for the PHP Programming Language. Using this tool you can convert your PHP/HTML/CSS/Javascript application to a Native Desktop Application. Currently, PHP Nightrain supports the Windows, Mac (OS X) and the Linux operating systems. Features PHP 5 Pre-compiled Option to use your own PHP GUI rendering your PHP/HTML Web Application Set custom width and hei
IBM News room - 2014-12-04 IBM and Docker Announce Strategic Partnership to Deliver Enterprise Applications in the Cloud and On Prem - United States IBMはDockerのプレミアパートナーとして、Docker Hub Enterpriseの販売とサービス提供、さらにIBMが提供するPaaS型クラウドサービスのBluemixにおいてDockerをベースとした「IBM Containers」の提供を開始します。 Docker Hub Enterpriseは先週Dockerが発表した、Dockerコンテナのイメージを保存、共有できるDocker Hubを、組織などが独自に設置できるソフトウェアです。IBMはDockerのプレミアパートナーとしてDo
この記事はLinux Advent Calendar 2014の8日目の記事です。 systemdでシステムshutdown時に何かさせる場合の.serviceファイルについて書いてみたいと思います。 systemdで何かを実行する場合、どこにインストールするか(Installセクションをどうするか)が重要で通常のサービスだとmulti-user.targetを指定していると思います。 今回はshutdown時に実行させたいのでInstallセクションにはshutdown.targetを指定します。 では.serviceファイルを見てみましょう [Unit] Description=Pronama-chan gives you to greeting when system is going to be shutdown Before=shutdown.target alsa-store.
HTTPS(SSL利用)サイトがSEO的に優遇されるトレンドで、世間的にもHTTPS接続でサイト運用するサービスが増えてきています。 これが、ハイトラフィックサイトになってくると、このフロントエンドでSSL処理させることが負荷的にもなかなか辛いのです。 で、Apache 2.3以降では、Shared Object Cache Providerとして、memcachedが選択できるようになっています。 この仕組みを利用して、Apacheとmemcachedを並べることで、各サーバでユーザのSSL Session Cacheを共有しながらHTTPSリクエストを負荷分散できる構成を作ってみました。 WebサーバでSSLオフロード 常時SSLを利用したWebサイトを運用するために、SSLアクセラレータといったアプライアンス製品だとか、ソフトウェアだとApacheやNginxのSSLモジュールを使う
流行り物に触れてみた。 みなさまのアウトプットに支えられてのまとめのようなもの。 感謝です。 成果物 https://registry.hub.docker.com/u/ume3/docker-ubuntu-monit-log/dockerfile/ https://github.com/ume3/docker-ubuntu-monit-log docker login docker pull ume3/docker-ubuntu-monit-log docker images docker run -dt -p 2812:2812 ume3/docker-ubuntu-monit-log docker ps DockerHub経由でDLして立ち上げるとMonit経由で以下が閲覧できる ex) http://127.0.0.1:2812 つくりかた 必要なもの GitHub DockerH
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く