タグ

ブックマーク / hiroki.jp (53)

  • 見落としがちなLinuxのWEBチューニング | Act as Professional

    WEBコンテンツ配信にLinuxを使うのは一般的になりましたが、CentOSやUbuntuをはじめ、大抵のディストリビューションが低スペックなマシンでも動くような初期設定になっています。 トラフィックの上限でもない CPUリソースの枯渇でもない HDDのIOが遅い問題でもない コンテンツが重くなる(接続できない)というケースで、見落としがちなLinuxのネットワーク周りのチューニングについてです。 iptables関連iptablesを使用している場合、下記のパラメータを注意して下さい。 /proc/sys/net/ipv4/ip_conntrack_maxip_conntrackに記録できる最大値です。65536あたりが初期設定になっているかと思います。これだとパケットの取りこぼしがすぐに起きてしまいます。1コネクションあたり約350バイト消費するので、実装されているメモリに応じて値を変

    見落としがちなLinuxのWEBチューニング | Act as Professional
    labunix
    labunix 2018/11/05
  • 2017年1月1日に閏秒が実施予定、システムの管理者は注意が必要!! | Act as Professional

    来年の元旦に閏秒の実施が決定されたようです。全世界で新年から仕事の人も増えそうです。 IERS(国際地球回転・基準系事業)から正式に発表があったようです。 日時間だと2017年1月1日 8時59分59秒のあとに8時59分60秒が挿入され、次に9時0分0秒となります。 直近だと2015年7月1日にうるう秒が実施されました。 そのときにまとめた、主にLinuxサーバにまつわる対応が以下の記事です。 閏秒を迎えるにあたってLinuxでは何をすべきか?基的には上記の記事と同様の対応をとれば、問題ないと思われます。 引き続き、情報があれば更新していきたいと思います。

    2017年1月1日に閏秒が実施予定、システムの管理者は注意が必要!! | Act as Professional
    labunix
    labunix 2016/07/08
  • SSHだけで簡易VPNが構築できる「sshuttle」が便利 | Act as Professional

    VPNを利用する事ができる高価なルータなどの機器がなくても、sshでさえ繋がることができれば、簡易VPNのようなアクセスを可能にするsshuttleが便利だったので紹介します。 sshuttleとは?Linux, MacOS, FreeBSDをサポートするSSH越しにリモートネットワークへのアクセスを可能にするソフトウェアです。実態としては、LinuxであればiptablesMacOSではipfwを利用して、リモートネットワーク宛てのパケットをSSHコネクションを張ったトンネルを通してアクセスできるように設定してくれるソフトウェアです。 今までSSH Port Forwardingを1ポートずつ設定や起動をしていた人も多いかと思います。sshuttleを利用するとリモート先のネットワークを指定するだけで、あとは全部よしなにやってくれるようになります。 IPSecやPPTPなどのプロトコル

    SSHだけで簡易VPNが構築できる「sshuttle」が便利 | Act as Professional
    labunix
    labunix 2015/01/16
  • 閏秒を迎えるにあたってLinuxでは何を対策すべきか? | Act as Professional

    2016/12/27 更新Googleなどの大手IT企業がうるう秒対策済のNTPサーバが公開したため、これを利用する内容などを以下にまとめました。 元旦に実施される うるう秒の対策 まとめ2016/07/08 更新2017/1/1に閏秒の実施が決定されました。対応はこの記事のとおりで問題なさそうです。 2015/06/24 情報追加(2015/06/29 更新)下記の対応に関わるntpdの比較的新しいバージョンにSLEWモードで動作していても、うるう秒が挿入されるバグが発見されました。[redhat] これによりntp-4.2.8p3-RC1以降のバージョンでないとSLEWモードで動作していてもうるう秒が挿入されます。RedHatはntp-4.2.6p5-3.el6_6という対応済みのバージョンを提供しています。Ubuntuでは今日現在12.04LTS, 14.04LTSの2バージョンはパ

    閏秒を迎えるにあたってLinuxでは何を対策すべきか? | Act as Professional
    labunix
    labunix 2015/01/10
  • 昔の自分に教えてあげたい、新人プログラマへ伝えていること | Act as Professional

    最近、この春に職業プログラマになった人達と話す機会に恵まれているので、共通して話すことを書いてみる。 大概、○○について、聞かせてください。とか、いろいろ聞いてくる人達は、羨ましいぐらい、すごく意識高い。 彼らは会社での仕事のプログラミングを上手にやりたい。ってのは、あたり前だし、 どうやってテストを綺麗に書くか? テスト書きながらプログラミングするってのをどう学ぶか? 綺麗な設計はどうやるのか? 仕事でコードを書いていくってのは、どういうことなのかとか? すごいコードはどうやって書くのか?とか、いろんな事を学びたくて、何から学ぶべきなのか見失っているのではないかというぐらい、やる気に満ちあふれている。人それぞれ、やる気の方向性や現在のスキルセットが違うから何をしたいのか、した方が良いのかは異なっている。 だけど、ざっくり共通しているのは、結局のところ「ある程度のプログラマとしての実力をつ

    昔の自分に教えてあげたい、新人プログラマへ伝えていること | Act as Professional
    labunix
    labunix 2014/06/01
  • GitHub実践入門が3/20発売 現場で使える実用的なガイド | Act as Professional - hiroki.jp

    3/20(木)に日語で初のGitHubに関する書籍(雑誌を除く)である「GitHub実践入門 ~Pull Requestによる開発の変革」が発売されます。304ページにわたる現場で使える実用的なガイドを目指して執筆しました。 書は、世界中の開発者が行っているGitHubを利用した開発方法を、みなさんが現場で使えるようになるためのガイドとして執筆しました。よって、GitHubの解説だけにとどまらず、開発ワークフローやそれを支えるほかのツールにも踏み込んで解説しています。 現場で使えるノウハウが凝縮されたGitHubのガイド書は現場でGitHubを徹底的に活用するために、UIの解説、Gitの操作、実際に手を動かしながら試せるPull Request、開発ワークフロー(GitHub Flow, Git Flow)の解説、Jenkinsなど開発を支えるツールのGitHubとの連携について丁寧

    GitHub実践入門が3/20発売 現場で使える実用的なガイド | Act as Professional - hiroki.jp
    labunix
    labunix 2014/03/06
  • dockerが正式サポートしたOS Xの環境を構築してみた! | Act as Professional

    正式サポートの概要DockerはこれまでもOS Xの上で動かそうと思えば、動かすことはできました。これはOS Xの上でVagrant(実稼働しているのはVirtualBox)などを利用した仮想マシンで通常のUbuntuやCentOSなどのLinuxを立ち上げて、そのLinux環境の中でDockerを稼働させるというものが中心でした。もちろん公式サポートはされていませんでした。 これはDockerそのものがLXC (Linux Containers) と呼ばれるLinuxのOSレベルでの仮想化技術を利用したものなので、Linuxの上でしか利用できなかったからです。よって、バージョン0.8からもOS Xの上でネイティブに動作するわけではありません。 では、どのようにして正式サポートしたのかというと、Dockerが専用の軽量仮想マシンイメージを用意し、OS Xからこの仮想マシンに対してDocke

    dockerが正式サポートしたOS Xの環境を構築してみた! | Act as Professional
    labunix
    labunix 2014/02/09
  • 「GitHubでつくる、たのしい開発現場」YAPC:ASIA Tokyo2013 | Act as Professional

    YAPC::ASIA Tokyo 2013(2日目)で「GitHubでつくる、たのしい開発現場」というトークをしてきました。 まず、利用した資料を公開します。 伝えたいことコードレビューを習慣化させたいのであれば、GitHubは最適なツールです。 コードレビューを習慣化させたい コードは書いた人以外の目にふれさせるべきと考えている人には特にオススメのツールです。 ですが、GitHubはあくまでツールです。このツールを利用することで、コードレビューの機会や良いコードを書くためのノウハウを学習する機会を生み出すことができます。 その結果、人やチームが行動を起こすことでチームが成長したり、結果として良いソフトウェアができていくはずです。 レビューをすると増えるコスト、減るコストレビューはすべきだけど、現在レビューを習慣化できていないチームにとって、新たにコードレビューをしていくのは単に時間的なコ

    「GitHubでつくる、たのしい開発現場」YAPC:ASIA Tokyo2013 | Act as Professional
    labunix
    labunix 2013/09/21
  • Git,GitHub,Jenkins,Emacs,Vimが1冊で学べる 開発ツール徹底攻略 | Act as Professional

    GitHub特集記事を再編集した@HIROCASTERでございませう。 4月10日(水)にWEB+DB PRESS Vol.69に寄稿したGitHub特集記事を再編集して開発ツール徹底攻略 (WEB+DB PRESS plus)が発売されます。 1冊で現役の開発者が愛してやまない開発ツールの最新事情と利用方法が学べる1冊に仕上がっています。 4月に入って新しい会社や学校で開発をはじめる方多いかと思います。そんな方に、ぜひ手にとって頂きたい1冊です。そういった方達を教える立場にある方も、参考資料として利用して頂ければ幸いです。 これ1冊で Git GitHub Jenkins エディタ(Vim/Emacs) Linuxの基礎知識の最新の状況と設定、利用方法まで学ぶことができます。少ない時間で、開発ツールを使うまで学ぶのにはとても効率的でオススメです。2,000円でお釣りがきてしまうので、ぜひ

    Git,GitHub,Jenkins,Emacs,Vimが1冊で学べる 開発ツール徹底攻略 | Act as Professional
    labunix
    labunix 2013/04/02
  • git mergeとgit pullのデフォルト挙動を設定できるようになってるGit | Act as Professional

    Gitもいろいろ増えているんだと改めた@HIROCASTERでございませう。 過去のGitのバージョンでは、設定できないと言われていたことについて、最近のGitでは設定できるようになっています。(と、言っても何ヶ月も前に追加されている内容ですが…) そのなかでも「これが欲しかったんだ!」と思われる2点について取り上げます。 git merge –no-ffgit mergeをおこなう際には –no-ff をつけることによって、トピックブランチでおこなわれたコミットが明確にわかるようにするかと思います。 以下の図だと、Topic-bは別ブランチでコミットされましたが、masterへマージする際に ff だったために履歴を見ると別ブランチでコミットされたかどうかが判断できません。 一方、Topic-CはTopic-B同様に別ブランチでコミットされましたが、masterへmergeされる際に –

    git mergeとgit pullのデフォルト挙動を設定できるようになってるGit | Act as Professional
    labunix
    labunix 2012/11/27
  • GitHubをさらに便利に使う、hubコマンドを活用しよう! | Act as Professional

    hubコマンドは、MacLinuxのターミナルからGitHubの操作をおこなうためのコマンドです。通常はブラウザを通しておこなっているような操作をCLIでおこなうことができます。 これがURLを渡すだけで、利用シーンがあるので、紹介します。 インストール公式サイトを確認する限りgemでインストールするのは、動作が遅くなるので非推奨とのこと。よって、Mac環境はHomebrewかMacPortsで入れた方が良い。 gitコマンドのエイリアスとしてhubを設定してしまうことが推奨されてますが、あえて今回はしません。 MacPortsの場合
$ sudo port install hub Homebrewの場合
$ brew install hub 動作確認$ hub --version git version 1.7.12.4 hub version 1.10.2GitHubへの初回アクセス

    GitHubをさらに便利に使う、hubコマンドを活用しよう! | Act as Professional
    labunix
    labunix 2012/11/06
  • Raspberry Pi Linux インストールと初期設定 | Act as Professional

    Raspberry PiのOSイメージをダウンロードRaspberry Piの公式サイトでOSの各種ディストリビューションがダウンロードできます。 推奨しているOSはDebian Linuxベースの「Raspbian “wheezy”」のようです。Arch LinuxなどもあるようですがこちらはGeek推奨です。 今回はDebianベースの”Wheezy”を利用します。2012-08-16-wheezy-raspbian.zipは445MBあるので、ダウンロードを少し待ちます。 SDカードへOSイメージを書き込む32GBのSDカードが2,000円でおつりがきました。こいつに書き込みます。 Raspberry PiにOSイメージを書き込むスクリプトを公開してくれている人がいます。ですが、残念なことにSyntaxErrorがあるなど、他の人のPull Requestを受け入れてないため、バグが

    Raspberry Pi Linux インストールと初期設定 | Act as Professional
    labunix
    labunix 2012/11/06
  • あの「ウノウ」って会社を覚えてますか? | Act as Professional

    元ウノウな@HIROCASTERでございませう。 それはそれは、ちょっとだけ昔の話、とても風変わりなウノウ株式会社というのがありました。 ウノウという会社の昔話をしたいと思います。 ウノウラボのラボブログこの会社がはじめた画期的な文化の1つは、ラボブログと呼ばれる在籍するエンジニアが直接技術情報をブログとして公開するというものだ。 今では業界各所でおこなわれていることだが、当時は在籍するエンジニアが顔と名前を出して、技術情報を惜しげもなく公開することに注目された。 このブログの読者も、当時はウノウラボのブログをよく読んでいた人もいるのではないだろうか。 ウノウの歴史ではかなり後半の2010年になるが、私もウノウラボを執筆できたことが嬉しかったです。 もちろん、ブログを書く時間も業務時間として認められていました。 勉強会で会場を提供するなどの取り組みなど、今となっては常識となりつつあるような

    あの「ウノウ」って会社を覚えてますか? | Act as Professional
    labunix
    labunix 2012/11/02
  • ApacheのSSLをNginxに入れ替える手順 | Act as Professional

    既存のApacheの設定既存のApache設定で確認しておきたいのは下記の部分 SSLCertificateFile example.com.crt SSLCertificateKeyFile example.com.key SSLCACertificateFile example.in.crt # 中間証明書いずれのファイルも必要です。中間証明書を利用してる場合のみ、SSLCACertificateFileの設定があると思います。 あとパスフレーズも確認しておきましょう。 Nginx用の証明書を作成するNginxでは中間証明書が必要な場合、Apacheの用に別ファイルとして指定するのではなく、1つの証明書ファイルにまとめておきます。 cp example.com.crt example.com.crt.bak # バックアップ cat example.in.crt >> example.

    ApacheのSSLをNginxに入れ替える手順 | Act as Professional
    labunix
    labunix 2012/10/18
  • Raspberry Piがきた!3,000円の名刺サイズサーバー | Act as Professional

    Raspberry Pi 仕様 CPU : Broadcom BCM2835 ARM11/700MHz Memory : 256MB HDMI出力 USB2.0ポートx2 LANポートx1(10/100) SDカードポートx1 OS : Raspbian(Debian), Archいわゆる一般的なコンピュータで採用されているIntel系のCPUではなく、組込系で良く使われるARM系のCPUを搭載しています。余談ですがNintendo 3DSもARM系CPUです。 基的なデータはSDカードを利用します。32GBがアマゾンで2,000円以下です。 とにかく安価・省電力新しい世代の開発者が手に入れやすいように安価であることが前提で作られています。CPUも遅くはなりますが、安価なモデルを採用、LANポートもGigabitには非対応、無線LANなんてありません、USBポートも3.0非対応と、徹底的

    Raspberry Piがきた!3,000円の名刺サイズサーバー | Act as Professional
    labunix
    labunix 2012/09/25
  • Raspberry Pi 使えるメモリー量を増やすチューニング | Act as Professional

    Raspberry Pi楽しいです!@HIROCASTERでございませう。 Raspberry Piは256MBしかメモリーがないため、メモリーの節約を意識しないといけません。 今回は、メモリーを節約するポイントをお教えします! CPUが使えるメモリー容量を増やす組み込まれている256MBのメモリーは、ARMのCPUで利用するメモリーとビデオ出力するためのメモリーを分割して共有しています。 初期設定では、192MBをARMへ、64MBをビデオへ利用する設定になっています。 $ free -h total used free shared buffers cached Mem: 183M 60M 122M 0B 13M 30M -/+ buffers/cache: 17M 166M Swap: 99M 0B 99Mこんな感じで、183MBのメモリー空間を利用してソフトウェアを起動することにな

    Raspberry Pi 使えるメモリー量を増やすチューニング | Act as Professional
    labunix
    labunix 2012/09/20
  • コードレビューツール 6選 どれが最適? | Act as Professional - hiroki.jp by HIROCASTER

    Pythonで書かれたレビューツールです。VMware社内で利用されていることで有名なツールです。 プレコミットレビューという概念のレビューツールです。つまり、コミット前にレビューをするという事が前提になっているツールです。よって、結果的に差分を重点的に確認していくツールのつくりになっています。 rietveld rietveld – Code Review, hosted on Google App Engine – Google Project Hosting Google社内で使われているコードレビューツールである「Mondrian」のオープンソース版です。基的にGoogle App Engineで動くことが前提になっています。 GAEの上のコードのデータを置くということがオトナの事情的に難しいかもしれませんが、検討してみてください。 Phabricator Phabricator

    コードレビューツール 6選 どれが最適? | Act as Professional - hiroki.jp by HIROCASTER
    labunix
    labunix 2012/09/13
  • 1日に175回もGitHubはデプロイしているだとぉ…!? | Act as Professional

    GitHubは普通の会社とどう違うのか? リリースマネージャーがいない(いる必要がない) 週次のデプロイセットもありません(この週にこれだけの機能をまとめてリリースとかがない) 開発者とデザイナーは、早く提供できるように自分たちでデプロイする(できる)作った人達が自ら確認できて、サクッとデプロイできるのであれば、さっさと作って、ささと出してしまった方が良いに決まっています。これを実現させるために様々な工夫がされているようです。 GitHubの基的なワークフロー
The basic workflow goes like this: Push changes to a branch Wait for the build to pass on our CI server Tell Hubot to deploy it Verify that the changes work and fix a

    1日に175回もGitHubはデプロイしているだとぉ…!? | Act as Professional
    labunix
    labunix 2012/09/03
  • 若者が知らない最強の情報収集方法「RSSリーダー」 | Act as Professional

    特に新卒でプログラマになりましたとか、若者に向けて、RSSリーダーで技術情報にアンテナ張ると色々捗りますよ。というご紹介です。 普段からRSSリーダーを利用して情報収集されている方には、つまらない記事ですが、あなたの知っている一番若いエンジニアに教えてあげてください。知らない新卒エンジニアは多いみたいです。 情報収集の方法は?日々技術は進歩していて、流行廃りもあります。こういった情報を追いかけるために、どのようなツールを活用していますか? 「Twitterで話題になってるのを見るぐらい」というだけでは、そのつぶやきを見過ごしたら、二度と知ることができません。 SNSなどが普及したことによって情報が流れるスピードが上がったので、1日後にはまた新しい話題にすり替わってます。それに、あなたが当に知りたい分野の最新の情報であるとは限りません。 これでは話題の技術を把握することができませんし、重大

    若者が知らない最強の情報収集方法「RSSリーダー」 | Act as Professional
    labunix
    labunix 2012/08/26
  • oh-my-zshで最強のシェルzshをスタートダッシュする! | Act as Professional

    改めて自分の設定を破棄して、こちらで管理することを決断した@HIROCASTERでございませう。 ずっと、bashを使ってきましたが、数年前からzshに乗り換えて、さらにzshを拡張するに至っています。 oh-my-zshとは?oh-my-zshとは、zshの設定ファイルを管理するためのフレームワークです。oh-my-zshに最初からコミュニティによって、追加されたプラグインが入っており、それを有効化するだけで、シェルでよく使われるような便利な機能や補完が有効になります。 プログラマーとして拡張させていくためにoh-my-zshの一定のルールに基づく設定ファイルの管理によって、自分自身の設定ファイルをモジュール化でき、簡素かつ柔軟にに管理できるようになるのが、プログラマとしてシェルを拡張していく人のメリットです。 だらだらっと、1ファイルに書き連ねていくのは、もうやめましょう。 oh-my

    oh-my-zshで最強のシェルzshをスタートダッシュする! | Act as Professional
    labunix
    labunix 2012/08/20